Buch erstellen
Diese Seite zum Buch hinzufügen
Diese Seite zum Buch hinzufügen
Buch erstellen
Diese Seite aus Buch entfernen
Diese Seite aus Buch entfernen
Lösungsvorschläge
Die Lösungsvorschläge sind absichtlich unkommentiert. Du solltest sie verstehen und deinem Banknachbarn erklären können, damit sie einen Nutzen haben1). Idealerweise fügst du nach der Besprechung entsprechende Kommentare in den Code ein.
A01
public int 01MyModulo(int a, int b) { int remainder=0; // dein Code remainder = a - a/b*b; // Rückgabe return remainder; }
oder
public int MyModulo(int a, int b) { return a - a/b*b; }
A02
public void Switch(int a, int b) { System.out.println("Eingabe - a="+ a + " b="+b); int c; c=a; a=b; b=c; System.out.println("Ausgabe - a="+ a + " b="+b); }
public void Switch(int a, int b) { System.out.println("Eingabe - a="+ a + " b="+b); b = a + b; a = b - a; b = b - a; System.out.println("Ausgabe - a="+ a + " b="+b); }
A03
public double a03Pyramide(double h, double a) { double v = 1.0/3.0*h*a*a; return v; }
A04
A05
public String a06gerade (int zahl) { int istungerade; istungerade = zahl % 2; if (istungerade == 0 ) { return "Zahl "+ zahl +" ist gerade"; } else { return "Zahl "+ zahl +" ist ungerade"; } }
A06
public String a06schulnoten (double kommanote) { String textnote = ""; kommanote = kommanote*100; if (kommanote >= 550.0 ) { textnote = "Ungenügend"; } else if (kommanote >= 450.0 ) { textnote = "Mangelhaft"; } else if (kommanote >= 350.0 ) { textnote = "Ausreichend"; } else if (kommanote >= 250.0 ) { textnote = "Befriedigend"; } else if (kommanote >= 150.0 ) { textnote = "Gut"; } else { textnote = "Sehr gut"; } return textnote; }
public String a06schulnoten_2 (double kommanote) { String textnote = ""; int ganzenote; // Was passiert hier? Erkläre! ganzenote = (int) (kommanote*100+50)/100; switch(ganzenote){ case 1: textnote = "Sehr gut"; break; case 2: textnote = "Gut"; break; case 3: textnote = "Befriedigend"; break; case 4: textnote = "Ausreichend"; break; case 5: textnote = "Mangelhaft"; break; case 6: textnote = "Ungenügend"; break; } return textnote; }
A08
public boolean a08schaltjahr(int jahr) { if ( (jahr % 4 == 0 && jahr % 100 != 0 && jahr % 400 != 0) || (jahr % 400 == 0) ) { return true; } return false; }
A09
public int a09stellenzaehler(int zahl) { int stellen=0; while (zahl > 0) { zahl = zahl / 10; stellen++; } return stellen; }
A11
public int a11dual2dec(int dual) { int stellenziffer=0; int stellenwert=1; int dezimalwert=0; while (dual > 0) { stellenziffer = dual % 10; dezimalwert = dezimalwert + stellenziffer * stellenwert; stellenwert = stellenwert * 2; dual = dual / 10; } return dezimalwert; }
A12
public int a12zahlendreher(int zahl) { int stellenziffer=0; int stellenwert=1; int temp; int umgedreht=0; temp = zahl; while (temp > 0) { temp = temp / 10; stellenwert = stellenwert * 10; } stellenwert = stellenwert / 10; temp = zahl; while (temp > 0) { stellenziffer = temp % 10; umgedreht = umgedreht + stellenziffer * stellenwert; stellenwert = stellenwert / 10; temp = temp / 10; } return umgedreht; }
A13
public double a13pi(int n, boolean watch) { double pi4=0.0; double nenner=1.0; for (int i=0; i<n; i++) { if ( i % 2 == 0 ){ pi4 = pi4 + 1.0/nenner; } else { pi4 = pi4 - 1.0/nenner; } nenner = nenner + 2; if (watch) { System.out.println("Iteration: " + i + " Näherungswert: " + 4*pi4); } } return 4*pi4; }
A14
A15
A15
A16
public void a16lottozahlen () { int anzahl = 9; int[] lzahlen = new int[anzahl]; for (int i = 0; i<anzahl; i++) { lzahlen[i]=i+1; } int num_gezogen = 0; while (num_gezogen < 6) { int posgezogen = (int) (Math.random() * anzahl ); if (lzahlen[posgezogen] != 0 ) { System.out.println(lzahlen[posgezogen]); lzahlen[posgezogen] = 0; num_gezogen++; } else { int schongezogen = posgezogen + 1; System.out.println("Nochmal... (" + schongezogen +")" ); } } }
1)
Einfach nur Cut'n'Paste funktioniert zwar, Ändert aber nicht am Zustand deines Gehirns…