âKontrollstrukturenâ Musterlösungen
âKontrollstrukturenâ Musterlösungen
âKontrollstrukturenâ Musterlösungen
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
DHBW Karlsruhe, Vorlesung Programmieren,<br />
„Kontrollstrukturen“ Musterlösungen<br />
Aufgabe 1 (Java-Programme zu den Aufgaben 1-4 des Übungsblattes<br />
„Algorithmen“)<br />
Teilaufgabe 1 „Temperaturtabelle“<br />
public class FahrenheitCelsius {<br />
}<br />
public static void main(String[] args) {<br />
System.out.println("Fahrenheit | Celsius");<br />
for (int fahrenheit = 0; fahrenheit
Teilaufgabe 4 „Aufsummieren“<br />
1. Mit while-Schleife<br />
public class SummeMitWhileSchleife {<br />
}<br />
public static void main(String[] args) {<br />
java.util.Scanner scanner = new java.util.Scanner(System.in);<br />
int summe = 0;<br />
int eingabe = 0;<br />
do {<br />
summe += eingabe;<br />
System.out.print("Geben Sie eine (ganze) Zahl "+<br />
"ein (neg. Zahl für Abbruch): ");<br />
eingabe = scanner.nextInt();<br />
} while (eingabe>=0);<br />
System.out.println("Die Summe aller (positiven) Zahlen ist "+summe);<br />
}<br />
2. Mit do-while-Schleife<br />
public class SummeMitDoWhileSchleife {<br />
public static void main(String[] args) {<br />
double zahl = 0.0, s = 0.0;<br />
}<br />
}<br />
java.util.Scanner scan = new java.util.Scanner(System.in);<br />
do {<br />
s += zahl;<br />
System.out.print("Gegen Sie bitte eine Zahl ein: ");<br />
zahl = scan.nextDouble();<br />
} while (zahl >= 0.0);<br />
System.out.println("Summe: " + s);
Aufgabe 2 „Schuhgrößen“<br />
public class Schuhgroesse {<br />
}<br />
public static void main(String[] args) {<br />
}<br />
System.out.println("Zentimeter | Schuhgroesse");<br />
System.out.println("------------------------------------");<br />
for(int size=30;size
Aufgabe 3 „Babylonisches Wurzelziehen“<br />
1. Lösung: mit do-while-Schleife<br />
public class Babylon {<br />
}<br />
public static void main(String[] args) {<br />
java.util.Scanner scan = new java.util.Scanner(System.in);<br />
System.out.print("Bitte geben Sie eine Zahl ein: ");<br />
double a = scan.nextDouble();<br />
System.out.println("Ermittle Quadratwurzel aus " + a);<br />
double x = 1.0; // Startwert des Iterationsverfahrens<br />
double xalt;<br />
int i=1;<br />
do {<br />
xalt = x;<br />
x = (x+(a/x))/2;<br />
System.out.printf("Schritt %2d: %10f \n",i++,x);<br />
} while (Math.abs(x-xalt)>0.000001);<br />
}<br />
Ausgabe:<br />
Bitte geben Sie eine ganze Zahl ein: 169<br />
Ermittle Quadratwurzel aus 169<br />
Schritt 1: 85,000000<br />
Schritt 2: 43,494118<br />
Schritt 3: 23,689850<br />
Schritt 4: 15,411854<br />
Schritt 5: 13,188720<br />
Schritt 6: 13,001350<br />
Schritt 7: 13,000000<br />
Schritt 8: 13,000000<br />
2. Lösung: mit while-Schleife<br />
public class HeronWurzel {<br />
public static void main(String[] args) {<br />
java.util.Scanner scan = new java.util.Scanner(System.in);<br />
System.out.print("Bitte eine Zahl eingeben: ");<br />
double a = scan.nextDouble();<br />
double x = a;<br />
double xalt = 0;<br />
while(Math.abs(x-xalt)>0.000001) {<br />
xalt = x;<br />
x = (x+a/x)/2;<br />
System.out.println("Zwischenergebnis: "+x);<br />
}<br />
System.out.println("Ergebnis: "+x);<br />
}<br />
}