Gymnasium Uebung2 2010
Inhaltsverzeichnis |
Der Typ Boolean
Einfache Ausdrücke
Ein wichtiges Werkzeug von Programmiersprachen sind Wahrheitswerte.
<eval id="4c8e77d5cfd9a">40>100</eval>
<eval id="4c8e77d5cfebe"> 100>40 </eval>
<eval id="4c8e77d5cff66"> int x = 30; x==30; </eval>
<eval id="4c8e77d5d002f"> boolean test=(30==30); test </eval>
Übung Experimentiere ein bisschen mit diesen logischen Ausdrücken
Komplexe Ausdrücke
Logisches UND <eval id="4c8e77d5d0115"> 30==40 && 20<30 </eval>
Logisches NICHT <eval id="4c8e77d5d01be"></eval>
!true
Logisches ODER Übung Schreibe einen Ausdruck mit der oder Verknüpfung (||) <eval id="4c8e77d5d027d"></eval>
Übung Was ist die Lösung von: 4>3 \wedge 10 <= 100 Tipp: Gebe in den Funktionen nur true oder false ein.
Übung Was ist die Lösung von: 4 > 3 \vee 10==100
Konditionale bzw. bedingte Anweisungen
<eval id="4c8e77d5d0555"></eval>
hallo(2);
Übung Gehe kurz diesen Quelltext durch, versuch ihn zu verstehen und bei Fragen meld dich!
Übung In der Vorlesung haben wir als Beispiel das schöne Wetter und Eltern nicht zu Hause erarbeitet. Schreib das mal als Prozedur :-)
<eval id="4c8e77d5d0608"></eval>
Übung
Baue eine Funktion signum. Sie soll folgendes machen:
- -1, wenn die eingegebene Zahl kleiner 0 ist.
- 0, wenn die eingegebene Zahl gleich 0 ist.
- 1, wenn die eingegebene Zahl größer 0 ist.
Nenne die Funktion signum
<eval id="4c8e77d5d06d7"></eval>
Übung Baue ein Funktion abs. Sie soll den absoluten Betrag einer Zahl ausgeben. z.B. abs(-50) == 50
Nenne die Funktion abs! Es wird der absolut Betrag als Ganzzahl zurückerwartet!
<eval id="4c8e77d5d07cb"></eval>
Übung
Baue eine Funktion die true zurückgibt, wenn die eingebene Zahl gerade ist.
Nenne das Programm even.
<eval id="4c8e77d5d08b6"></eval>
Übung
Baue eine Funktion die true zurückgibt, wenn die eingebene Zahl ungerade ist.
Nenne das Programm odd.
<eval id="4c8e77d5d09a8"></eval>
Übung Schreibe ein kleines Rabatt Programm. Das Programm soll den Rabatt für eine gewisse Stückzahl berechnen.
Nenne das Programm rabatt Es wird eine Zahl vom Typ int zurückerwartet!
Der Rabatt berechnet sich wie folgt:
- 0<st> kein Rabatt<br></st>
- 1000<st> 2 (€) Rabatt<br></st>
- 2000<st> 5 (€) Rabatt<br></st>
- Stückzahl > 5000 --> 10 (€) Rabatt
Nenne das Programm: rabatt
<eval id="4c8e77d5d0a72"></eval>
Übung
Baue dir ein Programm, was berechnet ob jmd. Über-, Normal- oder Untergewicht hat https://www.uni-hohenheim.de/wwwin140/info/interaktives/bmi.htm.
Nenne die Funktion bmi
Benutze als ersten Parameter das Gewicht, als zweiten die Größe
Gib "Übergewicht", "Normalgewicht" oder "Untergewicht" zurück. Deine Rückgabetyp ist also String.
<eval id="4c8e77d5d0b69"></eval>
Übung Eine IT-Firma konnte ihre Effizienz durch den Umstieg auf eine andere Programmiersprache steigern. Der Chef möchte deshalb seine Mitarbeiter belohnen. Die Gehälter aller Mitarbeiter sollen um 4 %, mindestens aber um 80 € im Monat erhöht werden. Es soll ein Programm entwickelt werden, das nach Eingabe des alten Monatsgehaltes das neue Gehalt berechnet und ausgibt (vgl. http://www.google.de/url?sa=t&source=web&ct=res&cd=1&url=http%3A%2F%2Fwww.informatica-didactica.de%2FInformaticaDidactica%2FKohl2006%2FAnleitung2006.pdf&ei=HVWlSonyCceHsAaG06DTBA&rct=j&q=Puck+programmieren&usg=AFQjCNF_vjDGSS6dVHesQ-0shSHpvkzOHA).
Nenne das Programm gehaltserhoehung! Als Rückgabe wird eine Ganzzahl erwartet!
<eval id="4c8e77d5d0c73"></eval>
Übung
Ein Großbauer möchte sein Land erweitern. Dafür bietet er den Bauern im Dorf an, ihre
Felder zu pachten. Da er größere Felder mit seinen modernen Geräten besser bewirtschaften
kann, ist er bereit, dafür einen höheren Preis zu zahlen. Für Felder über 10 Hektar Größe
will der Großbauer 150 € Pacht pro Hektar im Jahr bezahlen. Bei allen anderen Feldern nur
130 € pro Hektar.
Entwickle für die Bauern des Dorfes ein Programm, welches zu der Eingabe einer
Fläche in Hektar und der geplanten Pachtdauer in Jahren den Erlös ausgibt.
Nenne das Programme land. Zurückerwartet wird der Preis als int.
<eval id="4c8e77d5d0d46"></eval>
Zusammenfassung
Zuweisungsoperatoren
| Operator | Bezecihnung | Bedeutung |
|---|---|---|
| == | Gleich | a==b ergibt true, wenn a gleich b ist. |
| != | Ungleich | a!=b ergibt true, wenn a ungleich b ist. |
| < | Kleiner | a < b ergibt true, wenn a kleiner b ist. |
| <= | Kleiner gleich | a<=b ergibt true, wenn a kleiner gleich b ist. |
| > | Größer | a>b ergibt true, wenn a größer b ist. |
| >= | Größer gleich | a>=b ergibt true, wenn a größer gleich b ist. |
Logische Operatoren
| Operator | Bezecihnung | Bedeutung |
|---|---|---|
| ! | Logisches NICHT | !a ergibt false, wenn a wahr ist und true, wenn a falsch ist |
| && | UND (Short-Curcuit) | a && b ergibt wahr wenn a und b wahr sind, sonst falsch. Ist a bereits falsch wird falsch zurückgegeben und b nicht mehr ausgewertet. |
| ODER (Short-Curcuit) | ergibt falsch wenn a und b falsch sind, sonst wahr. Ist a bereits wahr wird b nicht emhr ausgewertet. |
| & | UND | ergibt wahr wenn a und b wahr sind, sonst falsch. Überprüft beide Operanden. |
| ODER | ergibt falsch wenn a und b falsch sind, sonst wahr. Überprüft beide Operanden. |
| ^ | Exklusiv-ODER | a ^ b ergibt wahr wenn a und b verschiedene Wahrheitswerte haben. |