From b20aa2c1ba0635f2ab21c5515ec66e97b9a2a9f1 Mon Sep 17 00:00:00 2001 From: Alexander Kimmig Date: Mon, 6 Oct 2025 21:05:43 +0000 Subject: [PATCH] Ein- und Ausgabe --- .../02 Funktionen/05 Ein- und Ausgabe.ipynb | 261 ++++++++++++++++++ 01 Einführung/02 Funktionen/06 Übungen.ipynb | 63 +++++ 2 files changed, 324 insertions(+) create mode 100644 01 Einführung/02 Funktionen/05 Ein- und Ausgabe.ipynb create mode 100644 01 Einführung/02 Funktionen/06 Übungen.ipynb diff --git a/01 Einführung/02 Funktionen/05 Ein- und Ausgabe.ipynb b/01 Einführung/02 Funktionen/05 Ein- und Ausgabe.ipynb new file mode 100644 index 0000000..7e02559 --- /dev/null +++ b/01 Einführung/02 Funktionen/05 Ein- und Ausgabe.ipynb @@ -0,0 +1,261 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "d53277b4-745c-4462-bfdd-9665d54faf68", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "# Standard-Ausgabe\n", + "\n", + "Geben wir nichts an, so wird automatisch das Ergebnis des letzten Befehls ausgegeben:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "1d7b4f6f-d399-4b8e-ad6d-bc5077d4b2e0", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[33m11\u001b[39m" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "8+13\n", + "5+6" + ] + }, + { + "cell_type": "markdown", + "id": "9a3915e9-fcae-46f9-95c4-f2a197dcfe04", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "Legen wir Variablen an, so wird nichts ausgegeben, da der Wert stattdessen in der Variablen gespeichert wird:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "61cbd9b7-f8e6-4b6e-94c1-e0a1bb96f2fd", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "\u001b[33m7\u001b[39m" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "let x: number = 5\n", + "7\n", + "let y: number = 10" + ] + }, + { + "cell_type": "markdown", + "id": "852c1c60-89ef-480b-9bb1-923e916e4f20", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "# \"Konsolen\"-Ausgabe\n", + "Soll mehr als eine Ausgabe gemacht werden, so können wir die Funktion `console.log` aufrufen und hier Parameter angeben mit allen Werten, die ausgegeben werden sollen.\n", + "\n", + "*Anmerkung: In klassisch im Browser ausgeführtem JavaScript erscheinen diese Ausgaben auf der Konsole, deswegen `console`*\n", + "\n", + "Neben `console.log` gibt es auch noch `console.error`, die eine Fehlerausgabe zusätzlich rot hinterlegt:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "664a56ad-3773-4d65-ba70-2e3d4bc3a0f8", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hallo Welt!\n", + "5\n", + "10\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Das wird rot hinterlegt\n" + ] + } + ], + "source": [ + "console.log(\"Hallo Welt!\")\n", + "console.log(x)\n", + "console.log(y)\n", + "console.error(\"Das wird rot hinterlegt\")" + ] + }, + { + "cell_type": "markdown", + "id": "2e0e0c36-75ec-4fba-902d-a5b83eaebcb0", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "# Eingabe\n", + "Soll eine Eingabe des Benutzers erfolgen, so kann das mit `prompt` umgesetzt werden. Daraufhin wird im Notebook ein kleines Eingabefenster geöffnet. Das Ergebnis kann in einer Variablen abgespeichert und später wieder verwendet werden:" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "de1ba2ce-fdec-49c0-be61-365d40fc789f", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdin", + "output_type": "stream", + "text": [ + "Bitte Name eingeben: Alex\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hallo Alex\n" + ] + } + ], + "source": [ + "let eingabe: string = prompt(\"Bitte Name eingeben:\")\n", + "console.log(\"Hallo \" + eingabe)" + ] + }, + { + "cell_type": "markdown", + "id": "a8d30199-96c7-4ad8-9cf3-dd222d5a4d0f", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "## Eingabe von Zahlen\n", + "Der Datentyp einer Eingabe ist zunächst immer ein String. Soll dieser als Zahl weiterverwendet werden, so muss er explizit mit der Funktion `parseInt` umgewandelt werden. Anschließend lässt sich damit rechnen:" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "24ecee9e-843d-4a71-93cd-2060acafeb3e", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [ + { + "name": "stdin", + "output_type": "stream", + "text": [ + "Bitte Zahl eingeben 17\n" + ] + }, + { + "data": { + "text/plain": [ + "\u001b[33m19\u001b[39m" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "let zahl: number = parseInt(prompt(\"Bitte Zahl eingeben\"))\n", + "zahl + 2" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Deno", + "language": "typescript", + "name": "deno" + }, + "language_info": { + "codemirror_mode": "typescript", + "file_extension": ".ts", + "mimetype": "text/x.typescript", + "name": "typescript", + "nbconvert_exporter": "script", + "pygments_lexer": "typescript", + "version": "5.8.3" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/01 Einführung/02 Funktionen/06 Übungen.ipynb b/01 Einführung/02 Funktionen/06 Übungen.ipynb new file mode 100644 index 0000000..15bc474 --- /dev/null +++ b/01 Einführung/02 Funktionen/06 Übungen.ipynb @@ -0,0 +1,63 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "ab876578-aa1d-4a24-9534-f2b8d3e83bea", + "metadata": { + "editable": false, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "# Aufgabe 01.02.6\n", + "Lasse den Nutzer nacheinander zwei ganze Zahlen `a` und `b` eingeben und gib anschließend\n", + "* die Summe\n", + "* die Differenz\n", + "* das Produkt\n", + "* den Quotienten\n", + "aus.\n", + "\n", + "Mögliche Ausgabe:\n", + "\n", + "```\n", + "Erste Zahl eingeben: 12\n", + "Zweite Zahl eingeben: 3\n", + "Summe: 15\n", + "Differenz: 9\n", + "Produkt: 36\n", + "Quotient: 4\n", + "```\n", + "\n", + "*Hinweis: bei dieser Aufgabe gibt es keinen automatisierten Test auf Korrektheit!*" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b8e700ea-3053-4d6b-b905-d7c116b98f33", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Deno", + "language": "typescript", + "name": "deno" + }, + "language_info": { + "codemirror_mode": "typescript", + "file_extension": ".ts", + "mimetype": "text/x.typescript", + "name": "typescript", + "nbconvert_exporter": "script", + "pygments_lexer": "typescript", + "version": "5.8.3" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}