feat: Add section about "if-Anweisung" to chapter "Verzweigungen"
This commit is contained in:
parent
f591c70c83
commit
7f19c3fd70
1 changed files with 147 additions and 0 deletions
|
|
@ -445,6 +445,153 @@
|
||||||
"print(3 > 5)\n",
|
"print(3 > 5)\n",
|
||||||
"print(3 >= 5)"
|
"print(3 >= 5)"
|
||||||
]
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "5e40c032-b2a7-444e-980f-447f776fe736",
|
||||||
|
"metadata": {
|
||||||
|
"editable": false,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"Jetzt wo wir wissen wie Bedingungen funktionieren können wir diese nutzen um den Ablauf unsers Programms dynamisch zu gestalten.\n",
|
||||||
|
"Mithilfe der `if`-Anweisung ist es möglich bestimmte Anweisungen nur auszuführen, wenn eine gegebene Bedingung zutrifft."
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": null,
|
||||||
|
"id": "a067d87d-4d91-4c2f-9ad8-92c20a10c8e2",
|
||||||
|
"metadata": {
|
||||||
|
"editable": true,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"if 3 > 1:\n",
|
||||||
|
" print(\"Drei ist größer als Eins\")"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "357e93af-764b-4440-99c2-3ee304ab9a34",
|
||||||
|
"metadata": {
|
||||||
|
"editable": false,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"Die `if`-Anweisung aus den Schlüsselwort `if`,\n",
|
||||||
|
"dann einem Ausdruck der zu einem Wahrheitswert auswertet (in unserem Beispiel einem Vergleichsoperator)\n",
|
||||||
|
"gefolgt von einem Doppelpunkt.\n",
|
||||||
|
"Alles was in den darauffolgenden Zeilen 4 Leerzeichen weit eingerückt ist (ab der Spalte in welcher das *i* der `if`-Anweisung beginnt)\n",
|
||||||
|
"wird nur dann ausgeführt, wenn die Bedingung der `if`-Anweisung erfüllt ist."
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": null,
|
||||||
|
"id": "a11ab613-2126-4589-8cca-d833e4bb0eb7",
|
||||||
|
"metadata": {
|
||||||
|
"editable": true,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"x = 3\n",
|
||||||
|
"if x > 1:\n",
|
||||||
|
" print(\"Ich werde nur ausgeführt, wenn die Bedingung der if-Anweisung wahr ist\")\n",
|
||||||
|
" print(\"ich auch\")\n",
|
||||||
|
"print(\"Ich werde immer ausgeführt, da ich nicht mehr eingerückt bin, wie meine Vorgänger\")"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "5a3cf1ff-addd-4567-9803-1978a8dea761",
|
||||||
|
"metadata": {
|
||||||
|
"editable": false,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"In diesem Fall führen wir die zwei eingerückten `print` Anweisungen nur aus, wenn die Variable `x` einen Wert größer als 1 hat.\n",
|
||||||
|
"Ansonsten Überspringen wir diese zwei Anweisungen einfach.\n",
|
||||||
|
"\n",
|
||||||
|
"Ab und zu möchte man jedoch eine bestimmte Anweisungsabfolge nur ausführen, wenn eine Bedingung zutrifft und eine andere bestimmte Anweisungsabfolge nur ausführen, wenn diese Bedingung nicht zutrifft.\n",
|
||||||
|
"Hierfür gibt es das `else` Schlüsselwort. Alles eingerückte nach dem `else` Schlüsselwort wird nur ausgeführ, wenn die Bedingung der `if`-Anweisung *nicht* zutrifft."
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": null,
|
||||||
|
"id": "d2a5f5a5-fba2-4021-bdb2-24570f390a65",
|
||||||
|
"metadata": {
|
||||||
|
"editable": true,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"x = 1\n",
|
||||||
|
"if x > 3:\n",
|
||||||
|
" print(\"x ist größer als 3\")\n",
|
||||||
|
"else:\n",
|
||||||
|
" print(\"x ist nicht größer als 3\")\n",
|
||||||
|
"print(\"Ich werde ebenfalls immer ausgeführt, da ich auch wieder nicht eingerückt bin.\")"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "markdown",
|
||||||
|
"id": "125fbe9a-f692-4d1a-bcc2-9fe5e9e5a5e9",
|
||||||
|
"metadata": {
|
||||||
|
"editable": false,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"source": [
|
||||||
|
"Manchmal möchte man auch mehrere Bedingungen nacheinander abfrage. Hierzu bietet Python das `elif` Schlüsselwort an (elif leitet sich von \"else if\").\n",
|
||||||
|
"Nach `elif` folgt wie auch schon bei `if` eine Bedingung, welche geprüft wird.\n",
|
||||||
|
"Ist diese Bedinung war, wird alles eingerückte nach `elif` ausgeführt. Ansonste wird weiter zu `else` gesprungen."
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"cell_type": "code",
|
||||||
|
"execution_count": null,
|
||||||
|
"id": "08dc2b1c-79d6-4443-89f5-a9532fdf6d33",
|
||||||
|
"metadata": {
|
||||||
|
"editable": true,
|
||||||
|
"slideshow": {
|
||||||
|
"slide_type": ""
|
||||||
|
},
|
||||||
|
"tags": []
|
||||||
|
},
|
||||||
|
"outputs": [],
|
||||||
|
"source": [
|
||||||
|
"x = 1\n",
|
||||||
|
"if x < 5:\n",
|
||||||
|
" print(\"x ist kleiner als 5\")\n",
|
||||||
|
"elif x == 5:\n",
|
||||||
|
" print(\"x ist genau 5\")\n",
|
||||||
|
"else:\n",
|
||||||
|
" print(\"x ist größer als 5\")"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"metadata": {
|
"metadata": {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue