Übungsblatt zu überwachungsgesteuerten Schleifen

Aufgabe 1: Zufallszahl aus einem Bereich ziehen

Implementieren Sie das Beispiel für eine überwachungsgesteuerte Schleife von der Vorlesungsfolie "Zufallszahl aus einem Bereich ziehen".

Rufen Sie das Programm ein paar Mal auf und werten Sie die Resultate aus.

Aufgabe 2: Meilen pro Gallone

Schreiben Sie ein Programm, das die gefahrenen Meilen pro Gallone für eine Reihe von Autos berechnet. Die Daten für jedes Auto bestehen aus dem Anfangs- und Endstand in Meilen und der Anzahl der Gallonen. Das Programm wird beendet, sobald eine negative Zahl als Anfangsstand eingegeben wird.

Beispielablauf:

Anfangsstand Meilen: 15000
Endstand Meilen: 15250
Gallonen: 10

Meilen pro Gallone: 25.0


Anfangsstand Meilen: -1

Ade.










Die I/O-Bibliothek haben wir bis jetzt nur zur Eingabe verwendet.
Es besteht aber auch eine Ausgabemöglichkeit (deswegen der
Name IOLib), die alternativ oder zusätzlich zur Konsolenausgabe genutzt werden kann:

IOLib.putString("Meilen pro Gallone: " + ...... ;


IOLib.putString("Ade.");


Aufgabe 3: Bereiche addieren

Schreiben Sie ein Programm, welches die Unter- und Obergrenze für einen Bereich von ganzen Zahlen einliest. Das Programm liest danach ganze Zahlen ein, die addiert werden sollen und berechnet zwei Summen:

Das Abfragen weiterer Eingabewerte wird durch Eingabe einer 0 für die nächste zu addierende Zahl terminiert. Das Programm gibt dann die beiden Ergebnissummen aus.

Beispielablauf:

Untergrenze des Bereichs: 20
Obergrenze des Bereichs: 50
Ganze Zahl eingeben: 21
Ganze Zahl eingeben: 60
Ganze Zahl eingeben: 49
Ganze Zahl eingeben: 30
Ganze Zahl eingeben: 91
Ganze Zahl eingeben: 0

Summe der Werte innerhalb des Bereichs: 100
Summe der Werte außerhalb des Bereichs: 151

Aufgabe 4: Versandkosten-Kalkulator

Ein Paketdienst berechnet $3.00 Versandkosten bis zu einem Gewicht von 10 Pfund (inklusive). Darüber sind für jedes Pfund zusätzlich $0.25 zu bezahlen. Schreiben Sie ein Programm, dass nach dem Gewicht einer Sendung in ganzen Pfund fragt und dann die Versandkosten in Dollar ausgibt. Das Programm endet, wenn ein Gewicht von 0 oder weniger eingegeben wird.

Beispielablauf:

Gewicht der Sendung: 5
Versandkosten: $3.0

Gewicht der Sendung: 20
Versandkosten: $5.5

Gewicht der Sendung: 0
Ade.

Aufgabe 5: Fläche von Rechtecken

Ein CAD-Programm erwartet als Eingabe die Koordinaten von zwei Eckpunkten für eine Reihe von Rechtecken (siehe Abbildung 1). Dabei wird vorausgesetzt, dass die Seiten der Rechtecke parallel zur X- und Y-Achse verlaufen.

Die Koordinaten eines jeden Eckpunkts werden als Paar von ganzen Zahlen eingegeben, zuerst die X-Koordinate und dann die Y-Koordinate. Der Ursprung des Koordinatensystems (0,0) ist die linke obere Ecke, so dass Y abwärts zunimmt und X nach rechts zunimmt.

Abb.1: Beispiel CAD-Oberfläche

Das Programm berechnet für jedes Rechteck die Höhe, die Breite und die Fläche. Die zwei eingegebenen Eckpunkte müssen sich diagonal gegenüber liegen (links oben und rechts unten, oder rechts oben und links unten). Welche Wahl für jedes Rechteck getroffen wird, ist Sache der das Programm nutzenden Person. Die Person kann die Eckpunkte in beliebiger Reihenfolge eingeben. Höhe und Breite sind immer positive Integerzahlen.

Das Programm wird beendet, wenn die Person Eckpunkte eingibt, die kein Rechteck bilden können, da die Höhe 0 ist und/oder die Breite 0 ist.

Beispielablauf:

Erster Eckpunkt X-Koordinate: 100
Erster Eckpunkt Y-Koordinate: 100
Zweiter Eckpunkt X-Koordinate: 250
Zweiter Eckpunkt Y-Koordinate: 200

Breite: 150, Höhe: 100, Fläche: 15000

Erster Eckpunkt X-Koordinate: 50
Erster Eckpunkt Y-Koordinate: 100
Zweiter Eckpunkt X-Koordinate: 50
Zweiter Eckpunkt Y-Koordinate: 200

Ade.

Aufgabe 6: Grafikobjekt selektieren

In einem CAD-Programm soll geprüft werden, ob die das Programm nutzende Person das in der Abbildung 2 angegebene, grau getönte Pfeilobjekt selektieren möchte. Das Objekt besteht aus einzelnen Bildpunkten bzw. Pixels (Abkürzung für Picture Elements) und gilt als selektiert, wenn die Koordinaten eines zum Objekt gehörenden Pixels eingegeben werden. Pixel werden durch die Koordinate ihrer linken oberen Ecke adressiert.

Abb.2: Pfeilobjekt

Das Programm wird beendet, wenn mindestens eine negative Koordinate eingegeben wird.

Beispielablauf:

X-Koordinate: 2
Y-Koordinate: 2

Objekt selektiert

X-Koordinate: 3
Y-Koordinate: 1

Objekt selektiert

X-Koordinate: 4
Y-Koordinate: 4

Objekt deselektiert

X-Koordinate: -1

Ade.