wenndann:if:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
wenndann:if:start [2020/10/07 06:58] – [Aufgabe 8: Primzahlentscheider] Martin Pabst | wenndann:if:start [2021/12/29 11:29] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Die if-Anweisung (wenn -> dann) ====== | + | ====== Die if-Anweisung (wenn -> dann) ====== |
Oft soll ein bestimmter Programmteil nur ausgeführt werden, wenn eine Bedingung erfüllt ist, z.B. | Oft soll ein bestimmter Programmteil nur ausgeführt werden, wenn eine Bedingung erfüllt ist, z.B. | ||
* Wenn ein Felsen das Raumschiff trifft, soll ein Leben abgezogen werden. | * Wenn ein Felsen das Raumschiff trifft, soll ein Leben abgezogen werden. | ||
- | * Wenn die Anzahl der Leben auf 0 sinkt, ist das Spiel beendet. | + | * Wenn die Anzahl der Leben auf 0 sinkt, ist das Spiel beendet. |
* ... | * ... | ||
Zeile 36: | Zeile 36: | ||
int pe = Input.readInt(" | int pe = Input.readInt(" | ||
- | println(" | + | println(" |
if(pe == 1372){ | if(pe == 1372){ | ||
| | ||
Zeile 55: | Zeile 55: | ||
führt die Anweisungen nur dann aus, wenn die Bedingung zutrifft (genauer: wenn der Term '' | führt die Anweisungen nur dann aus, wenn die Bedingung zutrifft (genauer: wenn der Term '' | ||
</ | </ | ||
- | == Klein Aufgabe (" | ||
- | Erweitere das Programm, so dass es dem Benutzer drei Eingabeversuche zugesteht und jeweils ausgibt, wie viele Versuche er noch hat. Zwei mögliche Programmabläufe sehen also so aus: | ||
- | < | ||
- | |||
- | Noch 3 Versuche | ||
- | Sie haben eingegeben: 5654 | ||
- | falsche PIN! | ||
- | Noch 2 Versuche | ||
- | Sie haben eingegeben: 4432 | ||
- | falsche PIN! | ||
- | Noch 1 Versuche | ||
- | Sie haben eingegeben: 8983 | ||
- | falsche PIN! | ||
- | Programmende. | ||
- | </ | ||
- | |||
- | < | ||
- | |||
- | Noch 3 Versuche | ||
- | Sie haben eingegeben: 2674 | ||
- | falsche PIN! | ||
- | Noch 2 Versuche | ||
- | Sie haben eingegeben: 1372 | ||
- | Die PIN ist korrekt! | ||
- | Programmende. | ||
- | </ | ||
- | |||
- | [[.loesung: | ||
===== Erweiterung: | ===== Erweiterung: | ||
Falls die falsche PIN eingegeben wird, soll eine entsprechende Meldung ausgegeben werden: | Falls die falsche PIN eingegeben wird, soll eine entsprechende Meldung ausgegeben werden: | ||
Zeile 98: | Zeile 70: | ||
int pe = Input.readInt(" | int pe = Input.readInt(" | ||
- | println(" | + | println(" |
if(pe == 1372){ | if(pe == 1372){ | ||
| | ||
Zeile 120: | Zeile 92: | ||
</ | </ | ||
+ | == Kleine Aufgabe dazu == | ||
+ | Erweitere das Programm, so dass es dem Benutzer drei Eingabeversuche zugesteht und jeweils ausgibt, wie viele Versuche er noch hat. Zwei mögliche Programmabläufe sehen also so aus: | ||
+ | < | ||
+ | |||
+ | Noch 3 Versuche | ||
+ | Sie haben eingegeben: 5654 | ||
+ | falsche PIN! | ||
+ | Noch 2 Versuche | ||
+ | Sie haben eingegeben: 4432 | ||
+ | falsche PIN! | ||
+ | Noch 1 Versuche | ||
+ | Sie haben eingegeben: 8983 | ||
+ | falsche PIN! | ||
+ | Programmende. | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | |||
+ | Noch 3 Versuche | ||
+ | Sie haben eingegeben: 2674 | ||
+ | falsche PIN! | ||
+ | Noch 2 Versuche | ||
+ | Sie haben eingegeben: 1372 | ||
+ | Die PIN ist korrekt! | ||
+ | Programmende. | ||
+ | </ | ||
+ | |||
+ | [[.loesung: | ||
===== Beispiel 2: Teilbarkeit ===== | ===== Beispiel 2: Teilbarkeit ===== | ||
Zeile 227: | Zeile 227: | ||
===== Aufgabe 2: Jede zehnte Zahl rot ===== | ===== Aufgabe 2: Jede zehnte Zahl rot ===== | ||
Erweitere das Programm oben so, dass es nicht nur jede fünfte Zahl grün färbt, sondern (davon abweichend!) zudem jede 10. Zahl rot. \\ \\ | Erweitere das Programm oben so, dass es nicht nur jede fünfte Zahl grün färbt, sondern (davon abweichend!) zudem jede 10. Zahl rot. \\ \\ | ||
- | [[.jedezehnterotxx:start|Hier geht's zur Lösung!]] | + | [[.jedezehnterot:start|Hier geht's zur Lösung!]] |
===== Beispiel 5: Anzahl der Tage im Monat ===== | ===== Beispiel 5: Anzahl der Tage im Monat ===== | ||
Zeile 268: | Zeile 268: | ||
===== Aufgabe 3: Schaltjahre! ===== | ===== Aufgabe 3: Schaltjahre! ===== | ||
- | Erweitere das Programm oben so, dass es den Benutzer zusätzlich zur Eingabe der Jahreszahl auffordert und bei der Antwort berücksichtigt, | + | Erweitere das Programm oben so, dass es den Benutzer zusätzlich zur Eingabe der Jahreszahl auffordert und bei der Antwort berücksichtigt, |
+ | **Vorsicht: | ||
+ | \\ | ||
[[.schaltjahr: | [[.schaltjahr: | ||
Zeile 291: | Zeile 293: | ||
do { | do { | ||
| | ||
- | System.clearScreen(); | + | SystemTools.clearScreen(); |
| | ||
Zeile 320: | Zeile 322: | ||
Erweitere das Programm oben so, dass es am Ende ausgibt, wie viele Versuche der Benutzer gebraucht hat. \\ \\ | Erweitere das Programm oben so, dass es am Ende ausgibt, wie viele Versuche der Benutzer gebraucht hat. \\ \\ | ||
**Bemerkung: | **Bemerkung: | ||
- | [[.zaehleversuche: | + | [[.zaehleversuche: |
===== Aufgabe 5: Schwimmbad ===== | ===== Aufgabe 5: Schwimmbad ===== | ||
Zeile 344: | Zeile 346: | ||
- | [[.schwimmbad: | + | [[.schwimmbad: |
===== Aufgabe 6: Zahlen ordnen ===== | ===== Aufgabe 6: Zahlen ordnen ===== | ||
Zeile 360: | Zeile 362: | ||
</ | </ | ||
- | [[.aufgabe6: | + | [[.aufgabe6: |
Zeile 411: | Zeile 413: | ||
===== Aufgabe 9: Lass' den Computer raten! ===== | ===== Aufgabe 9: Lass' den Computer raten! ===== | ||
- | Der Benutzer denkt sich eine Zahl zwischen 1 und 100. Der Computer rät und gibt seinen Tipp am Bildschirm aus. Dann fragt er den Benutzer, ob er richtig geraten hat. Ist die Zahl des Computers zu klein, so gibt der Benutzer 1 ein. Ist sie zu groß, so gibt er 2 ein. Stimmt sie, so gibt er 3 ein. | + | Der Benutzer denkt sich eine ganze Zahl zwischen 1 und 100. Der Computer rät und gibt seinen Tipp am Bildschirm aus. Dann fragt er den Benutzer, ob er richtig geraten hat. Ist die Zahl des Computers zu klein, so gibt der Benutzer 1 ein. Ist sie zu groß, so gibt er 2 ein. Stimmt sie, so gibt er 3 ein. |
Es folgen weitere Rateversuche des Computers und Antworten des Benutzers, bis der Computer die Zahl erraten hat. | Es folgen weitere Rateversuche des Computers und Antworten des Benutzers, bis der Computer die Zahl erraten hat. | ||
\\ \\ | \\ \\ | ||
Zeile 418: | Zeile 420: | ||
< | < | ||
- | <div class=" | + | <div class=" |
<script type=" | <script type=" | ||
+ | </ | ||
+ | <script type=" | ||
+ | * Der Computer muss sich das Intervall merken, in dem sich die vom Benutzer geheimgehaltene Zahl noch befinden kann. Dazu brauchst Du zwei Variablen, wir nennen sie ``int von = 1;`` und ``int bis = 100;``. | ||
+ | Anfangs weiß der Computer nur, dass sich die Zahl im Intervall von 1 bis 100 befindet. | ||
+ | * Deklariere eine weitere Variable ``int tipp``. | ||
+ | * Die Eingabe des Benutzers speicherst Du in einer vierten Variablen ``int eingabe = 0``. | ||
+ | * Beginne jetzt eine``while``-loop, | ||
+ | * In der while-loop berechnest Du zuerst aus ``von`` und ``bis`` den nächsten Tipp und gibst ihn aus. | ||
+ | * Dann liest Du die Eingabe des Benutzers ein und speicherst sie in der Variablen ``eingabe``. | ||
+ | * Abhängig von der Eingabe und den Werten von ``von`` und ``bis`` berechnest Du jetzt den nächsten Wert der Variable ``tipp`` sowie die neuen Werte von ``von`` und ``bis``. | ||
</ | </ | ||
</ | </ | ||
</ | </ | ||
- | [[.aufgabe9: | + | [[.aufgabe9: |
wenndann/if/start.1602046700.txt.gz · Zuletzt geändert: 2021/12/29 11:29 (Externe Bearbeitung)