Add current solutions.

This commit is contained in:
paulusja 2026-03-26 17:17:32 +01:00
parent 6ed2e159f1
commit ebed7a33a6

View File

@ -602,7 +602,28 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"# Fuegen Sie hier Ihren Code ein." "# Fuegen Sie hier Ihren Code ein.\n",
"breite = 0\n",
"laenge = 0\n",
"\n",
"while breite <= 0:\n",
" breite = int(input('Geben Sie die Breite ein: '))\n",
"\n",
"while laenge <= 0:\n",
" laenge = int(input('Geben Sie die Länge ein: '))\n",
"\n",
"zahl1 = breite\n",
"zahl2 = laenge\n",
"\n",
"while zahl2 != 0:\n",
" rest = zahl1 % zahl2\n",
" zahl1 = zahl2\n",
" zahl2 = rest\n",
"\n",
"platten_groesse = zahl1\n",
"anzahl_platten = int((laenge * breite) / (platten_groesse*platten_groesse))\n",
"\n",
"print(f'Für eine Fläche der Größe {breite} x {laenge} werden {anzahl_platten} Platten mit einer Größe von {platten_groesse} x {platten_groesse} benötigt.')"
] ]
}, },
{ {
@ -612,6 +633,26 @@
"## 3. <a id='toc3_'></a>[Aufgabengruppe Listen](#toc0_)" "## 3. <a id='toc3_'></a>[Aufgabengruppe Listen](#toc0_)"
] ]
}, },
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"array = [1, 5, 7, [6, 3], 'a', 7.5]\n",
"print(array)\n",
"\n",
"print(array[0])\n",
"print(array[-1])\n",
"print(len(array))\n",
"\n",
"for entry in array:\n",
" print(f'entry={entry}')\n",
"\n",
"print(array[3])\n",
"print(array[3][0])"
]
},
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
@ -653,7 +694,31 @@
"source": [ "source": [
"liste = [3, 'ein Wort', 2.8, 2, 'noch ein Wort', 6, 3.2, 4, '2']\n", "liste = [3, 'ein Wort', 2.8, 2, 'noch ein Wort', 6, 3.2, 4, '2']\n",
"\n", "\n",
"# Fügen Sie hier Ihren Code ein" "# Fügen Sie hier Ihren Code ein\n",
"\n",
"# Lösung 1\n",
"\n",
"sum_var = 0\n",
"count = 0\n",
"\n",
"for entry in liste:\n",
" if type(entry) == int or type(entry) == float:\n",
" sum_var += entry\n",
" count += 1\n",
"\n",
"print(sum_var / count)\n",
"\n",
"# Lösung 2\n",
"zahlen_liste = [entry for entry in liste if type(entry) == int or type(entry) == float]\n",
"\n",
"# zahlen_liste = []\n",
"# for entry in liste:\n",
"# if type(entry) == int or type(entry) == float:\n",
"# zahlen_liste.append(entry)\n",
"\n",
"print(zahlen_liste)\n",
"\n",
"print(sum(zahlen_liste)/len(zahlen_liste))"
] ]
}, },
{ {
@ -678,7 +743,9 @@
"source": [ "source": [
"liste = [1, 'ein Wort', 2.5, 2, 'noch ein Wort', 6, 3.333, 4, '2']\n", "liste = [1, 'ein Wort', 2.5, 2, 'noch ein Wort', 6, 3.333, 4, '2']\n",
"\n", "\n",
"# Fügen Sie hier Ihren Code ein" "# Fügen Sie hier Ihren Code ein\n",
"for entry in liste[::-2]:\n",
" print(entry)\n"
] ]
}, },
{ {
@ -701,7 +768,9 @@
"source": [ "source": [
"liste = [1, 'ein Wort', 2.5, 2, 'noch ein Wort', 6, 3.333, 4, '2']\n", "liste = [1, 'ein Wort', 2.5, 2, 'noch ein Wort', 6, 3.333, 4, '2']\n",
"\n", "\n",
"# Fügen Sie hier Ihren Code ein" "# Fügen Sie hier Ihren Code ein\n",
"print(sum([entry for entry in liste \n",
" if type(entry) in [int, float] and entry % 2 == 0]))"
] ]
}, },
{ {
@ -728,7 +797,24 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"# Fügen Sie hier Ihren Code ein." "# Fügen Sie hier Ihren Code ein.\n",
"# tupel = (1, 2)\n",
"# liste = [1, 2]\n",
"\n",
"# zahl1, zahl2 = tupel\n",
"\n",
"# print(zahl1)\n",
"# print(zahl2)\n",
"\n",
"# liste[0] = 12\n",
"\n",
"artikel = [ \"Klopapier\", \"Maske\", \"Desinfektionsmittel\" ]\n",
"preis = [ 3.5, 2.25, 7.4 ]\n",
"\n",
"print(list(zip(artikel, preis)))\n",
"\n",
"for einzel_artikel, einzel_preis in zip(artikel, preis):\n",
" print(f'{einzel_artikel} kostet {einzel_preis}')"
] ]
}, },
{ {
@ -752,6 +838,20 @@
" print(f'{elem1} -> {elem2}')" " print(f'{elem1} -> {elem2}')"
] ]
}, },
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"liste = [5, 4, 3, 2, 1]\n",
"\n",
"print(list(enumerate(liste)))\n",
"\n",
"for idx, eintrag in enumerate(liste, 1):\n",
" print(f'{idx}: {eintrag}')"
]
},
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "metadata": {},
@ -784,7 +884,16 @@
"start_zeiten = [100, 200, 400, 580, 720]\n", "start_zeiten = [100, 200, 400, 580, 720]\n",
"ziel_zeiten = [111, 220, 415, 605, 732]\n", "ziel_zeiten = [111, 220, 415, 605, 732]\n",
"\n", "\n",
"# Fügen Sie hier Ihren Code ein." "#diff_zeiten = [end_zeit - start_zeit for start_zeit, end_zeit in zip(start_zeiten, ziel_zeiten)]\n",
"\n",
"print(list(zip(start_zeiten, ziel_zeiten)))\n",
"print(list(enumerate(zip(start_zeiten, ziel_zeiten), 1)))\n",
"\n",
"# Fügen Sie hier Ihren Code ein.\n",
"for idx, (start_zeit, end_zeit) in enumerate(zip(start_zeiten, ziel_zeiten), 1):\n",
" diff_zeit = end_zeit - start_zeit\n",
" geschw = 3.6 * 100 / diff_zeit\n",
" print(f'Der {idx}. Läufer brauchte {diff_zeit} Sekunden ({geschw:.2f} km/h) für die Strecke.')"
] ]
}, },
{ {
@ -809,7 +918,11 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"# Fügen Sie hier Ihren Code ein." "# Fügen Sie hier Ihren Code ein.\n",
"string = input('Geben Sie etwas ein: ')\n",
"anfangs = list(set([word[0] for word in string.split()]))\n",
"anfangstext = ''.join(anfangs)\n",
"print(anfangstext)"
] ]
}, },
{ {
@ -828,7 +941,7 @@
"source": [ "source": [
"zeichenkette = 'Dieser Text enthält mehrere Wörter, einige davon beginnen mit Vokalen. Ein Wort, das mit einem Vokal beginnt, ist Ameise. Dieses Wort soll also entfernt werden.'\n", "zeichenkette = 'Dieser Text enthält mehrere Wörter, einige davon beginnen mit Vokalen. Ein Wort, das mit einem Vokal beginnt, ist Ameise. Dieses Wort soll also entfernt werden.'\n",
"\n", "\n",
"kopie = # Fügen Sie ab hier Ihren Code ein.\n", "kopie = ' '.join([wort for wort in zeichenkette.split() if wort[0].lower() in 'aeiou'])\n",
"\n", "\n",
"print(kopie)" "print(kopie)"
] ]
@ -856,7 +969,12 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"# Fügen Sie hier Ihren Code ein." "# Fügen Sie hier Ihren Code ein.\n",
"satz = input('Geben Sie bitte einen Satz ein: ')\n",
"zu_ersetzen = input('Geben Sie bitte einen Teil der Zeichenkette ein, der ersetzt werden soll: ')\n",
"ersetzung = input('Geben Sie bitte die Zeichenkette ein, die dafür eingefügt werden soll: ')\n",
"erg_satz = satz.replace(zu_ersetzen, ersetzung)\n",
"print(erg_satz)"
] ]
}, },
{ {
@ -891,7 +1009,9 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"# Fügen Sie hier Ihren Code ein." "# Fügen Sie hier Ihren Code ein.\n",
"satz = input('Geben Sie einen Satz ein: ')\n",
"print(satz.replace(' ', '').lower() == satz.lower().replace(' ', '')[::-1])"
] ]
}, },
{ {
@ -926,7 +1046,18 @@
"metadata": {}, "metadata": {},
"outputs": [], "outputs": [],
"source": [ "source": [
"# Fügen Sie hier Ihren Code ein." "# Fügen Sie hier Ihren Code ein.\n",
"\n",
"zahlen_woerter = ['null', 'eins', 'zwei', 'drei', 'vier', 'fünf', 'sechs', 'sieben', 'acht', 'neun', 'zehn']\n",
"\n",
"satz = input('Geben Sie einen Satz ein: ')\n",
"\n",
"summe = 0\n",
"\n",
"for idx, zahlen_wort in enumerate(zahlen_woerter):\n",
" summe += satz.lower().count(zahlen_wort) * idx\n",
"\n",
"print(summe)"
] ]
}, },
{ {
@ -953,7 +1084,11 @@
"source": [ "source": [
"# Fügen Sie hier Ihren Code für die Funktion ein.\n", "# Fügen Sie hier Ihren Code für die Funktion ein.\n",
"\n", "\n",
"print(schnittmenge([1, 2, 3, 10], [3, 4, 1]))" "def schnittmenge(liste1: list, liste2: list) -> list:\n",
" return [elem for elem in liste1 if elem in liste2]\n",
"\n",
"print(schnittmenge([1, 2, 3, 10], [3, 4, 1]))\n",
"schnittmenge(liste1=[1, 2], liste2=[2, 3])"
] ]
}, },
{ {