Programmieren in Java 2. Übung 1. Aufgabe a) Erstelle das folgende Programm public class WillkommensGruss { public static void main(String args[]) { System.out.print("Herzlich Willkommen "); System.out.println(args[0]); } } b) Was passiert, falls das vorliegende Programm ohne Angabe eines Arguments in der Kommandozeile aufgerufen wird? _________________________________________________________________________________ _________________________________________________________________________________ c) Wie kann die unter b) bestimmte Situation durch eine spezielle Behandlung abgefangen werden? _________________________________________________________________________________ d) Gestalte das unter a) vorliegende Programm so, daß es die unter c) angegebene spezielle Behandlung realisiert. e) Überprüfe die unter d) realisierte spezielle Behandlung auf Funktionsfähigkeit. 2. Aufgabe Gegeben ist im Rahmen der main()-Routine ein Datenfeld mit einer Reihe ganzzahliger Komponenten: public class Aufg2 { public static void main(String args[]) { int x[] = { 9, 8, 7, 6, 5, 4, 3, 2, 1 }; ....... } } a) Ergänze die main()-Methode mit Anweisungen, die das mit Ganzzahlen gefüllte Datenfeld so umgestalten, daß die Zahlen, von der ersten zu letzen Komponente gesehen, eine aufsteigende Sortierung zeigen b) Ergänze die main()-Methode durch Anweisungen, die das Datenfeld (Array) vor und nach der Sortierung in einer Zeile ausgeben, z.B.: c) Wie müssen die Anweisungen für das Sortieren verändert werden, wenn das folgende Datenfeld zu sortieren ist String x[] = {“Juergen“, “Hubert“, “Josef“, “Liesel“, “Vera“, “Christian“}; 1 Programmieren in Java 3. Aufgabe a) Stelle aus der Java-API-Dokumentation die Operatoren für ganzzahlige Arithmetik (Datentyp: int) zusammen _________________________________________________________________________________ b) Schreibe eine Applikation, die zwei ganze Zahlen auf der Ebene der Befehlszeile einliest und anschließend mit diesen beiden Zahlen alle binären und unären Operationen auf ganzen Zahlen ausführt. Die Demonstration binärer und unärer Arithmetik mit ganzen Zahlen soll den Namen IntDemo tragen. Aus der Befehlszeile können ganzen Zahlen über int i = Integer.valueOf(args[0]).intValue(); int j = Integer.valueOf(args[1]).intValue(); konvertiert werden. c) Was passiert, wenn nach fehlerfreier Übersetzung java IntDemo aufgerufen wird _________________________________________________________________________________ d) Wie kann dieser Fehler aufgefangen werden? _________________________________________________________________________________ e) Erweitere das vorliegende Programm um diese Fehlerbehandlungsroutine. f) Erweitere das vorliegende Programm durch die Berechnung von 1/0. Führe das Programm anschließend aus. Welches Resultat ergibt sich für 1/0. _________________________________________________________________________________ 4. Aufgabe Gib über die Kommandozeile eine natürliche Zahl ein. Das über die Kommandozeile ebenfalls aufzurufende Programm soll den kleinsten Teiler der natürlichen Zahl bestimmen und angeben. Falls kein Teiler existiert, soll ausgegeben werden, daß die Zahl eine Primzahl ist. 5. Aufgabe Schreibe ein Programm zur Berechnung der Iterationsvorschrift: x(n+1) = (x(n) + 2/x(n)) / 2 x(0) = 2 2 herangezogen. Bestätige durch das Programm, Die Vorschrift wird häufig für die Berechnung von das dies korrekt ist. 2