Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lehrkraefte:blc:informatik:glf20:programmieren:division [2020/10/28 10:43] mirco.triner |
lehrkraefte:blc:informatik:glf20:programmieren:division [2020/10/30 13:27] (current) mirco.triner |
||
---|---|---|---|
Line 4: | Line 4: | ||
<WRAP info> | <WRAP info> | ||
* Die ganzzahlige Division ist eine Operation, welche ausgibt, wie oft eine Zahl in einer Anderen Platz hat. Beispielsweise hat vier in zehn zwei Mal Platz. | * Die ganzzahlige Division ist eine Operation, welche ausgibt, wie oft eine Zahl in einer Anderen Platz hat. Beispielsweise hat vier in zehn zwei Mal Platz. | ||
+ | < | ||
+ | |||
* Der Modulo-Operator bezeichnet hingegen den Rest, welcher bei einer ganzzahligen Division übrig bleibt. In unserem Beispiel wäre das zwei. | * Der Modulo-Operator bezeichnet hingegen den Rest, welcher bei einer ganzzahligen Division übrig bleibt. In unserem Beispiel wäre das zwei. | ||
+ | < | ||
+ | |||
+ | * Der Variablentyp des Resultats einer ganzzahligen Division, oder dem Rest, hängt vom Input ab. Sind beide Zahlen Integer, so ist auch das Resultat ein Integer. Ist eine der Inputvariablen Float, so ist auch das Resultat Float. | ||
</ | </ | ||
Line 20: | Line 25: | ||
<WRAP info> | <WRAP info> | ||
- | Bei einer While-Schleife | + | BREAK: Ein break in einer Schleife |
</ | </ | ||
+ | <WRAP info> | ||
+ | Negative Zahlen werden gleich wie positive Zahlen bei einer ganzzahligen Division behandelt. | ||
- | <WRAP todo> | + | * Aus 10/3=3,3 wird bei der ganzzahligen Division 3. 3,3 wird in diesem Fall abgerundet. |
- | Schreiben Sie ein Programm, bei welchem | + | |
+ | * Aus -10/3=-3,3 wird bei der ganzzahligen Division -4. -3,3 wird in diesem Fall ebenfalls gegen unten gerundet. | ||
- | Beispiel einer Ausgabe | ||
- | <code text> | ||
- | Neue Zahl: 15 | ||
- | Zahl zu gross | ||
- | Neue Zahl: | ||
- | </ | ||
</ | </ | ||
<WRAP todo> | <WRAP todo> | ||
- | Nun drehen wir den Spiess um. Schreiben Sie ein Programm, welches eine zufällige Zahl zu finden versucht. Versuchen Sie einen möglichst effizienten Algorithmus zu finden. | ||
- | </ | ||
- | <WRAP todo> | + | <quizlib id=" |
- | Schreibe ein Programm, welches eine Liste bestehend aus ganzen Zahlen aufsteigend sortiert. Der Benutzer soll per Eingabe entscheiden, welche Elemente in die Liste kommen und er soll so viele Elementen eingeben können, wie er will. Wenn er mit der Eingabe fertig | + | < |
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
</ | </ | ||
- | <WRAP todo> | ||
- | **FIZZ BUZZ!** Programmieren Sie ein Programm, das alle Zahlen von 1 bis 100 ausgibt, aber alle jene, die durch 3 teilbar sind durch '' | ||
- | <hidden Verlangte Ausgabe bis 30> | ||
- | <code text> | ||
- | 1 | ||
- | 2 | ||
- | fizz | ||
- | 4 | ||
- | buzz | ||
- | fizz | ||
- | 7 | ||
- | 8 | ||
- | fizz | ||
- | buzz | ||
- | 11 | ||
- | fizz | ||
- | 13 | ||
- | 14 | ||
- | fizz buzz | ||
- | 16 | ||
- | 17 | ||
- | fizz | ||
- | 19 | ||
- | buzz | ||
- | fizz | ||
- | 22 | ||
- | 23 | ||
- | fizz | ||
- | buzz | ||
- | 26 | ||
- | fizz | ||
- | 28 | ||
- | 29 | ||
- | fizz buzz | ||
- | </ | ||
- | </ | ||
- | </ | ||
- | ===== Optionale, weitere Aufgaben ===== | ||
- | * Schreibe ein anderes Programm, welches eine Liste aus Zeichenketten alphabetisch sortiert. | ||
- | * Geben Sie alle Teiler einer Zahl aus. | ||
- | * Geben Sie die Primfaktorzerlegung einer Zahl aus. | ||
- | * Bestimmen Sie, ob eine gegebene Zahl eine Primazahl ist oder nicht. | ||
- | * Geben Sie die Primzahlen der Reihe nach aufsteigend aus. | ||
- | ===== Lösungsvorschläge ===== | ||
- | <hidden Lösungvorschläge> | ||
- | <code python> | ||
- | for i in range(1, | ||
- | if i % 3 == 0 and i % 5 == 0: | ||
- | print(" | ||
- | elif i % 3 == 0: | ||
- | print(" | ||
- | elif i % 5 == 0: | ||
- | print(" | ||
- | else: | ||
- | print(i) | ||
- | </ | ||
- | <code python> | ||
- | t = inputInt(" | ||
- | text = "%d°C ist " % t | ||
- | if (t< | ||
- | text += " | ||
- | elif t<25: | ||
- | text += " | ||
- | else: | ||
- | text += " | ||
- | print(text+" | ||
- | </ | ||
- | <code python> | ||
- | # Definition der Koeffizienten | ||
- | a,b,c = 0,0,0 | ||
- | print(" | ||
- | if a==0: # Lineare Gleichung | + | |
- | if b==0: # Gleichung ohne x | + | |
- | if c==0: | + | |
- | print(" | + | |
- | else: | + | |
- | print(" | + | |
- | else: | + | |
- | print(" | + | |
- | else: # Quadratische Gleichung | + | |
- | d = b*b-4*a*c | + | |
- | if (d<0): | + | |
- | print(" | + | |
- | elif d==0: | + | |
- | print(" | + | |
- | else: | + | |
- | d = d**0.5 # Wurzel aus der Diskriminante | + | |
- | x1 = (-b-d)/ | + | |
- | x2 = (-b+d)/ | + | |
- | print(" | + | |
- | </ | + | |
- | </ | + |