Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
gf_informatik:programmieren_repetitionsdossier [2023-06-07 15:04] – [2.37 Aufgabe] gragf_informatik:programmieren_repetitionsdossier [2024-09-23 06:20] (aktuell) – [1.6 Aufgabe] hof
Zeile 69: Zeile 69:
 Der Benutzer wird aufgefordert, eine beliebige dreistellige Zahl einzugeben. Dem Benutzer wird zuerst einmal mitgeteilt ob er überhaupt eine Zahl eingegeben hat. Falls ja, wird weiter mitgeteilt, ob die eingegebene Zahl das Kriterium erfüllt. Der Benutzer wird aufgefordert, eine beliebige dreistellige Zahl einzugeben. Dem Benutzer wird zuerst einmal mitgeteilt ob er überhaupt eine Zahl eingegeben hat. Falls ja, wird weiter mitgeteilt, ob die eingegebene Zahl das Kriterium erfüllt.
  
-//Tipp:// Mit `type(x)` kann der Typ einer Variablen (z.B. int oder str) ermittelt werden.+//Tipp:// Mit `type(x)` kann der Typ der Variable `x` (z.B. `intoder `str`) ermittelt werden.
  
 <nodisp 2> <nodisp 2>
Zeile 81: Zeile 81:
  
 Bestimme das Produkt von allen Zahlen von 50 bis und mit 100. Bestimme das Produkt von allen Zahlen von 50 bis und mit 100.
 +
 +Die Lösung ist `153425937812748301860136522976473486961422986084234447972389349349107947938617753600000000000000`.
  
 <nodisp 2> <nodisp 2>
Zeile 101: Zeile 103:
    * Fakultät von negativen Zahlen ist nicht definiert.    * Fakultät von negativen Zahlen ist nicht definiert.
  
-Der Benutzer wird aufgefordert eine Zahl einzugeben. Von dieser Zahl wird die Fakultät berechnet und ausgegeben. Stelle sicher, dass die Spezialfälle ($0,1,negative Zahlen) auch korrekt verarbeitet werden.+Der Benutzer wird aufgefordert eine Zahl einzugeben. Von dieser Zahl wird die Fakultät berechnet und ausgegeben. Stelle sicher, dass die Spezialfälle (0,1, negative Zahlen) auch korrekt verarbeitet werden.
  
  
Zeile 226: Zeile 228:
 </code> </code>
  
-<nodisp 2>+<nodisp 1>
 ++++Lösung| ++++Lösung|
 <code python> <code python>
Zeile 409: Zeile 411:
 Schreibe eine Funktion `shopping_calculator(anz,pri)` die berechnet, wieviel der Einkauf kostet. Dieser Wert wird zurückgegeben. Für das obige Beispiel, also mit `shopping_calculator([6,4,1],[0.85,1.20,2.50])`, soll man das Ergebnis $12.40$ erhalten. Schreibe eine Funktion `shopping_calculator(anz,pri)` die berechnet, wieviel der Einkauf kostet. Dieser Wert wird zurückgegeben. Für das obige Beispiel, also mit `shopping_calculator([6,4,1],[0.85,1.20,2.50])`, soll man das Ergebnis $12.40$ erhalten.
  
-<nodisp 2>+<nodisp 1>
 ++++Lösung| ++++Lösung|
 <code python> <code python>
Zeile 431: Zeile 433:
 Schreibe eine Funktion `find_42(L)` die zählt, wie oft die Zahl $42$ in der Liste L vorkommt und diese Anzahl zurückgibt. Verwende keine vordefinierten Funktionen. Schreibe eine Funktion `find_42(L)` die zählt, wie oft die Zahl $42$ in der Liste L vorkommt und diese Anzahl zurückgibt. Verwende keine vordefinierten Funktionen.
  
-<nodisp 2>+<nodisp 1>
 ++++Lösung| ++++Lösung|
 <code python> <code python>
Zeile 941: Zeile 943:
  
 ==== - Aufgabe ==== ==== - Aufgabe ====
-Schreibe eine Funktion namens ''remove\_duplicates(li)'', die eine Liste als Parameter annimmt und eine Liste zurückgibt, in der jeder Eintrag nur einmal enthalten ist. Für die Liste ''farben = ["gelb""rot""gelb""grün""blau""rot""rot""rot""braun""orange""orange""orange"]'' zum Beispiel soll die Funktion die Liste  ''['gelb', 'rot', 'grün', 'blau', 'braun', 'orange']'' zurückgeben.+Schreibe eine Funktion namens ''remove\_duplicates(li)'', die alle Duplikate aus einer Liste entfernt. Die Funktion nimmt die Liste ''li'' an und gibt eine Liste zurück, in der jeder Eintrag nur einmal enthalten ist. Beispiel: Für die Liste ''farben = ['gelb''rot''gelb''grün''blau''rot''rot''rot''braun''orange''orange''orange']'' soll die Funktion die Liste  ''['gelb', 'rot', 'grün', 'blau', 'braun', 'orange']'' zurückgeben.
  
 ++++Hinweis| ++++Hinweis|
Zeile 948: Zeile 950:
 if el in li: if el in li:
     # Code der ausgefuehrt wird, wenn el bereits in li vorkommt     # Code der ausgefuehrt wird, wenn el bereits in li vorkommt
 +    
 if not el in li: if not el in li:
     # Code der ausgefuehrt wird, wenn el NICHT bereits in li vorkommt     # Code der ausgefuehrt wird, wenn el NICHT bereits in li vorkommt
Zeile 967: Zeile 969:
  
 print(remove_duplicates(farben)) print(remove_duplicates(farben))
 +</code>
 +++++
 +</nodisp>
 +
 +==== - Aufgabe ====
 +Schreibe eine Funktion namens ''boese\_sieben(li)'', die eine Liste mit Zahlen annimmt, darin alle durch sieben teilbaren Elemente durch das Wort "böse" ersetzt und die Liste zurückgibt. Beispiel: Für die Liste ''zahlen = [5, 9, 14, 17, 19, 21, 41, 42, 46, 49]'' soll die Funktion die Liste  ''[5, 9, 'böse', 17, 19, 'böse', 41, 'böse', 46, 'böse']'' zurückgeben.
 +
 +<nodisp 2>
 +++++Lösung|
 +<code python>
 +def boese_sieben(li):
 + results = []
 + for i in li:
 + if i % 7 == 0:
 + results.append('böse')
 + else:
 + results.append(i)
 + return results
 +
 +zahlen = [5, 9, 14, 17, 19, 21, 41, 42, 46, 49]
 +print(boese_sieben(zahlen))
 +</code>
 +++++
 +</nodisp>
 +
 +==== - Aufgabe ====
 +Erweitere die Funktion aus der vorherigen Aufgabe, sodass auch alle Zahlen, in denen eine 7 drin vorkommt, als "böse" erkannt werden. Also zum Beispiel auch 17, 27 und alle Zahlen von 70 bis 79. Die Funktion soll für Zahlen zwischen 1 und 99 funktionieren. 
 +
 +Für die Liste ''[5, 9, 14, 17, 19, 21, 26, 27, 28, 46, 49, 70, 73, 80]''
 +
 +soll die Liste ''[5, 9, 'böse', 'böse', 19, 'böse', 26, 'böse', 'böse', 46, 'böse', 'böse', 'böse', 80]'' zurückgegeben werden.
 +
 +<nodisp 2>
 +++++Lösung|
 +<code python>
 +def boese_sieben(li):
 + results = []
 + for i in li:
 + if i % 7 == 0 or i % 10 == 7 or i > 70 and i < 80:
 + results.append('böse')
 + else:
 + results.append(i)
 + return results
 +
 +zahlen = [5, 9, 14, 17, 19, 21, 26, 27, 28, 46, 49, 70, 73, 80]
 +print(boese_sieben(zahlen))
 </code> </code>
 ++++ ++++
  • gf_informatik/programmieren_repetitionsdossier.1686150258.txt.gz
  • Zuletzt geändert: 2023-06-07 15:04
  • von gra