EidP. Blocktutorium SS 2014 Praktischer Teil //Programmieren = Theoriewissen + Handwerk; Bücher, Folien, Videos, Vorträge,... Können Theorie vermitteln. Der Rest ist ÜBUNG!
Beste Vorbereitung: Programmieren programmieren programmieren programmieren programmieren programmieren programmieren programmieren programmieren programmieren programmieren.. //Aufgaben erfordern oft Kreativität. Auch die ist trainierbar! Je mehr Aufgaben ihr gelöst habt, desto mehr Lösungsmuster habt ihr gesehen und im Hinterkopf.
Deshalb: IHR programmiert, ich helfe.
Agenda: If-then-else Switch-case ()? : Einstieg Arrays (was sich ohne Schleifen machen lässt) Datentypen und Ausgabe
Aufgabe 1 a) Was gibt das Programm aus?
Aufgabe 1 b) Was gibt das Programm aus? Sie: Wir haben kein Brot mehr, könntest du bitte zum Supermarkt gehen und 1 holen? Und wenn sie Eier haben, bring 6 Stück mit. Er: Klar! Nach kurzer Zeit kommt er wieder zurück und hat 6 Brote dabei. Sie: Warum nur hast du 6 Brote gekauft?!? Er: Sie hatten Eier.
Gegeben sei folgende Deklaration, wobei die drei Punkte jeweils einen beliebigen Initialisierungswert angeben sollen: inta = ; intb = ; int max; Aufgabe 2 Das Maximum zweier Zahlen a und b ist definiert als:
Mit welchen Anweisungsfolgen lässt sich das Maximum von zwei ganzen Zahlen a und b in der Variablen maxbestimmen?kreuzen Sie Ja oder Nein jeweils an. Anweisungsfolge JA NEIN if(a > b) max= a; if(b>a) max= b; ( ) ( ) if(a >= b) max= a; elsemax= b; () () if(a > b) max= a; max= b; ( ) ( )
Mit welchen Anweisungsfolgen lässt sich das Maximum von zwei ganzen Zahlen a und b in der Variablen maxbestimmen?kreuzen Sie Ja oder Nein jeweils an. Anweisungsfolge JA NEIN if(a > b) max= a; if(b>a) max= b; ( ) (X) //falls a = b ist, bleibt maxundefiniert if(a >= b) max= a; elsemax= b; (X) () if(a > b) max= a; max= b; ( ) (X) //maxwird immer = b, da ohne Klammern {} nur die erste Anweisung hinter if ausgeführt wird
Aufgabe 3 Schreiben Sie ein Java-Programm, das für zwei Kommandozeilenargumente (natürliche Zahlen im darstellbaren Bereich) trueausgibt, wenn beide Zahlen durch 11 teilbar sind, und ansonsten false ausgibt.
Aufgabe 3 Schreiben Sie ein Java-Programm, das für zwei Kommandozeilenargumente (natürliche Zahlen im darstellbaren Bereich) trueausgibt, wenn beide Zahlen durch 11 teilbar sind, und ansonsten false ausgibt. public class Play { public static void main(string[] args) { int a = Integer.parseInt(args[0]); int b = Integer.parseInt(args[1]); // Programm heißt: Klasse mit main Methode Methode heißt: nur eine Methode reicht. } } System.out.println((a % 11 == 0) && (b % 11 == 0));
Aufgabe 4 Ein Tante-Emma-Laden führt drei Artikel: Playstationfür 199 Euro, Lakritzstangen für 30 Cent und Gummibaerchenfür 5 Cent. Für eine Playstationfallen 19% Mehrwertsteuer an, da die beiden anderen Artikel Nahrungsmittel sind, gilt lediglich der erm aßigte Satz von 7%. Schreiben Sie ein Java-Programm, das von der Tastatur eine Zahl (Anzahl) und einen String (Artikel) einliest und daraus die Nettosumme (ohne Mehrwertsteuer), den Mehrwertsteueranteil und die zu zahlende Gesamtsumme berechnet und auf dem Bildschirm ausgibt. Hinweis: Vergleich von Strings, Eingabe von der Tastatur uber einen Scanner (siehe Beschreibung auf unserer Java-Seite unten)
Ein Tante-Emma-Laden führt drei Artikel: Playstation für 199 Euro, Lakritzstangen für 30 Cent und Gummibaerchenfür 5 Cent. Aufgabe 4 Für eine Playstation fallen 19% Mehrwertsteuer an, da die beiden anderen Artikel Nahrungsmittel sind, gilt lediglich der erm aßigte Satz von 7%. Schreiben Sie ein Java-Programm, das von der Kommandozeile eine Zahl (Anzahl) und einen String (Artikel) einliest und daraus die Nettosumme (ohne Mehrwertsteuer), den Mehrwertsteueranteil und die zu zahlende Gesamtsumme berechnet und auf dem Bildschirm ausgibt. // Programm heißt: Klasse mit main Methode Methode heißt: nur eine Methode reicht.
Textaufgabe, Programm erstellen: Methodik Jedes Programm hat den Aufbau: Eingabe Verarbeitung Ausgabe Fragt euch: 1. Wie sieht die Eingabe aus? 2. Wie sieht die Ausgabe aus? 3. Was muss dazwischen geschehen?
Aufgabe 5 a) Geben Sie eine Methode an, die für vier ganze Zahlen (vier int Methodenparameter) die kleinste von ihnen zurückgibt. b) Der Methodenrumpf soll aus einer einzelnen return Anweisung bestehen.
Aufgabe 5 a) a) Geben Sie eine Methode an, die für vier ganze Zahlen (vier int Methodenparameter) die kleinste von ihnen zurückgibt. b) Der Methodenrumpf soll aus einer einzelnen return Anweisung bestehen. public int foo(int a, int b, int c, int d) { int min = a; if (b < min) { min = b; } if (c < min) { min = c; } if (d < min) { min = d; } return min; }
Aufgabe 5 b) a) Geben Sie eine Methode an, die für vier ganze Zahlen (vier int Methodenparameter) die kleinste von ihnen zurückgibt. b) Der Methodenrumpf soll aus einer einzelnen return Anweisung bestehen.
Bastelaufgabe Schreiben Sie ein Programm, dass für die Zahlen von null bis 99 die Dezimalzahl und einen deutschen Namen der Zahl ausgibt: 0: null 1: eins 99: neunundneunzig Legen Sie dazu genau einen Array an, der die Namen für die Zahlen von null bis neun enthält und arbeiten sie so gut es geht mit diesem! Hinweise: Bei der Ausgabe kann System.out.print() (ohne ln, also nicht println) nützlich sein. Es ist hilfreich, zuerst eine simpelste, falsche Implementierung zu schreiben (Ausgabe z.b. null, eins,, neun, nulleins, einsundeinszig, zweiundeinszig ) Und diese dann Schritt für Schritt zu verbessern.
Hilfe: Bastelaufgabe http://data7.blog.de/media/586/6212586_bd5d9c7f06_o.png Die Schritt für Schritt Lösung wird übers Wochenende hochgeladen!