17.01.2014 Aufrufe

„Kontrollstrukturen“ Musterlösungen

„Kontrollstrukturen“ Musterlösungen

„Kontrollstrukturen“ Musterlösungen

MEHR ANZEIGEN
WENIGER ANZEIGEN

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 />

}

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!