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:algorithmen_ii [2024-12-05 14:29] – [Aufgabe B1: Einfache (math.) Algorithmen] hofgf_informatik:algorithmen_ii [2024-12-16 11:19] (aktuell) – [Auftrag zu Primzahlen] hof
Zeile 15: Zeile 15:
    * Teil 3: Schreibe eine Funktion `max3(a, b, c)`, die das Maximum von drei Zahlen zurückgibt. _Verwende dazu die `max2` Funktion!_    * Teil 3: Schreibe eine Funktion `max3(a, b, c)`, die das Maximum von drei Zahlen zurückgibt. _Verwende dazu die `max2` Funktion!_
  
-<nodisp 2>+<nodisp 1>
 ++++Lösung| ++++Lösung|
 <code python> <code python>
Zeile 27: Zeile 27:
     return max2(max2(a, b), c)     return max2(max2(a, b), c)
  
-print(max3(input('a'), input('b'), input('c')))+print(max3(int(input('a')), int(input('b')), int(input('c'))))
 </code> </code>
 ++++ ++++
Zeile 35: Zeile 35:
    * Teil 1: Drei Zahlen sollen eingegeben werden und danach in absteigender Reihenfolge der Grösse ausgegeben werden.    * Teil 1: Drei Zahlen sollen eingegeben werden und danach in absteigender Reihenfolge der Grösse ausgegeben werden.
  
-<nodisp 2>+<nodisp 1>
 ++++Lösung:| ++++Lösung:|
 <code python> <code python>
Zeile 109: Zeile 109:
 ++++ ++++
  
-<nodisp 2>+<nodisp 1>
 ++++Lösung:| ++++Lösung:|
 <code python> <code python>
Zeile 172: Zeile 172:
 ++++ ++++
  
-<nodisp 2>+<nodisp 1>
 ++++Lösung:| ++++Lösung:|
 <code python> <code python>
Zeile 199: Zeile 199:
      * Eine Funktion, die herausfindet (_zurückgibt_), ob eine Zahl `t` ein Teiler ist der Zahl `n`.      * Eine Funktion, die herausfindet (_zurückgibt_), ob eine Zahl `t` ein Teiler ist der Zahl `n`.
      * Wieviele Parameter hat die Funktion `is_divisor`?      * Wieviele Parameter hat die Funktion `is_divisor`?
 +
  
 === Auftrag zu Primzahlen === === Auftrag zu Primzahlen ===
Zeile 204: Zeile 205:
    * in 2er-Gruppen auf Papier (kein Python!)    * in 2er-Gruppen auf Papier (kein Python!)
    * Vorgehen:    * Vorgehen:
-     * Algorithmus überlegen, in 2er-Gruppe besprechen, Notizen machen: Variablen? Schleifen?+     * Algorithmus für Primzahltest überlegen, in 2er-Gruppe besprechen, Notizen machen: Variablen? Schleifen?
      * Mit Lehrperson besprechen      * Mit Lehrperson besprechen
      * In Python: Funktion `is_prime(n)` implementieren      * In Python: Funktion `is_prime(n)` implementieren
Zeile 241: Zeile 242:
     # Es reicht, bis zur Wurzel von n zu testen - gäbe es einen grösseren Teiler t so dass     # Es reicht, bis zur Wurzel von n zu testen - gäbe es einen grösseren Teiler t so dass
     # t*x == n, dann müsste x kleiner sein als Wurzel(n) und wir hätten x bereits gefunden.     # t*x == n, dann müsste x kleiner sein als Wurzel(n) und wir hätten x bereits gefunden.
-    while <= math.sqrt(n): +    while <= math.sqrt(n): 
-        if is_divisor(n, i):+        if is_divisor(n, t):
             # Wir haben einen Teiler gefunden -> keine Primzahl, beenden.             # Wir haben einen Teiler gefunden -> keine Primzahl, beenden.
             return False             return False
-        + 1+        + 1
     # Keinen Teiler gefunden -> wir haben eine Primzahl!     # Keinen Teiler gefunden -> wir haben eine Primzahl!
     return True     return True
Zeile 281: Zeile 282:
         while is_divisor(remainder, factor):         while is_divisor(remainder, factor):
             remainder = remainder / factor             remainder = remainder / factor
-            print factor+            print(factor)
             # yield factor             # yield factor
                  
Zeile 287: Zeile 288:
         factor = next_prime(factor)         factor = next_prime(factor)
  
-prime_factors(input())+prime_factors(int(input()))
 </code> </code>
 ++++ ++++
  • gf_informatik/algorithmen_ii.1733408979.txt.gz
  • Zuletzt geändert: 2024-12-05 14:29
  • von hof