Übungsblatt 2. Java Vorkurs (WS 2015)

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Übungsblatt 2. Java Vorkurs (WS 2015)"

Transkript

1 Übungsblatt 2 Java Vorkurs (WS 2015) Aufgabe 1 Logische Operatoren Manchmal ist es wichtig zwei Werte miteinander zu vergleichen. Dazu gibt es in Java folgende Vergleichsoperatoren: Text Math. Zeichen Java größer als > > kleiner als < < gleich = == // einfaches = ist in Java eine Zuweisung ungleich! = größer gleich >= kleiner gleich <= Lege ein neues Projekt mit einer neuen Klasse Logik an und erstelle eine main-methode in der Klasse Logik und füge in der main-methode eine println Anweisung ein. Teste nun folgende Kombinationen in der println Anweisung (sowie mit <, >= und <= anstelle von > ). 1 1 > > > > > > > 2 Teste auch! = anstelle von == 1 1 == == == == // e i n e 0 Unterschied == // wie oben, nur 1, s t a t t == Wenn man zwei Vergleiche voneinander abhängig betrachten möchte (beide Vergleiche liefern true zurück), muss man die Ergebnisse der Vergleiche mit logischen Operatoren verbinden: und && Achtung kein einfaches und in Java verwenden, das macht etwas anderes (aber ähnliches) oder nicht verwenden (analog zu und) nicht! Zum Testen der Operatoren kannst du true und false direkt verwenden. Fülle die folgenden Tabellen für die Operatoren!, && und aus:

2 Java Vorkurs (WS 2015) Übungsblatt 2 Seite 2 von 9 A!A true false A B A && B false false false true true false true true A B A B false false false true true false true true Anhang: Vergleiche von Strings: Man sollte beim Vergleichen von Strings (und Objekten) niemals den == Operator verwenden (Ausnahmen gibt es nur sehr wenige): Teste folgenden code: 1 S t r i n g s1 = h a l l o ; 2 S t r i n g s2 = h a l l o ; 3 4 System. out. p r i n t l n ( s1 ) ; 5 System. out. p r i n t l n ( s2 ) ; 6 System. out. p r i n t l n ( s1 == s2 ) ; Im Vergleich zu: 1 S t r i n g s1 = h a l l o ; 2 S t r i n g s2 = new S t r i n g ( h a l l o ) ; 3 4 System. out. p r i n t l n ( s1 ) ; 5 System. out. p r i n t l n ( s2 ) ; 6 System. out. p r i n t l n ( s1 == s2 ) ; Um Strings zu vergleichen sollte man deshalb immer die.equals() Funktion benutzen: 1 System. out. p r i n t l n ( s1. e q u a l s ( s2 ) ) ; Aufgabe 2 Arrays Benötigt man viele Variablen vom gleichen Typ, dann kann man in Java Arrays nutzen. Lege dafür zunächst eine neue Klasse Arrays mit main-methode an. Deklariere nun ein Array vom Typ int mit dem Namen testarray. Dazu nutzt man fast die gleiche Syntax wie beim Deklarieren einer Variable vom Typ int. Lediglich zwei eckige Klammern werden hinzugefügt: 1 i n t [ ] t e s t A r r a y ; Füge auch eine Ausgabe von testarray mit println hinzu. Das Programm lässt sich nicht ausführen, da der Variable noch kein Wert zugewiesen wurde. Das können wir ändern: 1 i n t [ ] t e s t A r r a y = { 1, 2, ; Achtung: Diese Notation kann man nur in der Zeile der Deklaration verwenden!! In der Konsole sollte nun etwas wie erscheinen, wenn man das Programm ausführt. Das liegt daran, dass println nicht weiß, was es mit dem Inhalt eines Arrays machen muss um es schön darzustellen. Du kannst die Größe des Arrays über testarray.length auslesen. Einzelne Elemente bekommst du indem du den Index des Elements in eckige Klammern schreibst: testarray[1] Bei testarray[1] bekommt man allerdings das zweite Element aus dem Array. Dies liegt daran, dass in Java (und in fast allen anderen Programmiersprachen) Indizes mit 0 beginnen! Du kannst einzelne Werte in deinem Array verändern, indem du wie beim Auslesen den Index der entsprechenden Stelle in eckige Klammern schreibst: testarray[1] = 5; Teste nun folgenden Code: 1 i n t [ ] t e s t A r r a y = { 1, 2, ; 2 i n t [ ] t e s t A r r a y 2 = t e s t A r r a y ; 3 4 t e s t A r r a y [ 1 ] = 5 ; 5 6 System. out. p r i n t l n ( t e s t A r r a y 2 [ 1 ] ) ;

3 Java Vorkurs (WS 2015) Übungsblatt 2 Seite 3 von 9 Obwohl wir testarray2 nie verändert haben, hat sich die Änderung von testarray auch auf testarray2 ausgewirkt. Die beiden Variablen teilen sich also dieselben Daten. Außerdem heißt das, dass man Arrays in Place also an Ort und Stelle verändern kann. Um dieses Problem zu umgehen kann man testarray.clone() nutzen. Wenn man zehn Variablen braucht mag int[] testarray = {1,2,3}; ja noch ok sein, aber bei hundert wird es schnell zu aufwändig und unübersichtlich. Deshalb kann man auch einfach nur sagen, wie viele Plätze das Array haben soll: int[] testarray = new int[26]; Jetzt kann man die einzelnen Stellen zu einem späteren Zeitpunkt befüllen. Aufgabe 3 Verzweigungen In Aufgabe 1 hast du Vergleiche kennen gelernt. Jetzt sollst du diese Vergleiche benutzen, um das Programm zu steuern. Dazu gibt es die if-anweisung in Java: 1 i f ( b o o l e a n V a r i a b l e ) { 2 // code goes i n here Der Code innerhalb der if-anweisung wird dabei nur ausgeführt, wenn der Wert von booleanvariable true ist. Du kannst booleanvariable auch durch Vergleiche ( 2 < 4 ) oder logische Ausdrücke (true && false) ersetzen. Lege eine neue Klasse Verzweigungen mit eigener main-methode an. Lege in der main-methode drei Variablen vom Typ int mit unterschiedlichen Werten an. Schreibe einen if Block, der Zurück auf der Konsole ausgibt, wenn var1 > var2 gilt. Schreibe einen if Block, der in die auf der Konsole ausgibt, wenn var1 <= var2 gilt. Schreibe einen if Block, der Zukunft auf der Konsole ausgibt, wenn var1! = var3 gilt. Versuche jetzt verschiedene Werte für die Variablen aus. Schaffst du es Zurück in die Zukunft auszugeben, ohne die if-blöcke zu verändern? Die ersten beiden if-blöcke schließen sich gegenseitig aus. Das wenn der erste Block ausgeführt wird, dann kann der Zweite nicht mehr ausgeführt werden und anders herum. Dafür gibt es in Java das else-schlüsselwort: 1 i f ( a > b ) { 2 Anweisung1 ; 4 5 i f ( a <= b ) { 6 Aweisung2 ; 7 } lässt sich durch Folgendes ersetzen: 1 i f ( a > b ) { 2 Anweisung1 ; e l s e { 4 Aweisung2 ; 5 } Wenn man mehrere if s verketten möchte kann man auch folgende, kürzere, Syntax verwenden: 1 i f ( a > 10 ) { 2 Anweisung1 ; e l s e i f ( a < 1 ) { 4 Aweisung2 ; 5 } e l s e { 6 Anweisung3 ; 7 } Verändere die main-methode so, dass Hello Java ausgegeben wird, wenn die erste Variable einen Wert größer als 85 hat. Falls die erste Variable kleiner oder gleich 85 ist soll We need to start the

4 Java Vorkurs (WS 2015) Übungsblatt 2 Seite 4 von 9 engine! ausgegeben werden, falls die zweite Variable kleiner als die dritte Variable ist. Ansonsten soll Back to the future! ausgegeben werden. Wenn man viele Verzweigungen testen soll, dann kann man in Java switch-case benutzen: 1 i n t i = 0 ; 2 3 switch ( i ) { 4 c a s e 1 : 5 Anweisung1 1 ; 6 Anweisung1 2 ; 7 break ; 8 c a s e 2 : 9 Anweisung2 ; 10 break ; 11 d e f a u l t : 12 AnweisungDefault ; 1 In der ersten Zeile gibt man dabei die Variable an, die man testen möchte. (switch (i)) Innerhalb der geschweiften Klammern stehen dann die Fälle. Ein Fall besteht aus dem Schlüsselwort case, dem Wert auf den getestet wird z. B. 1, einem Doppelpunkt, einer oder mehreren Anweisungen und ganz wichtig: wird von einer break; Anweisung abgeschlossen. Es gibt noch einen speziellen Fall, den default Fall. Die Anweisungen hinter dem default Fall werden dann ausgeführt, wenn kein anderer Fall ausgeführt wurde. Füge den obigen Code in die main-methode ein. Ersetze die Anweisungen in den cases durch println(1); und println(2); und println("default"); Teste den Code mit folgenden Werten für i: 0,1,2,3,-100, 237 Fehlerquellen: Semikolons, break; vergessen, Lösche nun mal zum Testen das break von case 1: Erwartung alle Anweisungen zwischen case 1: und dem nächsten break; werden ausgeführt. Ändere das switch case so ab, dass es zu den Zahlen von 0 bis 15 den Wert als Wort in die Konsole schreibt: z. B. 1 eins Für alle anderen Zahlen soll entweder Zahl zu groß, oder Zahl zu klein ausgegeben werden. Aufgabe 4 Schleifen Erstelle eine neue Klasse Wiederholungen mit eigener main-methode. Das Programm soll zehn mal in der Konsole Back to the future ausgeben. Das Ganze kann man einfacher machen. Mit Schleifen: 1 i n t i = 0 ; 2 3 w h i l e ( i < 10) { 4 System. out. p r i n t ( i ) ; 5 System. out. p r i n t l n ( Back to the f u t u r e ) ; 6 } 7 8 System. out. p r i n t ( i ) ; Wenn du das Programm jetzt ausführst solltest du dir zuerst nochmal ansehen, wo der Stopp Button ist. Das liegt daran, dass die Variable i noch nicht verändert wird. Füge eine Zeile am Ende der Schleife ein, die die Variable hochzählt. Was ist der Unterschied, wenn du diese Zeile am Anfang der Schleife einfügst. Wird der Schleifeninhalt auch ausgeführt wenn i von Anfang an 10 ist? Die while Schleife wird solange ausgeführt, wie die Scheifenbedingung (oben i < 10) wahr ist. Ändere die Schleifenbedingung zu Math.random()>0.1 Die Schleife sollte nun bei jedem mal unterschiedlich oft durchlaufen. In einer while Schleife muss man sich selbst um Zählvariablen bemühen, wenn man etwas zählen will. Da man sehr häufig etwas zählen muss gibt es in Java die for Schleife:

5 Java Vorkurs (WS 2015) Übungsblatt 2 Seite 5 von 9 1 f o r ( i n t a = 0 ; a < 1 0 ; a++) { 2 System. out. p r i n t l n ( a ) ; Dieser Code ist äquivalent zu 1 i n t a = 0 ; 2 w h i l e ( a < 10) { 3 System. out. p r i n t l n ( a ) ; 4 a++; // a = a + 1 ; 5 } Anmerkungen: Die Variable a ist nur innerhalb der for Schleife zugänglich. Der Operator ++ ist sehr gefährlich und sollte am besten nur in Schleifen oder in einer eigenen Zeile verwendet werden. a++ bedeutet a = a+1 Erstelle eine for Schleife, die von 0 auf 88 mph beschleunigt und jeweils die Geschwindigkeit ausgibt. Schreibe eine while Schleife, die von 88 mph abbremst, indem sie immer die Geschwindigkeit halbiert. Auch in der for Schleife kann man andere Anweisungen als a++ verwenden um die Schleifenvariable zu verändern. Versuche die letzte while Schleife in eine for Schleife umzuwandeln. for Schleifen kann man sehr gut nutzen, um über Arrays zu iterieren (es Element für Element zu traversieren). Erstelle eine neue Klasse Schleifen mit eigener main-methode. Erstelle in der main-methode ein String Array alphabet der Länge 10 mit den ersten 10 Buchstaben des Alphabets. Gib nun die ersten 10 Buchstaben des Alphabets mit Hilfe einer for Schleife aus. Hinweis: Die Länge eines Arrays lässt sich mit der Methode.length auslesen. Verlängere das Array um 5 weitere Buchstaben. Wenn du die Schleife mit array.length gestaltet hast, solltest du nichts weiter ändern müssen. Es gibt in Java für Arrays sogar noch eine schönere Möglichkeit alle Elemente einzeln auszulesen: 1 f o r ( S t r i n g s : alphabet ) { 2 System. out. p r i n t l n ( s ) ; Die Schleifenvariable s nimmt dabei nacheinander die Werte aus dem Array an. Teste, ob sich alphabet ändert, wenn man s einen neuen Wert zuweist. Aufgabe 5 Methoden und Rückgabewerte Oft möchte man Code zwar wiederverwenden, aber an einer späteren Stelle. Dafür gibt es in Java Methoden. Die einfachste Methode sieht so aus: 1 p u b l i c s t a t i c void methodenname ( ) { 2 // Anweisungen Die Schlüsselwörter public, static und void ignorieren wir erst einmal. Erstelle eine neue Klasse mit dem Namen Methoden mit eigener main-methode. Erstelle eine neue Methode, die Wir schicken dich zurück..., zurück in die Zukunft! auf der Konsole ausgibt. Du kannst diese Methode zukunft nennen. Rufe die Methode zukunft in der main-methode auf und führe das Programm aus.

6 Java Vorkurs (WS 2015) Übungsblatt 2 Seite 6 von 9 Ändere die Methode zukunft so ab, dass sie erst einen Countdown von 10 runter zählt. (Nutze eine Schleife) Einfach nur den gleichen Code unverändert zu benutzen ist aber noch recht eingeschränkt. Man kann einer Methode auch Informationen mitgeben. Dazu muss man typ und name in den runden Klammern bei der Methodendefinition eingeben: 1 p u b l i c s t a t i c void zukunft ( i n t i ) {... } Das Programm lässt sich jetzt nicht mehr ausführen, da man den Methodenaufruf auch entsprechend anpassen muss: zukunft(10); Tausche nun die Schleifenvariable durch den Parameter i der Methode zukunft aus. Rufe die Methode zukunft einmal mit 10 und einmal mit 3 als Argument auf. Du kannst auch mehrere verschiedene Parameter benutzen: 1 p u b l i c s t a t i c void einemethode ( i n t a, double b, S t r i n g t e x t ) {... } Man könnte jetzt auf die Idee kommen, dass man eine lange Berechnung einfach in eine Methode zu packen, aber wie bekommt man das Ergebnis zurück? Dazu muss man das Schlüsselwort void austauschen. void sagt einfach nur aus, dass die Methode nichts zurückgibt. Man kann statt void jeden beliebigen Datentyp (int, double, String, etc.) angeben. Hat man einen Datentyp angegeben, dann muss man auch etwas zurückgeben. Dies macht man mit dem return statement: 1 p u b l i c s t a t i c i n t einemethode ( i n t a ) { 2 r e t u r n a + 1 ; Anmerkung: return; ohne einen Rückgabewert kann man auch verwenden um eine Methode mit dem Rückgabetyp void vorzeitig zu unterbrechen. Schreibe eine Methode die eine beliebige Zahl quadriert. Schreibe eine Methode, die den Kreisumfang zurückgibt. Du kannst für π Math.PI benutzen. Schreibe eine Methode, die den Flächeninhalt eines Rechtecks berechnet. Aufgabe 6 Fakultät: Schleifen Erstelle eine neue Klasse mit dem Namen Fakultät und einer main-methode. Diese main-methode soll eine long Variable mit dem Namen zahl haben und die Fakultät dieser Zahl berechnen und anschließend auf der Konsole ausgeben. Verwende den Datentyp long für die Variablen. Wieso macht die Verwendung diesen Datentyps hier Sinn? Aufgabe 7 summa summarum: Schleife Erstelle eine neue Klasse mit dem Namen Summe und einer main-methode. Diese main-methode soll eine int Variable mit dem Namen zahl haben und die Summe aller Zahlen (startend bei 0) bis zu einschließlich dieser Zahl berechnen. Das Ergebnis soll anschließend auf der Konsole ausgegeben werden. (Bspw: zahl=10, Ausgabe: 55) Aufgabe 8 Quadrieren Schreiben Sie ein Programm, welches die Werte für i und i 2 ausgibt. i {1, 2, 3,..., 20} i {170, 171,..., 190} Aufgabe 9 Anwendung von Schleifen Auf einem Konto sind 450 Euro. Wie viele Jahre dauert es, bis das Guthaben verdoppelt ist, wenn die Bank jährlich einen Zinssatz von 1.4% bezahlt.

7 Java Vorkurs (WS 2015) Übungsblatt 2 Seite 7 von 9 Aufgabe 10 User Input Bis jetzt hast du alle Eingaben direkt in den Code schreiben müssen und konntest nicht auf etwaige Eingaben reagieren. Allerdings ist es auch in Java möglich Eingaben über die Konsole einzulesen und im Programm zu verwenden. Erstelle zunächst eine neue Klasse KonsolenEingabe mit eigener main-methode. Du kannst dann folgende Methoden verwenden, um einen String, int oder einen double auszulesen: 1 // L i e s t e i n e n i n t Wert e i n und w e i s t ihn z a h l zu 2 i n t z a h l = UserInput. r e a d I n t ( ) ; 3 4 // L i e s t e i n e n double Wert e i n und w e i s t ihn f z a h l zu 5 double f z a h l = UserInput. readdouble ( ) ; 6 7 // L i e s t e i n e n S t r i n g e i n und w e i s t ihn t e x t zu 8 S t r i n g t e x t = UserInput. r e a d S t r i n g ( ) ; Achtung: Wenn du einen double aus der Konsole auslesen willst, dann kann es sein, dass du das normale Komma statt dem englischen Punkt benutzen musst! Bemerkung: Die obigen Funktionen musst du jetzt noch nicht verstehen. Du kannst sie einfach in jede Klasse kopieren, in der du auch die Variable scanner auf die oben beschriebene Weise erstellt hast. Du musst sie dann nur noch aufrufen, wann immer du eine Eingabe vom Nutzer haben möchtest. Schreibe einen Echobot, der dir alles nochmal in der Konsole ausgibst, was du schreibst. Benutze dafür die readstring Methode. Vergiss nicht am Anfang des Programms einen Hinweis für den Benutzer auf der Konsole auszugeben, dass das Programm bereit ist. Schreibe ein Programm, dass den Flächeninhalt eines Rechtecks berechnet. Nutze dazu die readint Funktion um die Eingaben zur Laufzeit machen zu können. Ändere obiges Programm so, dass es readdouble verwendet. Aufgabe 11 Rekursion: Verzweigungen, Schleifen, Funktionsaufrufe Stell dir vor du startest mit den Zahlen 2 und 1. Die jeweils nächste Zahl ergibt sich aus dem Quotient der vorherigen Zahlen. Erstelle eine Funktion mit dem Namen quotientenreihe, die einen int Parameter bekommt, welcher angibt die wie vielte Zahl dieser Reihe berechnet werden soll. Der Rückgabewert dieser Funktion ist ein double, welcher den Wert des n-te Reihenglieds wiedergibt. Aufgabe 12 Ratespiel: Funktionsaufruf, Verzweigungen, Schleifen Erstelle eine neue Klasse Ratespiel mit einer main-methode. Diese soll sich eine Zufallszahl zwischen 0 und 100 ausdenken, die der Nutzer nun erraten muss. Der Nutzer gibt eine Zahl ein, das Programm reagiert entsprechend mit der Ausgabe Zahl zu groß, Zahl zu klein oder Glückwunsch!. Gibt das Programm Zahl zu groß oder Zahl zu klein fragt es den Nutzer nach einer neuen Zahl, bis dieser die Zahl erraten hat. Aufgabe 13 Maximum Schreibe eine neue Methode mit dem Namen maximum, diese Methode bekommt zwei int Parameter übergeben und soll die größere Zahl als zurückgeben. Schreibe eine neue Methode mit dem Namen maximumvier, die vier int Parameter übergeben bekommt und die größte zurückgeben soll. Schreibe eine neue Methode mit dem Namen maximumviera, die das selbe Problem wie in b löst, dafür allerdings die Methode aus Aufgabe a verwendet und selbst keine Zahlen vergleicht Aufgabe 14 Median, Durchschnitt, Arrays Erstelle für diese Aufgabe eine neue Klasse MedianAvgAr mit einer main-methode Schreibe eine Methode mit dem Namen average, die ein int Array als Parameter übergeben bekommt und den Durschschnitt der Werte in diesem Array zurückgibt. Schreibe eine Methode minausarray, die ein int Array übergeben bekommt und das kleinste Element daraus zurückgibt Schreibe eine Methode mit dem Namen median, die 3 Parameter übergeben bekommt und den Median (das mittlere Element) zurückgibt.

8 Java Vorkurs (WS 2015) Übungsblatt 2 Seite 8 von 9 Aufgabe 15 Schleifen, Verzweigungen und boolsche Operatoren Erstelle eine neue Klasse mit dem Namen Rechnungen und einer main-methode. (d) Erstelle eine Methode mit den Namen primfaktorzerlegung, die einen Parameter vom Typ int übergeben bekommmt und keinen Rückgabewert besitzt. Diese Methode soll eine Primfaktorzerlegung auf die als Parameter übergebene Zahl durchführen und die Primfaktoren auf der Konsole ausgeben. Erstelle eine weitere Methode mit dem Namen ggt, die zwei Parameter vom Typ int übergeben bekommt und einen Rückgabewert vom Typ int besitzt. Diese Methode soll den größten gemeinsamen Teiler der beiden Zahlen berechnen und zurückgeben. Erstelle eine weitere Methode mit denm Namen kgv, die zwei Parameter vom Typ int übergeben bekommt und einen Rückgabewert vom Typ int besitzt. Diese Methode soll das kleinste gemeinsame Vielfache der beiden Zahlen berechnen und zurückgeben. Erstelle eine weitere Methode mit dem namen isinrange, die drei Parameter vom Typ int übergeben bekommt und einen Rückgabewert vom Typ boolean besitzt. Die Methode soll prüfen ob der letzte Parameter zwischen den ersten beiden liegt und dementsprechend true oder false zurübergeben. Aufgabe 16 Würfel: Methoden Erstelle eine neue Klasse mit dem Namen Wuerfel und einer main-methode. Diese main-methode soll einen Würfel simulieren, der zwei mal geworfen wird und die Augenzahlen jeweils auf der Konsole ausgeben. Hinweis: Um eine Zufallszahl in Java zu generieren kann die Methode Math.random() benutzt werden, diese liefert einen Wert vom Typ double im Wertebereich [0, 1) zurück. Aufgabe 17 Logik: Boolsche Operatoren Was ist der Wert des Ausdrucks? 1! ( ( t r u e! ( 3 / < 5) ) && (1 < 2 && 2 > 3 t r u e ) ) Überprüfe deine Antwort in dem du ein Programm schreibst, dass die Lösung ausgibt. Aufgabe 18 Fibonacci: Array, Schleifen Schreibe ein Programm, dass die 50. Fibonacci Zahl iterativ berechnet und gebe diese aus Speichere alle vorherhigen Zahlen in einem Array Aufgabe 19 for-schleifen Schreiben Sie ein Java-Programm, dass die folgenden Summen oder Produkte berechnet (d) (e) n i=1 1 i n i=x i n i=0 ( x i j=1 j) n i=1 i i ungerade n i=1 ( 1) (i+1) i Aufgabe 20 Schachbrett Ein Schachbrett besteht aus einen 8x8 großen Spielfeld, das abwechselnd aus schwarzen und weißen Feldern besteht. Entwerfe einen Algorithmus, der Schachbrett auf der Konsole ausgibt. Fürs Spielfeld wird hierfür ein ganzzahliges, zweidimensionales Array definiert. Als Werte für weiß soll hierbei 1, für schwarz 0 verwendet werden. Aufgabe 21 Umformung von Schleifen Formen Sie die folgenden for-schleifen in äquivalente while-schleifen um. a f o r ( i n t i = X; i >= 0 ; i ) { 3 r e s u l t = r e s u l t i ; 4 } 5...

9 Java Vorkurs (WS 2015) Übungsblatt 2 Seite 9 von 9 a f o r ( i n t i = 0 ; i!< X; ++i ) { 3 z = ( i ) ; 4 System. out. p r i n t l n ( z ) ; 5 } 6... a f o r ( i n t i = 1 ; i <= X; ++i ) { 3 f o r ( i n t j = 1 ; j <= i ; ++i ) { 4 i f ( i % j == 0 ) { 5 System. out. p r i n t ( j + ) ; 6 } 7 } 8 System. out. p r i n t l n ( ) ; 9 } Aufgabe 22 Wörter drehen Schreibe ein Programm, das ein Wort umdreht. Das Wort soll hierbei ein char Array sein, bei dem die erste mit der letzten, die zweite mit der vorletzten, usw. Stelle getauscht werden soll. Versuche zusätlich es ohne zweites Array zu lösen.

Übungsblatt 2. Java Vorkurs (WS 2017)

Übungsblatt 2. Java Vorkurs (WS 2017) Übungsblatt 2 Java Vorkurs (WS 2017) Aufgabe 1 Logische Operatoren Manchmal ist es wichtig zwei Werte miteinander zu vergleichen. Dazu gibt es in Java folgende Vergleichsoperatoren: Text Math. Zeichen

Mehr

Übungsblatt 1. Java Vorkurs (WS 2017)

Übungsblatt 1. Java Vorkurs (WS 2017) Übungsblatt 1 Java Vorkurs (WS 2017) Aufgabe 1 Hallo-Welt Erstelle ein neues Projekt mit dem Namen HelloJava. Erzeuge in diesem Projekt eine neue Klasse HelloJava. (a) Schreibe die main-methode in die

Mehr

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie

Mehr

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen Programmieren I Martin Schultheiß Hochschule Darmstadt Wintersemester 2011/2012 1 / 25 Operatoren für elementare Datentypen Bedingte Schleifen 2 / 25 Zuweisungsoperator Die Zuweisung von Werten an Variablen

Mehr

Objektorientiertes Programmieren (Java)

Objektorientiertes Programmieren (Java) Grundlagen Objektorientiertes Programmieren (Java) Java folgt gewissen Rechtschreibregeln die Syntax. Diese besagt, dass hinter jeden Befehl ein Semikolon( ; ) stehen muss, damit der Computer weiß, dass

Mehr

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22 C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Zusammenfassung Was ist eine Programmiersprache? Eine Sprache, die Formal eindeutig in Maschinenbefehle übersetzbar ist Für Menschen einfacher verständlich ist als Bytecode Zur Formulierung von Datenstrukturen

Mehr

2 Teil 2: Nassi-Schneiderman

2 Teil 2: Nassi-Schneiderman 2 Teil 2: Nassi-Schneiderman Wie kann man Nassi-Schneiderman in einer objektorientierten Sprache verwenden? Jedes Objekt besitzt Methoden, welche die Attribute des Objektes verändern. Das Verhalten der

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,

Mehr

Tag 5. Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme)

Tag 5. Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Tag 5 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Methoden Deklaration

Mehr

Variablen Blöcke Abfragen Schleifen Listen Ende. Einführung in Python. Arne Hüffmeier

Variablen Blöcke Abfragen Schleifen Listen Ende. Einführung in Python. Arne Hüffmeier Einführung in Python Arne Hüffmeier 1 / 47 1 Variablen 2 Blöcke 3 Abfragen 4 Schleifen 5 Listen 6 Ende 2 / 47 Variablen Aus der Schule kennt ihr f (x) =... Das x ist eine Variable, die für eine beliebige

Mehr

Programmierung für Mathematik (HS13)

Programmierung für Mathematik (HS13) software evolution & architecture lab Programmierung für Mathematik (HS13) Übung 11 1 Aufgabe: Codeverständnis 1.1 Aufgabenstellung Notieren Sie, was der folgende Code ausgeben würde, wenn er so in einer

Mehr

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

Mehr

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Aufgabe 1.60 a) Welchen Wert erhält die boolesche Variable z in folgendem Beispiel? int i = 2, j = 5; boolean

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere

Mehr

Anweisungen zur Ablaufsteuerung

Anweisungen zur Ablaufsteuerung Anweisungen zur Ablaufsteuerung if-else switch while do-while for Ausdrücke Ein Ausdruck ist eine Folge von Variablen, Operatoren und Methodenaufrufen, der zu einem einzelnen Wert ausgewertet wird. Operanden

Mehr

Tag 2 Repetitorium Informatik (Java)

Tag 2 Repetitorium Informatik (Java) Tag 2 Repetitorium Informatik (Java) Dozent: Daniela Novac Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Zeichen und

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for

Mehr

4.2 Gleitkommazahlen. Der Speicherbedarf (in Bits) ist üblicherweise. In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen

4.2 Gleitkommazahlen. Der Speicherbedarf (in Bits) ist üblicherweise. In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen . Gleitkommazahlen In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen Umrechnen von Einheiten und Währungen Jede Zahl x Q mit x 0 lässt sich folgendermaßen schreiben: x = s m e mit

Mehr

Funktionen in JavaScript

Funktionen in JavaScript Funktionen in JavaScript Eine Funktion enthält gebündelten Code, der sich in dieser Form wiederverwenden lässt. Es können ganze Programmteile aufgenommen werden. Mithilfe von Funktionen kann man denselben

Mehr

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung

Wiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung Wiederholung Wozu? Schreiben Benutzen Rekursion?! Javakurs 2012, 3. Vorlesung maggyrz@freitagsrunde.org 5. März 2013 Wiederholung Wozu? Schreiben Benutzen Rekursion?! 1 Wiederholung 2 Wozu? 3 Schreiben

Mehr

JAVA-Datentypen und deren Wertebereich

JAVA-Datentypen und deren Wertebereich Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).

Mehr

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2 Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 2 SS 2016

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Wiederholung Anweisungen durch Methodenaufrufe Ausgabe

Mehr

Greenfoot: Verzweigungen

Greenfoot: Verzweigungen Greenfoot: Verzweigungen Nicolas Ruh und Dieter Koch Betrachten wir die act()-methode des Wombats aus dem Wombats-Szenario: Wie interpretieren Sie diesen Code? (einfach übersetzen) Falls der Wombat ein

Mehr

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18. Vorbereitende Aufgaben

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18. Vorbereitende Aufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2017/18 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand Übungsblatt 7 Besprechung: 4. 8.12.2017 (KW 49) Vorbereitende

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

Methoden und Wrapperklassen

Methoden und Wrapperklassen Methoden und Wrapperklassen CoMa-Übung IV TU Berlin 06.11.2012 CoMa-Übung IV (TU Berlin) Methoden und Wrapperklassen 06.11.2012 1 / 24 Themen der Übung 1 Methoden 2 Wrapper-Klassen CoMa-Übung IV (TU Berlin)

Mehr

Programmierkurs C++ Lösungen zum Übungsblatt 3. Nils Eissfeldt und Jürgen Gräfe. 2. November Aufgabe 5

Programmierkurs C++ Lösungen zum Übungsblatt 3. Nils Eissfeldt und Jürgen Gräfe. 2. November Aufgabe 5 Zentrum für Angewandte Informatik Köln Arbeitsgruppe Faigle / Schrader Universität zu Köln Lösungen zum Übungsblatt 3 Programmierkurs C++ Nils Eissfeldt und Jürgen Gräfe. November 001 Aufgabe 5 Innerhalb

Mehr

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 1 - Variablen und Kontrollstrukturen main Methode Startpunkt jeder Java Anwendung String[] args ist ein Array aus Parametern, die beim Aufruf über die Kommandozeile

Mehr

Programmieren I. Kapitel 5. Kontrollfluss

Programmieren I. Kapitel 5. Kontrollfluss Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

pue13 January 28, 2017

pue13 January 28, 2017 pue13 January 28, 2017 1 Aufgabe 1 (Klammern und Anweisungsblöcke) Wie Sie in der Vorlesung gelernt haben, werden Anweisungsblöcke in Java nicht durch Einrückung, sondern mithilfe von geschweiften Klammern

Mehr

Arrays. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 3. 1 Modulübersicht 3

Arrays. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 3. 1 Modulübersicht 3 Programmieren mit Java Modul 3 Arrays Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 2 Eindimensionale Arrays 3 2.1 Arrays deklarieren.............................. 3 2.2 Arrays erzeugen................................

Mehr

Einführung in das Programmieren Probeklausur Lösungen

Einführung in das Programmieren Probeklausur Lösungen Einführung in das Programmieren Probeklausur Lösungen Frederik Kanning 01.07.2013 Aufgabe 1 b/c) void definiert Methode ohne Rückgabewert return beendet aktuellen Methodenaufruf wenn Rückgabetyp nicht

Mehr

Greenfoot: Verzweigungen Nicolas Ruh und Dieter Koch

Greenfoot: Verzweigungen Nicolas Ruh und Dieter Koch Greenfoot: Verzweigungen Nicolas Ruh und Dieter Koch Betrachten wir die act()-methode des Wombats aus dem Wombats-Szenario: Wie interpretieren Sie diesen Code? (einfach übersetzen) Falls der Wombat ein

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8 Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Die for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben

Die for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben 18.11.5 1 HEUTE 18.11.5 3 Schleifen Arrays while, do reichen aus, um alle iterativen Algorithmen zu beschreiben Nachteil: Steuermechanismus ist verteilt Übersicht nicht immer leicht dazu gibt es for (

Mehr

Elementare Konzepte von

Elementare Konzepte von Elementare Konzepte von Programmiersprachen Teil 2: Anweisungen (Statements) Kapitel 6.3 bis 6.7 in Küchlin/Weber: Einführung in die Informatik Anweisungen (statements) in Java Berechnung (expression statement)

Mehr

1 Klassen anlegen und Objekte erzeugen

1 Klassen anlegen und Objekte erzeugen Werkzeugkiste Java 1 1 Klassen anlegen und Objekte erzeugen Klassengrundgerüst 1 /** 2 * Write a description of class Testklasse here. 3 * 4 * @author ( your name ) 5 * @version (a version number or a

Mehr

Informatik B von Adrian Neumann

Informatik B von Adrian Neumann Musterlösung zum 7. Aufgabenblatt vom Montag, den 25. Mai 2009 zur Vorlesung Informatik B von Adrian Neumann 1. Java I Schreiben Sie ein Java Programm, das alle positiven ganzen Zahlen 0 < a < b < 1000

Mehr

05 For-Schleifen. For-Schleifen 1/7 Was ist eine Schleife?

05 For-Schleifen. For-Schleifen 1/7 Was ist eine Schleife? 05 For-Schleifen For-Schleifen 1/7 Was ist eine Schleife? Programmieren kann harte Arbeit bedeuten. Und manchmal ist es noch zäher, das gleiche immer und immer wieder erledigen zu müssen. Nehmen wir an,

Mehr

3. Anweisungen und Kontrollstrukturen

3. Anweisungen und Kontrollstrukturen 3. Kontrollstrukturen Anweisungen und Blöcke 3. Anweisungen und Kontrollstrukturen Mit Kontrollstrukturen können wir den Ablauf eines Programmes beeinflussen, z.b. ob oder in welcher Reihenfolge Anweisungen

Mehr

Wie entwerfe ich ein Programm?

Wie entwerfe ich ein Programm? Wie entwerfe ich ein Programm? Welche Objekte brauche ich? Flussdiagramme für Programmablauf Vorcode Testcode Hauptcode Wir spielen Lotto! Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel 5 +

Mehr

Kapitel 3: Variablen

Kapitel 3: Variablen Kapitel 3: Variablen Thema: Programmieren Seite: 1 Kapitel 3: Variablen Im letzten Kapitel haben wir gelernt, bestimmte Ereignisse zu wiederholen solange eine Bedingung erfüllt ist. Nun möchten wir aber

Mehr

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue Java - Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Anweisung int zahl; zahl = 2; zahl = zahl * 10; int zahl; ; Jede Anweisung endet mit einem

Mehr

Programmiertechnik Kontrollstrukturen

Programmiertechnik Kontrollstrukturen Programmiertechnik Kontrollstrukturen Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Kontrollstrukturen? Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,

Mehr

Java programmieren mit JavaKara. Eine Zusammenfassung in Beispielen

Java programmieren mit JavaKara. Eine Zusammenfassung in Beispielen Java programmieren mit JavaKara Eine Zusammenfassung in Beispielen Kleeblätter in einer Zeile zählen @Override public void mymainprogram() { int anzahlkleeblaetter = 0; for (int x = 0; x < world.getsizex();

Mehr

Sprachkonstrukte Verzweigungen und Array-Strukturen

Sprachkonstrukte Verzweigungen und Array-Strukturen Sprachkonstrukte Verzweigungen und Array-Strukturen Dr. Beatrice Amrhein Überblick Verzweigungen o if/else o switch/case Array-Strukturen o Vektoren und Matrizen 2 Verzweigungen 3 Verzweigungen: if/else

Mehr

JAVA für Nichtinformatiker - Probeklausur -

JAVA für Nichtinformatiker - Probeklausur - JAVA für Nichtinformatiker - Probeklausur - Die folgenden Aufgaben sollten in 150 Minuten bearbeitet werden. Aufgabe 1: Erläutere kurz die Bedeutung der folgenden Java-Schlüsselwörter und gib Sie jeweils

Mehr

Einführung Java Programmieren in Java Arrays Schleifen Fehler. Einführung in Java. Arne Hüffmeier. Michelle Liebers, Dennis Hoffmann

Einführung Java Programmieren in Java Arrays Schleifen Fehler. Einführung in Java. Arne Hüffmeier. Michelle Liebers, Dennis Hoffmann Einführung in Java Arne Hüffmeier Michelle Liebers, Dennis Hoffmann Tilman Lüttje, Jean Wiele Angelehnt an Java-Vorkurs der Freitagsrunde 1 / 64 1 Einführung Java Geschichte 2 Programmieren in Java Einführung

Mehr

II. Grundlagen der Programmierung. Beispiel: Merge Sort. Beispiel: Merge Sort (Forts. ) Beispiel: Merge Sort (Forts. )

II. Grundlagen der Programmierung. Beispiel: Merge Sort. Beispiel: Merge Sort (Forts. ) Beispiel: Merge Sort (Forts. ) Technische Informatik für Ingenieure (TIfI) WS 2006/2007, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Rekursion Datenstrukturen Merge S ( split, s, merge ) Beispiel:

Mehr

Einführung in die Programmierung für NF MI. Übung 04

Einführung in die Programmierung für NF MI. Übung 04 Einführung in die Programmierung für NF MI Übung 04 Inhalt Arrays Einführung in Objekte Einführung in die Programmierung für NF Übung 04 2 Arrays Arrays repräsentieren Reihungen von Objekten, z.b. Variablen

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Tag 3 Repetitorium Informatik (Java)

Tag 3 Repetitorium Informatik (Java) Tag 3 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2016/2017 Willkommen zum Informatik-Repetitorium!

Mehr

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Kontrollstrukturen

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Kontrollstrukturen Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Kontrollstrukturen Was sind Kontrollstrukturen Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,

Mehr

Tag 4 Repetitorium Informatik (Java)

Tag 4 Repetitorium Informatik (Java) Tag 4 Repetitorium Informatik (Java) Dozent: Michael Baer Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Arrays (Reihungen)

Mehr

C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen

C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen Gehe nach links oder rechts Gehe solange geradeaus... Leibniz Universität IT Services Anja Aue Programmabläufe grafisch abbilden

Mehr

1 Klassen anlegen und Objekte erzeugen

1 Klassen anlegen und Objekte erzeugen Werkzeugkiste Java 1 1 Klassen anlegen und Objekte erzeugen Klassengrundgerüst 1 /** 2 * Write a description of class Testklasse here. 3 * 4 * @author ( your name ) 5 * @version (a version number or a

Mehr

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Programmieren I. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Programmieren I. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011 Programmieren I Martin Schultheiß Hochschule Darmstadt Wintersemester 2010/2011 1 Operatoren für elementare Datentypen 2 Bedingte Anweisungen 3 Schleifen Zuweisungsoperator Die Zuweisung von Werten an

Mehr

System.out.println("TEXT");

System.out.println(TEXT); Inhaltsübersicht - Erstes Beispiel - Datentypen - Ausdrücke und Operatoren - Schleifen / Bedinungen - Struktogramme - Grundgerüst eines Programms in JAVA - Einlesen von Daten Erstes Beispiel public class

Mehr

Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 5. Blatt Für den 26. und

Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 5. Blatt Für den 26. und Programmierstarthilfe SS 2008 Fakultät für Ingenieurwissenschaften und Informatik 5. Blatt Für den 26. und 27.5.2008 Organisatorisches Um auf die Mailingliste aufgenommen zu werden schicke einfach eine

Mehr

Schleifen Datenfelder (Arrays) Verzweigungen

Schleifen Datenfelder (Arrays) Verzweigungen Schleifen Datenfelder (Arrays) Verzweigungen Vektoren, Matrizen, Tabellen for, while, foreach, if-else und switch-case Dr. Beatrice Amrhein Überblick Schleifen o for, while, foreach Eindimensionale Arrays

Mehr

1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster

1 Aufgaben 1.1 Objektorientiert: (extended-hamster) Sammel-Hamster 1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster Aufgabe: Bearbeitungszeit: ca. 1/4 Std) Schreiben Sie ein "objektorientiertes" Programm ("CuB_05_1") für das Sammeln der Körner. Aufgabenbeschreibung:

Mehr

Java I Vorlesung Imperatives Programmieren

Java I Vorlesung Imperatives Programmieren Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.

Mehr

Institut für Informatik

Institut für Informatik Technische Universität München Institut für Informatik Lehrstuhl für Computer Graphik & Visualisierung WS 2010 Praktikum: Grundlagen der Programmierung Aufgabenblatt 4 Prof. R. Westermann, A. Lehmann,

Mehr

Klausur Grundlagen der Programmierung

Klausur Grundlagen der Programmierung Klausur Grundlagen der Programmierung Aufgabenstellung: Martin Schultheiß Erreichte Punktzahl: von 60 Note: Allgemeine Hinweise: Schreiben Sie bitte Ihren Namen auf jedes der Blätter Zugelassene Hilfsmittel

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Arrays und Schleifen

Arrays und Schleifen Arrays und Schleifen Javakurs 2014, 2. Vorlesung Sebastian Schuck basierend auf der Vorlage von Theresa Enghardt, Mario Bodemann und Sebastian Dyroff wiki.freitagsrunde.org 3. März 2014 This work is licensed

Mehr

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) 1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollstrukturen - 1 - Anweisung Anweisung Zuweisung Methodenaufruf

Mehr

einlesen n > 0? Ausgabe Negative Zahl

einlesen n > 0? Ausgabe Negative Zahl 1 Lösungen Kapitel 1 Aufgabe 1.1: Nassi-Shneiderman-Diagramm quadratzahlen Vervollständigen Sie das unten angegebene Nassi-Shneiderman-Diagramm für ein Programm, welches in einer (äußeren) Schleife Integer-Zahlen

Mehr

Umsetzung einer Klassenkarte in einer Programmiersprache

Umsetzung einer Klassenkarte in einer Programmiersprache Klassen in Java Umsetzung einer Klassenkarte in einer Programmiersprache Objektorientierte Programme bestehen (nur) aus Klassendefinitionen In Klassendefinitionen wird die Struktur der Objekte festgelegt,

Mehr

Algorithmen und ihre Programmierung -Teil 2-

Algorithmen und ihre Programmierung -Teil 2- Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung -Teil 2- Veronika Waue WS 07/08 Wiederholung: Algorithmen Variablen und Datentypen Variablen haben einen Namen, einen Datentypen und einen

Mehr

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015 Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

Algorithmen implementieren. Implementieren von Algorithmen

Algorithmen implementieren. Implementieren von Algorithmen Algorithmen implementieren Implementieren von Algorithmen Um Algorithmen ablaufen zu lassen, muss man sie als Programm darstellen (d.h. implementieren) Wie stellt man die algorithmischen Strukturelemente

Mehr

Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 2. Blatt Für die Woche vom 3.5. bis zum 7.5.

Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 2. Blatt Für die Woche vom 3.5. bis zum 7.5. Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 2. Blatt Für die Woche vom 3.5. bis zum 7.5.2010 (KW 18) Organisatorisches Im Web unter http://www.uni-ulm.de/in/programmierstarthilfe.html

Mehr

EINI LW/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15

EINI LW/WiMa. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15 EINI LW/ Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 14/15 Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-dortmund.de

Mehr

C-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi

C-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi 1. Datentypen C-Grundlagen zur Programmierung des MicroControllersystems MiCoWi Die Grafiken und Beispiele wurden dem Buch C von A bis z von Jürgen Wolf entnommen. Es werden hier die ANSI-Festlegungen

Mehr

float: Fließkommazahl nach IEEE 754 Standard mit 32 bit

float: Fließkommazahl nach IEEE 754 Standard mit 32 bit Primitive Datentypen Fließkommazahlen float: Fließkommazahl nach IEEE 754 Standard mit 32 bit Vorzeichen Exponent 8 bit Mantisse 23 bit double: Fließkommazahl nach IEEE 754 Standard mit 64 bit Vorzeichen

Mehr

Schleifen in C/C++/Java

Schleifen in C/C++/Java Schleifen in C/C++/Java Alle 3 Sprachen stellen mindestens die folgenden 3 Schleifenkonstruktionen zur Verfügung. In C gibt es auch keine weiteren, C++, Java und C# haben noch weitere nützliche Varianten.

Mehr

Tag 3 Repetitorium Informatik (Java)

Tag 3 Repetitorium Informatik (Java) Tag 3 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Typkonvertierung

Mehr

Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration

Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration CoMa-Übung III TU Berlin 30.10.2013 Primitive Datentypen, Eingaben, Kontrollstrukturen und Methodendeklaration 30.10.2013 1 /

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

Fragenkatalog ESOP WS 16/17

Fragenkatalog ESOP WS 16/17 Fragenkatalog ESOP WS 16/17 1. Einleitung 1.1 Was ist Programmieren? 1.2 Was ist ein Programm? 1.3 Welche Schritte werden bei der Programmerstellung benötigt? 1.4 Was ist ein Algorithmus? 1.5 Was sind

Mehr

1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH

1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH 1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH Die Umgebungsvariable CLASSPATH kann im Hamster-Simulator sowohl für Compiler als auch für die Ausführung des Hamster-Programms gesetzt werden: Hierdurch

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

Die Klasse java.lang.object. Thorsten Treffer

Die Klasse java.lang.object. Thorsten Treffer Die Klasse java.lang.object Thorsten Treffer 6. Dezember 2003 1 java.lang.object Die Klassenhierarchie von Java kann als Baum aufgezeichnet werden, dessen Wurzel die Klasse Object ist. Mit anderen Worten:

Mehr

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7.

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7. CoMa 04 Java II Paul Boeck Humboldt Universität zu Berlin Institut für Mathematik 7. Mai 2013 Paul Boeck CoMa 04 7. Mai 2013 1 / 13 Verzweigungen Wenn-Dann Beziehungen if (BEDINGUNG) { else if (BEDINGUNG2)

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 26 Einstieg in die Informatik mit Java Methoden Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Methoden 2 Methodendefinition 3 Parameterübergabe, Methodenaufruf

Mehr

PHP/HTML-Exkurs_Aufgabe

PHP/HTML-Exkurs_Aufgabe PHP/HTML-Exkurs_Aufgabe Basics, Formulare und Sonderfälle Basics PHP Schreibe die zwei PHP-Tags auf 1: Schreibe einen Einzeiler, der den Satz Hello World! ausgibt. 2: Ein öffnender und ein schließender

Mehr

Java Übung. Übung 3. Werner Gaulke. 2. Mai Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung.

Java Übung. Übung 3. Werner Gaulke. 2. Mai Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung. Java Übung Übung 3 Universität Duisburg-Essen Kommedia, Übung EinPro SS06, 2. Mai 2006 (UniDUE) 2. Mai 2006 1 / 17 Aufgabe 1 Umwandeln von do while in for Schleife. Listing 1: aufgabe3 1.java 1 public

Mehr

Intensivübung zu Algorithmen und Datenstrukturen

Intensivübung zu Algorithmen und Datenstrukturen Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche

Mehr

RO-Tutorien 3 / 6 / 12

RO-Tutorien 3 / 6 / 12 RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

JAVA - Methoden

JAVA - Methoden Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 Folie 1 sind eine Zusammenfassung von Deklarationen und Anweisungen haben einen Namen und können

Mehr

Arbeitsblatt zu Methoden

Arbeitsblatt zu Methoden Arbeitsblatt zu Methoden In den vorhergehenden Programmen haben wir bereits jede Menge Methoden benutzt: 1. kara.move(), kara.turnright(), kara.putleaf() Dies sind alles Methoden, die etwas ausführen,

Mehr

Test-Klausuraufgaben Softwaretechnik Fachbereich BW, für WINFO

Test-Klausuraufgaben Softwaretechnik Fachbereich BW, für WINFO Test-Klausuraufgaben Softwaretechnik Fachbereich BW, für WINFO Dipl.-Ing. Klaus Knopper 21.12.2006 Hinweis: Bitte schreiben Sie auf das Deckblatt und auf jede Seite Ihren Namen und Ihre Matrikelnummer,

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Welche Arten von Anweisungen gibt es? Anweisungen

Mehr