Tag 3 Repetitorium Informatik (Java)

Größe: px
Ab Seite anzeigen:

Download "Tag 3 Repetitorium Informatik (Java)"

Transkript

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

2 Übersicht Typkonvertierung Implizite Typkonvertierung Explizite Typkonvertierung Schleifen while-schleifen for-schleifen do-while-schleifen Sprünge in Schleifen: break/continue Endlosschleifen Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 2 / 35

3 Typkonvertierung

4 Typkonvertierung bekannt: in Java gibt es unterschiedliche Datentypen der Typ bestimmt die Repräsentation und Größe eines Datums im Speicher unterschiedliche Datentypen haben unterschiedliche Wertebereiche jetzt: Typkonvertierung (cast): Überführung eines Wertes eines Datentyps in den entsprechenden Wert eines anderen Datentyps von kleinerem zu größerem Typ: Typerweiterung von größerem zu kleinerem Typ: Typeinschränkung man unterscheidet zwei Arten der Typkonvertierung: implizite Typkonvertierung ( durch den Compiler ) explizite Typkonvertierung ( durch den Programmierer ) Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 4 / 35

5 Wiederholung: Zahlen-Datentypen Wertebereiche Wertebereiche der Datentypen sind unterschiedlich groß größere Datentypen enthalten Wertebereich von kleineren byte short int long float double Größe Beispiele Typkonvertierung von int nach long long hat größeren Wertebereich als int Typerweiterung Typkonvertierung von double nach int int hat kleineren Wertebereich als double Typeinschränkung Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 5 / 35

6 Implizite Typkonvertierung implizite Typkonvertierung: nicht direkt aus dem Quelltext des Programms ersichtlich automatisch durch den Compiler an den notwendigen Stellen eingefügt Voraussetzung: durch die Konvertierung entsteht kein Informationsverlust implizite Typkonvertierung nur im Falle einer Typerweiterung Beispiele int a = 13; double b = a; // implizite Typkonvertierung von int nach double double pi = f; // implizite Typkonvertierung von float nach // double ( f kennzeichnet float - Wert ) Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 6 / 35

7 Explizite Typkonvertierung Was ist, wenn der Ziel-Datentyp kleiner als der Quell-Datentyp ist? Typeinschränkung Informationsverlust! nur mittels expliziter Typkonvertierung durch den Programmierer So nicht... double a = 9.8; int b = a; // Informationsverlust ( possible loss of precision ) float pi = 3.141; // Informationsverlust ( possible loss of precision ) So schon double a = 9.8; int b = ( int ) a; // b = 9, Nachkommastellen abgeschnitten! float pi = ( float ) 3.141; // besser : f ( siehe oben ) Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 7 / 35

8 Achtung... (I) Möglicherweise unerwartetes Ergebnis int a = 13; double b = a / 2; // b = 6.0 Was ist denn hier passiert? der Compiler sieht bei der Division zwei ganzzahlige Operanden a als int deklariert ganzzahlig 2 ist int-wert ganzzahlig es wird eine Ganzzahl-Division durchgeführt Ergebnis ist der int-wert 6 erst danach sieht der Compiler, dass in eine double-variable geschrieben wird implizite Typkonvertierung von int nach double in diesem Moment sind die Nachkommastellen aber schon verloren Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 8 / 35

9 Achtung... (II) Wahrscheinlich erwünschtes Ergebnis int a = 13; double b = a / 2.0; // b = 6.5 // oder double b = (( double ) a) / 2; // b = 6.5 Warum funktioniert das jetzt? in beiden Fällen ist jetzt jeweils ein Operand vom Typ double es wird eine Fließkomma-Division durchgeführt Ergebnis ist der double-wert 6.5 Wert wird ohne weitere Konvertierung in die double-variable geschrieben Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 9 / 35

10 Schleifen

11 Schleifen: Motivation (I) Beobachtung Bisher wurden Anweisungen entweder einmal oder keinmal ausgeführt. Beispiel int a = 13; // einmal int b = 3; // einmal int absdiff ; // einmal if (a > b) { // einmal absdiff = a - b; // einmal else { absdiff = b - a; // keinmal Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 11 / 35

12 Schleifen: Motivation (II) Was tun, wenn Anweisungen mehrfach ausgeführt werden sollen? Beispiel: 10x Hallo Welt ausgeben Idee: Anweisungen einfach mehrfach hintereinder schreiben aufwändig und äußerst unschön klappt nicht, wenn man die Anzahl an Ausführungen vorher nicht kennt Lösung: Schleifen als weitere Kontrollstruktur wiederholte Ausführung von Anweisungen, solange Bedingung erfüllt ist Java kennt verschiedene Arten von Schleifen: while-schleife for-schleife do-while-schleife Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 12 / 35

13 while-schleife Syntax: while-schleife while ( Bedingung ) { // Schleifenkopf Anweisungen ; // Schleifenrumpf Hinweise der Schleifenrumpf besteht aus den zu wiederholenden Anweisungen die Bedingung ist ein beliebiger boolescher Ausdruck wird vor jedem Schleifendurchlauf ausgewertet falls true: Anweisungen im Schleifenrumpf werden ausgeführt falls false: Schleife wird beendet Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 13 / 35

14 Ablaufdiagramm der while-schleife Syntax: while-schleife AnweisungenDavor ; while ( Bedingung ) { RumpfAnweisungen ; AnweisungenDanach ; Ablaufdiagramm AnweisungenDavor Bedingung false true RumpfAnweisungen AnweisungenDanach Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 14 / 35

15 Beispiel: Ausgabe aller Quadratzahlen y (I) Aufgabe Gegeben sei eine positive, ganze Zahl y. Gesucht ist ein Algorithmus, der alle ganzzahligen Quadratzahlen y berechnet und ausgibt. Beispiel y = 42 1, 4, 9, 16, 25, 36 Überlegungen Berechnung der Quadratzahlen: eine Quadratzahl ist eine Zahl q = n n um die nächstgrößere Quadratzahl zu berechnen, wird n um eins inkrementiert Speicherung der Basis n, Berechnung der Quadratzahl q, Inkrementierung von n Bedingung für die zu schreibende Schleife: falls die nächste Quadratzahl größer als y ist: Berechnung abbrechen Rumpf ausführen, solange die nächste Quadratzahl y ist Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 15 / 35

16 Beispiel: Ausgabe aller Quadratzahlen y (II) Aufgabe Gegeben sei eine positive, ganze Zahl y. Gesucht ist ein Algorithmus, der alle ganzzahligen Quadratzahlen y berechnet und ausgibt. Mögliche Lösung int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Tipp Eigene Programme immer auch mit Grenzwerten testen, hier z.b. für y {48, 49, 50. Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 16 / 35

17 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

18 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

19 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

20 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

21 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis 1*1 <= 7 Bedingung erfüllt Schleife wird betreten while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

22 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

23 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

24 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

25 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe 1 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

26 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 1 q 1 Ausgabe 1 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

27 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 2 q 1 Ausgabe 1 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

28 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 2 q 1 Ausgabe 1 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

29 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis 2*2 <= 7 Bedingung erfüllt Schleife wird wiederholt while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 2 q 1 Ausgabe 1 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

30 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 2 q 1 Ausgabe 1 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

31 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 2 q 4 Ausgabe 1 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

32 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 2 q 4 Ausgabe 1 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

33 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 2 q 4 Ausgabe 1 4 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

34 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 2 q 4 Ausgabe 1 4 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

35 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 3 q 4 Ausgabe 1 4 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

36 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 3 q 4 Ausgabe 1 4 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

37 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis 3*3 <= 7 Bedingung nicht erfüllt Schleife wird verlassen while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 3 q 4 Ausgabe 1 4 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

38 Beispiel: Ausgabe aller Quadratzahlen y (III) Warum funktioniert das? int n = 1; // Basis while (n*n <= y) { int q = n* n; // Berechnung der aktuellen Quadratzahl System. out. println ( q); // Ausgabe der aktuellen Quadratzahl n = n + 1; // Inkrementierung der Basis n Variablenwerte y 7 (Beispiel!) n 3 q 4 Ausgabe 1 4 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 17 / 35

39 for-schleife Syntax: for-schleife for ( Initialisierung ; Bedingung ; Fortsetzung ) { // Schleifenkopf Anweisungen ; // Schleifenrumpf Hinweise Schleifenrumpf und Bedingung wie bei der while-schleife die Initialisierung wird einmalig vor Betreten der Schleife ausgeführt kann leer bleiben (Semikolon nicht vergessen!) die Fortsetzung wird nach jedem Schleifendurchlauf ausgeführt kann leer bleiben (Semikolon nicht vergessen!) Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 18 / 35

40 Ablaufdiagramm der for-schleife Syntax: for-schleife AnweisungenDavor ; for ( Init ; Bedingung ; Fortsetzung ) { RumpfAnweisungen ; AnweisungenDanach ; Ablaufdiagramm AnweisungenDavor Init Bedingung false true RumpfAnweisungen Fortsetzung AnweisungenDanach Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 19 / 35

41 Schleifenvariable, Laufvariable, Zählvariable die Bedingung hängt üblicherweise vom Wert einer ganzzahligen Variable ab Schleifenvariable oder Laufvariable oder Zählvariable eine solche Laufvariable wird üblicherweise in der Initialisierung deklariert und initialisiert... in der Fortsetzung inkrementiert oder dekrementiert Beispiel for ( int i = 1; i <= 3; ++ i) { System. out. println (i); Alternative (unschön!) int i = 1; // evtl. weitere Anweisungen... for ( ; i <= 3; ) { System. out. println (i); ++i; Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 20 / 35

42 Beispiel: Berechnung der n-ten Potenz (I) Aufgabe Gegeben seien zwei positive, ganze Zahlen x und n. Gesucht ist ein Algorithmus, der die n-te Potenz x n von x berechnet und ausgibt. Beispiel x = 3, n = 4 81 Überlegungen x n = x x x... x = 1 x x x... x in jeder Iteration eine Multiplikation mit x durchführen Variable, um das aktuelle Zwischenergebnis zu speichern Variable mit 1 initialisieren (neutrales Element der Multiplikation) wir brauchen n solcher Multiplikationen Laufvariable, die Anzahl an Iterationen mitzählt Bedingung, die die Schleife nach n Iterationen abbricht Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 21 / 35

43 Beispiel: Berechnung der n-ten Potenz (II) Aufgabe Gegeben seien zwei positive, ganze Zahlen x und n. Gesucht ist ein Algorithmus, der die n-te Potenz x n von x berechnet und ausgibt. Mögliche Lösung int potenz = 1; for ( int i = 1; i <= n; ++i) { potenz = potenz * x; System.out. println ( potenz ); Übliche Lösung int potenz = 1; for (int i = 0; i < n; ++i) { potenz = potenz * x; System. out. println ( potenz ); Laufvariablen beginnen üblicherweise bei 0 Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 22 / 35

44 Vergleich for-schleife while-schleife Beide Schleifen-Arten sind gleich mächtig und können ineinander umgewandelt werden. for-schleifen for-schleifen eignen sich insbesondere dann, wenn die Anzahl an Iterationen vor Betreten der Schleife bekannt bzw. berechenbar ist. while-schleifen while-schleifen eignen sich insbesondere dann, wenn die Anzahl an Iterationen vor Betreten der Schleife unbekannt bzw. nicht (einfach) berechenbar ist. Beispiel: for-schleife int potenz = 1; for ( int i = 0; i < n; ++i) { potenz = potenz * x; System.out. println ( potenz ); Beispiel: while-schleife int n = 1; while (n*n <= y) { int q = n*n; System. out. println (q); n = n + 1; Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 23 / 35

45 do-while-schleife: Motivation bisher (for, while): Überprüfung der Bedingung vor jedem Schleifendurchlauf auch vor dem ersten Schleifendurchlauf! Schleifenrumpf wird unter Umständen gar nicht ausgeführt sogenannte kopfgesteuerte oder abweisende Schleifen jetzt (do-while): Überprüfung der Bedingung nach jedem Schleifendurchlauf erstmalig nach dem ersten Schleifendurchlauf! Schleifenrumpf wird mindestens einmal ausgeführt sogenannte fußgesteuerte oder nicht-abweisende Schleife Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 24 / 35

46 do-while-schleife Syntax: do-while-schleife do { Anweisungen ; // Schleifenrumpf while ( Bedingung ); // " Schleifenfu ß" Hinweise Schleifenrumpf und Bedingung wie bei der while-schleife allerdings andere Auswertungsreihenfolge (siehe oben) Achtung! Semikolon hinter der Bedingung nicht vergessen! Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 25 / 35

47 Ablaufdiagramm der do-while-schleife Syntax: do-while-schleife AnweisungenDavor ; do { RumpfAnweisungen ; while ( Bedingung ); AnweisungenDanach ; Ablaufdiagramm AnweisungenDavor RumpfAnweisungen true Bedingung false AnweisungenDanach Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 26 / 35

48 Beispiel: Sechser würfeln (I) Aufgabe Gesucht ist ein Programm, das solange würfelt, bis eine 6 fällt. Hinweis Zufallszahl zwischen 1 und 6 erzeugen: 1 + (int)(math.random()*6) Überlegungen in jeder Iteration eine Zahl würfeln falls 6: Schleife abbrechen falls keine 6: Schleife erneut durchlaufen es muss mindestens einmal gewürfelt werden fußgesteuerte Schleife Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 27 / 35

49 Beispiel: Sechser würfeln (II) Aufgabe Gesucht ist ein Programm, das solange würfelt, bis eine 6 fällt. Mögliche Lösung int wuerfel ; do { wuerfel = 1 + (int )( Math. random ()*6); System. out. println ("es wurde eine " + wuerfel + " gew ü rfelt "); while ( wuerfel!= 6); Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 28 / 35

50 Komplexe Schleifenbedingungen für alle drei Schleifen-Arten gilt: Bedingung kann komplexer, zusammengesetzter boolescher Ausdruck sein Aufgabe Programm, das solange würfelt, bis eine 6 fällt, aber maximal 3 Mal. Mögliche Lösung int wuerfel ; int anzahl = 0; do { wuerfel = 1 + (int )( Math. random ()*6); System. out. println ("es wurde eine " + wuerfel + " gew ü rfelt "); anzahl = anzahl + 1; while (( wuerfel!= 6) && ( anzahl < 3)); Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 29 / 35

51 Sprünge in Schleifen: break/continue break-anweisung ganze Schleife abbrechen Beim Erreichen einer break-anweisung wird die Ausführung der gesamten Schleife frühzeitig abgebrochen. continue-anweisung aktuellen Durchlauf abbrechen Beim Erreichen einer continue-anweisung wird die Ausführung des aktuellen Schleifendurchlaufs frühzeitig abgebrochen und (falls Schleifenbedingung erfüllt) mit dem nächsten Durchlauf weitergemacht. Bei einer for-schleife wird die Fortsetzung ausgeführt. Schlechter Stil... Die Verwendung von break und continue gilt als schlechter Stil, wenn dadurch der reale Ablauf der Schleife schwer nachvollziehbar wird. Wenn möglich, sollte auf die Verwendung von break und continue verzichtet werden. Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 30 / 35

52 Beispiel zu break Aufgabe Zahlen von 1 bis 30 bis zur ersten durch 5 oder 7 teilbaren Zahl ausgeben. Mögliche Lösung (geht auch schöner ohne break!) for ( int i = 1; i <= 30; ++ i) { System. out. print (i + " "); if ((i % 5 == 0) (i % 7 == 0)) { break ; Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 31 / 35

53 Beispiel zu continue Aufgabe Zahlen von 1 bis 30 ausgeben, die nicht durch 5 oder 7 teilbar sind. Mögliche Lösung (geht auch schöner ohne continue!) for ( int i = 1; i <= 30; ++ i) { if ((i % 5 == 0) (i % 7 == 0)) { continue ; System. out. print (i + " "); Ausgabe Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 32 / 35

54 Endlosschleifen für alle Schleifen-Arten gilt: Ausführung des Schleifenrumpfes ist abhängig von einer Bedingung Wiederholung des Schleifenrumpfes solange die Bedingung erfüllt ist Abbruch der Schleife sobald die Bedingung nicht mehr erfüllt ist wenn die Bedingung immer erfüllt ist, also nie false wird: Schleifenrumpf wird unendlich oft ausgeführt Endlosschleife Unerwünschtes Verhalten Bei einer Endlosschleife terminiert das Programm nicht. In den allermeisten Fällen ist dieses Verhalten unerwünscht! Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 33 / 35

55 Beispiele für Endlosschleifen Offensichtliche Endlosschleife while ( true ) { System. out. println ("Hallo, Welt!"); Weniger offensichtliche Endlosschleife int i = 1; while (i <= 30) { if ((i % 5 == 0) (i % 7 == 0)) { continue ; System. out. print (i + " "); i = i + 1; Informatik-Repetitorium Tag 3 WS 2017/2018 Lehrstuhl für Informatik 2 (Programmiersysteme) 34 / 35

56 Fragen? Fragen! (hilft auch den anderen)

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2010/11 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund Wiederholungen - while - do-while - for

Mehr

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen

Mehr

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Rückblick Datentypen (int, long, double, boolean, String) Variablen und Variablendeklarationen

Mehr

Übersicht Programmablaufsteuerung

Übersicht Programmablaufsteuerung Übersicht Programmablaufsteuerung Konditionale Verzweigung: if - else switch-anweisung Schleifenkonstrukte: while, do - while for Schleife Sprung-Anweisungen: break, continue, goto, return Anweisungen

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {

Mehr

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik

Gliederung. Tutorium zur Vorlesung. Gliederung. Gliederung. 1. Gliederung der Informatik. 1. Gliederung der Informatik. 1. Gliederung der Informatik Informatik I WS 2012/13 Tutorium zur Vorlesung 1. Alexander Zietlow zietlow@informatik.uni-tuebingen.de Wilhelm-Schickard-Institut für Informatik Eberhard Karls Universität Tübingen 11.02.2013 1. 2. 1.

Mehr

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging.

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Algorithmische Kernsprache Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Ausdrücke Anweisungen Ausdrücke bezeichnen einen Wert Kontext stellt Werte von Variablen Werte

Mehr

Einfache Rechenstrukturen und Kontrollfluss II

Einfache Rechenstrukturen und Kontrollfluss II Einfache Rechenstrukturen und Kontrollfluss II Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer http://www.pst.informatik.uni-muenchen.de/lehre/ss06/infoii/ SS 06 Ziele Lernen imperative

Mehr

Gliederung Programmiersprachen. Programmiersprachen Einführung in C. Kontrollstrukturen. Verzweigung mit IF. Beispiel: Zahlenklassifizieren

Gliederung Programmiersprachen. Programmiersprachen Einführung in C. Kontrollstrukturen. Verzweigung mit IF. Beispiel: Zahlenklassifizieren Programmiersprachen Einführung in C Teil 5: Prof. Dr. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit Gliederung Programmiersprachen 1. Von der Maschinensprache zu C 2. Die Struktur von C-Programmen

Mehr

Primitive Datentypen

Primitive Datentypen Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.

Mehr

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean 01.11.05 1 Noch für heute: 01.11.05 3 primitie Datentypen in JAVA Primitie Datentypen Pseudocode Name Speichergröße Wertgrenzen boolean 1 Byte false true char 2 Byte 0 65535 byte 1 Byte 128 127 short 2

Mehr

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff Programmieren in C C Syntax Datentypen, Operatoren und Kontrollstrukturen Prof. Dr. Nikolaus Wulff Elementare Typen Imperative und objektorientierte Programmiersprachen bieten i.d.r. einen Satz elementarer

Mehr

MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG. LV-Nr. 439.026 SS2007 1 INSTITUT FÜR ELEKTRONIK BIT

MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG. LV-Nr. 439.026 SS2007 1 INSTITUT FÜR ELEKTRONIK BIT MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG BIT LV-Nr. 439.026 SS2007 1 Datendefinitionen b) Unterteilung nach Typen: (Teil 2) void leer Pointer 2/4 Bytes Adresse von Objekten Arrays bei allen Datentypen

Mehr

Programmiervorkurs WS 2012/2013. Schleifen und Methoden

Programmiervorkurs WS 2012/2013. Schleifen und Methoden Programmiervorkurs WS 2012/2013 Schleifen und Methoden Ein Befehl soll mehrfach ausgeführt werden, z.b.: public class MyCounter { System.out.println(1); Ein Befehl soll mehrfach ausgeführt werden, z.b.:

Mehr

Prinzipielle Ausführungsvarianten I

Prinzipielle Ausführungsvarianten I Software Entwicklung 1 Annette Bieniusa / Arnd Poetzsch-Heffter Unser erstes Java Programm AG Softech FB Informatik TU Kaiserslautern Bieniusa/Poetzsch-Heffter Software Entwicklung 1 2/ 39 Hello World!

Mehr

Java-Vorkurs 2015. Wintersemester 15/16

Java-Vorkurs 2015. Wintersemester 15/16 Java-Vorkurs 2015 Wintersemester 15/16 Herzlich Willkommen! package de.unistuttgart.47.01.javavorkurs; public class WelcomeErstis { public static void main(string[] args){ System.out.println( Herzlich

Mehr

620.900 Propädeutikum zur Programmierung

620.900 Propädeutikum zur Programmierung 620.900 Propädeutikum zur Programmierung Andreas Bollin Institute für Informatik Systeme Universität Klagenfurt Andreas.Bollin@uni-klu.ac.at Tel: 0463 / 2700-3516 Lösung der Aufgaben (1/2) Lösung Aufgabe

Mehr

Python Programmieren. Variablen, Ausdrücke und Anweisungen

Python Programmieren. Variablen, Ausdrücke und Anweisungen Python Programmieren Funktionen Module und Namensräume Datentypen in Python Was noch zu sagen bleibt... richard rascher-friesenhausen Programmierung SS 12 Daten: Wert und Typ Variablen Variablennamen und

Mehr

Steueranweisungen. Eike Schallehn Grundlagen der Informatik für Ingenieure Wintersemester 08/09 2 32

Steueranweisungen. Eike Schallehn Grundlagen der Informatik für Ingenieure Wintersemester 08/09 2 32 Steueranweisungen Bisher Programme mit Funktionen als einfache Folge von Befehlen Ablauf von Programmen darüber hinaus steuerbar über Bedingte Ausführung: Ausführung von Programmteilen (Befehlen oder Programmblöcken)

Mehr

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik- Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik

Mehr

Softwareentwicklung 1. Übungsaufgabe 4 Kontrollstrukturen

Softwareentwicklung 1. Übungsaufgabe 4 Kontrollstrukturen Softwareentwicklung Übungsaufgabe 4 Kontrollstrukturen Wintersemester 2006/2007 Prof. Dr. rer.nat. Richard Alznauer Dipl.-Ing. (FH) Joachim Hampel Dipl.-Ing. (FH) Marc Jüttner Version.0.., 2. Dezember

Mehr

Entwurf von Algorithmen - Kontrollstrukturen

Entwurf von Algorithmen - Kontrollstrukturen Entwurf von Algorithmen - Kontrollstrukturen Eine wichtige Phase in der Entwicklung von Computerprogrammen ist der Entwurf von Algorithmen. Dieser Arbeitsschritt vor dem Schreiben des Programmes in einer

Mehr

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH

Autor: Michael Spahn Version: 1.0 1/10 Vertraulichkeit: öffentlich Status: Final Metaways Infosystems GmbH Java Einleitung - Handout Kurzbeschreibung: Eine kleine Einführung in die Programmierung mit Java. Dokument: Autor: Michael Spahn Version 1.0 Status: Final Datum: 23.10.2012 Vertraulichkeit: öffentlich

Mehr

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54 PHP 5.4 Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012 Grundlagen zur Erstellung dynamischer Webseiten ISBN 978-3-86249-327-2 GPHP54 5 PHP 5.4 - Grundlagen zur Erstellung dynamischer Webseiten

Mehr

Übersicht. Schleifen. Schleifeninvarianten. Referenztypen, Wrapperklassen und API. 9. November 2009 CoMa I WS 08/09 1/15

Übersicht. Schleifen. Schleifeninvarianten. Referenztypen, Wrapperklassen und API. 9. November 2009 CoMa I WS 08/09 1/15 Übersicht Schleifen Schleifeninvarianten Referenztypen, Wrapperklassen und API CoMa I WS 08/09 1/15 CoMa I Programmierziele Linux bedienen Code umschreiben strukturierte Datentypen Anweisungen und Kontrollstrukturen

Mehr

5. Tutorium zu Programmieren

5. Tutorium zu Programmieren 5. Tutorium zu Programmieren Dennis Ewert Gruppe 6 Universität Karlsruhe Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl Programmierparadigmen WS 2008/2009 c 2008 by IPD Snelting

Mehr

Java-Programmierung mit NetBeans

Java-Programmierung mit NetBeans Java-Programmierung mit NetBeans Steuerstrukturen Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg - WS 2012/13 Steuerstrukturen Steuerstrukturen Verzweigungen Alternativen abweisende nichtabweisende

Mehr

Algorithmen am Beispiel Java I www.java.com/de

Algorithmen am Beispiel Java I www.java.com/de Algorithmen am Beispiel Java I www.java.com/de Entwicklungsumgebung: JDK 6.1.0 empfohlener Editor : http://notepad-plus.sourceforge.net/de/site.htm Download Java SE Runtime Environment (deutsch): http://www.soft-ware.net/add.asp?url=http%3a%2f%2fjava-runtime-environment.software.net%2fdownload2.asp%3fcode%3djbibb%26pro%3dp02231

Mehr

Steuern des GSR-Interface mit QBasic

Steuern des GSR-Interface mit QBasic Steuern des GSR-Interface mit QBasic Erstellt von Jochen Sendler, Geschwister-Scholl-Realschule Mannheim Inhaltsverzeichnis 1. Die Programmiersprache QBasic 3 2. Starten von QBasic 3 3. Ansteuern einzelner

Mehr

Logische Verknüpfungen. while-schleifen. Zahlendarstellung auf dem Computer. Formatierung von Zahlen in MATLAB.

Logische Verknüpfungen. while-schleifen. Zahlendarstellung auf dem Computer. Formatierung von Zahlen in MATLAB. Logische Verknüpfungen. while-schleifen. Zahlarstellung auf dem Computer. Formatierung von Zahlen in MATLAB. Logische Verknüpfungen In der letzten Sitzung haben wir kennengelernt, wie wir Zahlen mit Operationen

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 5 Referenzdatentypen - Felder... 5-2 5.1 Eindimensionale Felder - Vektoren... 5-3 5.1.1 Vereinbarung... 5-3 5.1.2 Referenzen sind keine Felder... 5-4 5.1.3 Kopieren eindimensionaler Felder... 5-6

Mehr

Computergrundlagen Programmieren in C

Computergrundlagen Programmieren in C Computergrundlagen Programmieren in C Axel Arnold Institut für Computerphysik Universität Stuttgart Wintersemester 2013/14 Die Sprache C D. M. Ritchie, 1941 2011 Entwickelt 1971-1973 aktueller Standard:

Mehr

4. Datentypen. Einleitung Eingebaute Datentypen. Konversion / Type-Cast. Operatoren. Übersicht Die Datentypen char, float und double Standardwerte

4. Datentypen. Einleitung Eingebaute Datentypen. Konversion / Type-Cast. Operatoren. Übersicht Die Datentypen char, float und double Standardwerte 4. Datentypen Einleitung Eingebaute Datentypen Übersicht Die Datentypen char, float und double Standardwerte Konversion / Type-Cast Datentyp von Literalen Operatoren Ausdrücke Allgemeine Informatik 2 SS09

Mehr

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

Kontrollstrukturen, Pseudocode und Modulo-Rechnung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 29.10.2012 CoMa-Übung III (TU Berlin) Kontrollstrukturen, Pseudocode und Modulo-Rechnung 29.10.2012 1 / 1 Themen der Übung 1

Mehr

[E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z.

[E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z. Literatur [E-1] Wolf, Jürgen: C von A bis Z. Galileo Computing, 3. Auflage, 2009 http://download2.galileo-press.de/openbook/galileocomputing_c_von_a_bis_z.zip [E-2] M.K. Johnson, E.W. Troan: Anwendungen

Mehr

Die Programmiersprache C

Die Programmiersprache C Die Programmiersprache C höhere Programmiersprache (mit einigen Assembler-ähnlichen Konstrukten) gut verständliche Kommandos muss von Compiler in maschinenlesbaren Code (Binärdatei) übersetzt werden universell,

Mehr

Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Einfache Arrays. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"

Mehr

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7 Java 7 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Dezember 2011 JAV7 5 Java 7 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

HOCHSCHULE KONSTANZ TECHNIK, WIRTSCHAFT UND GESTALTUNG. Das Luzifer-Rätsel. Prof. Dr. Hartmut Plesske Wintersemester 2008/09. von.

HOCHSCHULE KONSTANZ TECHNIK, WIRTSCHAFT UND GESTALTUNG. Das Luzifer-Rätsel. Prof. Dr. Hartmut Plesske Wintersemester 2008/09. von. HOCHSCHULE KONSTANZ TECHNIK, WIRTSCHAFT UND GESTALTUNG Fakultät Informatik Das Luzifer-Rätsel Prof. Dr. Hartmut Plesske Wintersemester 2008/09 von Max Nagl nagl@fh-konstanz.de Inhaltsverzeichnis Inhaltsverzeichnis

Mehr

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

Mehr

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3. Hello World Javakurs 2014, 1. Vorlesung Sebastian Schuck basierend auf der Vorlage von Arne Kappen wiki.freitagsrunde.org 3. März 2014 This work is licensed under the Creative Commons Attribution-ShareAlike

Mehr

HEUTE. Effizienzbeispiel: bekannte Version (Übung 04.11.04) Mathematik: Was ist Effizienz? vollständige Induktion

HEUTE. Effizienzbeispiel: bekannte Version (Übung 04.11.04) Mathematik: Was ist Effizienz? vollständige Induktion 17.11.04 1 HEUTE 17.11.04 3 Effizienzbeispiel: bekannte Version (Übung 04.11.04) Mathematik: was ist Effizienz? vollständige Induktion JAVA: Arrays die for -Schleife die Sprunganweisungen break und continue

Mehr

C-Vorrangregeln. Version 1.3 6.7.2009. email: tb@ostc.de Web: www.ostc.de

C-Vorrangregeln. Version 1.3 6.7.2009. email: tb@ostc.de Web: www.ostc.de C-Vorrangregeln Version 1.3 6.7.2009 email: tb@ostc.de Web: www.ostc.de Die Informationen in diesem Skript wurden mit größter Sorgfalt erarbeitet. Dennoch können Fehler nicht vollständig ausgeschlossen

Mehr

Numerische Datentypen. Simon Weidmann

Numerische Datentypen. Simon Weidmann Numerische Datentypen Simon Weidmann 08.05.2014 1 Ganzzahlige Typen 1.1 Generelles Bei Datentypen muss man immer zwei elementare Eigenschaften unterscheiden: Zuerst gibt es den Wertebereich, zweitens die

Mehr

Schleifenprogrammierung in C/C++, Fortran und Pascal

Schleifenprogrammierung in C/C++, Fortran und Pascal Schleifenprogrammierung in C/C++, Fortran und Pascal Stefan Ackermann Mathematisches Institut der Universität Leipzig 8. April 2009 1 Die kopfgesteuerte Schleife Bei der kopfgesteuerten Schleife steht

Mehr

Einführung in die Programmierung mehr Ein- und Ausgabe, Programmfluss, Funktionen. Arvid Terzibaschian

Einführung in die Programmierung mehr Ein- und Ausgabe, Programmfluss, Funktionen. Arvid Terzibaschian Einführung in die Programmierung Arvid Terzibaschian 1 Klausurtermine Abstimmung beendet: Einführung in die Programmierung Freitag, 28.2.2014, wahrscheinlich 11:00 Basiskonzepte des Rechnerbetriebs Freitag,

Mehr

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann 1 Einführung in die Informatik für Hörer aller Fakultäten II Andreas Podelski Stephan Diehl Uwe Waldmann

Mehr

IT-Basics 2. DI Gerhard Fließ

IT-Basics 2. DI Gerhard Fließ IT-Basics 2 DI Gerhard Fließ Wer bin ich? DI Gerhard Fließ Telematik Studium an der TU Graz Softwareentwickler XiTrust www.xitrust.com www.tugraz.at Worum geht es? Objektorientierte Programmierung Konzepte

Mehr

Übungen zur Vorlesung Einführung in die Informatik Wintersemester 2010/11

Übungen zur Vorlesung Einführung in die Informatik Wintersemester 2010/11 Übungen zur Vorlesung Einführung in die Informatik Wintersemester 2010/11 Fakultät für Informatik Lehrstuhl 1 Dr. Lars Hildebrand Carla Delgado-Battenfeld Fatih Gedikli Tobias Marschall Benjamin Schowe

Mehr

Ab J2SE 5.0 Unterstützung formatierter Bildschirmausgaben. Mit den Operatoren und Klammern können Boolesche Ausdrücke gebildet werden Beispiel:

Ab J2SE 5.0 Unterstützung formatierter Bildschirmausgaben. Mit den Operatoren und Klammern können Boolesche Ausdrücke gebildet werden Beispiel: Die Funktionen print() und println() Die Funktion System.out.printf() Format eines Funktionsaufrufs funktionsname(); Innerhalb der Klammern können Argumente angegeben werden Die Funktion kann ein Ergebnis

Mehr

C/C++ Programmierung

C/C++ Programmierung 1 C/C++ Programmierung Grundlagen: Anweisungen Sebastian Hack Christoph Mallon (hack mallon)@cs.uni-sb.de Fachbereich Informatik Universität des Saarlandes Wintersemester 2009/2010 2 Anweisungen (Statements)

Mehr

Einführung in die C-Programmierung

Einführung in die C-Programmierung Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).

Mehr

Prinzipieller Grundaufbau eines einfachen C-Programmes

Prinzipieller Grundaufbau eines einfachen C-Programmes Prinzipieller Grundaufbau eines einfachen C-Programmes C unterscheidet zwischen Groß- und Kleinschreibung! Siehe zu den folgenden Erklärungen auch das Programm am Ende der nächsten Seite. Am Anfang aller

Mehr

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper Python Programmierung Kontaktdaten Homepage: http://wwwlehre.dhbw-stuttgart.de/~schepper/ Email: Volker. Schepper [A@T] yahoo.de Vorlesung Skriptsprachen Vorlesung: 06.03.2013 13.03.2013 20.03.2013 27.03.2013

Mehr

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

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt

Mehr

Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe

Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Operatoren? Ein Operator ist eine in die Programmiersprache eingebaute Funktion,

Mehr

Informatik für Schüler, Foliensatz 12 Pseudo-Zufallszahlen

Informatik für Schüler, Foliensatz 12 Pseudo-Zufallszahlen rof. G. Kemnitz Institut für Informatik, Technische Universität Clausthal 14. April 2010 1/14 Informatik für Schüler, Foliensatz 12 Pseudo-Zufallszahlen Prof. G. Kemnitz Institut für Informatik, Technische

Mehr

P r o g r a m m a b l a u f s t e u e r u n g

P r o g r a m m a b l a u f s t e u e r u n g Jede Programmiersprache braucht Konstrukte zur Steuerung des Programmablaufs. Grundsätzlich unterscheiden wir Verzweigungen und Schleifen. Schleifen dienen dazu, bestimmte Anweisungen wiederholt auszuführen,

Mehr

L6. Operatoren und Ausdrücke

L6. Operatoren und Ausdrücke L6. Operatoren und Ausdrücke 1. Arithmetische Operatoren: +, -, *, /, %, --, ++ 2. Zuweisung-Operatoren: =, +=, -=, *=, /= 3. Vergleichsoperatoren: =, ==,!= 4. Logische Operatoren:!, &&, 5.

Mehr

Programmieren in C. Felder, Schleifen und Fließkommaarithmetik. Prof. Dr. Nikolaus Wulff

Programmieren in C. Felder, Schleifen und Fließkommaarithmetik. Prof. Dr. Nikolaus Wulff Programmieren in C Felder, Schleifen und Fließkommaarithmetik Prof. Dr. Nikolaus Wulff Addition von Zahlen 1 2 3 4 5 #include int main() { int x,y,z,sum; x = 1; y = 2; z = 4; sum = x + y + z;

Mehr

Fallunterscheidung: if-statement

Fallunterscheidung: if-statement Fallunterscheidung: if-statement A E 1 E 2 V 1 V 2 Syntax: if ( ausdruck ) Semantik: else anweisungsfolge_1 anweisungsfolge_2 1. Der ausdruck wird bewertet 2. Ergibt die Bewertung einen Wert ungleich 0

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

Multimedia im Netz Wintersemester 2011/12

Multimedia im Netz Wintersemester 2011/12 Multimedia im Netz Wintersemester 2011/12 Übung 01 Betreuer: Verantwortlicher Professor: Sebastian Löhmann Prof. Dr. Heinrich Hussmann Organisatorisches 26.10.2011 MMN Übung 01 2 Inhalte der Übungen Vertiefung

Mehr

2 Einfache Rechnungen

2 Einfache Rechnungen 2 Einfache Rechnungen 2.1 Zahlen Computer, auch bekannt als Rechner, sind sinnvoller eingesetzt, wenn sie nicht nur feste Texte ausgeben, sondern eben auch rechnen. Um das Rechnen mit Zahlen zu verstehen,

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

Programmiersprachen Einführung in C. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm

Programmiersprachen Einführung in C. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm. Unser erstes C-Programm Programmiersprachen Einführung in C Teil 2: Prof. Dr. int main (int argc, char *argv[]) int sum = 0; for (i = 0; i

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler Inhaltsverzeichnis Grundbegriffe der C-Programmierung 1. Grundsätzliches... 2 1.1 Darstellung von Werten... 2 1.1.1 Dezimale Zahlendarstellung... 2 1.1.2 Binäre Zahlendarstellung... 3 1.1.3 Hexadezimale

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

Einführung in die C++ Programmierung für Ingenieure

Einführung in die C++ Programmierung für Ingenieure Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF

Mehr

5.4 Klassen und Objekte

5.4 Klassen und Objekte 5.4 Klassen und Objekte Zusammenfassung: Projekt Figuren und Zeichner Figuren stellt Basisklassen für geometrische Figuren zur Verfügung Zeichner bietet eine übergeordnete Klasse Zeichner, welche die Dienstleistungen

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

Teil IV. Grundlagen der Programmierung

Teil IV. Grundlagen der Programmierung Teil IV Grundlagen der Programmierung Überblick 1 Einleitung zu C und C++ Aufbau von Programmen/Dateien Steueranweisungen Funktionen Mehr zu Datentypen: Felder, Zeiger und Strukturen Arbeit mit Dateien

Mehr

1. Der Einstieg in Java. Was heißt Programmieren?

1. Der Einstieg in Java. Was heißt Programmieren? 1. Der Einstieg in Java Lernziele: Am Ende dieses Kapitels sollen Sie wissen, aus welchen Bestandteilen ein Java-Programm besteht, Java-Programme übersetzen und ausführen können, Möglichkeiten der Kommentierung

Mehr

Android will doch nur spielen. Java Eine kurze Einführung

Android will doch nur spielen. Java Eine kurze Einführung Android will doch nur spielen Java Eine kurze Einführung Agenda Einführung in Java Syntax und Semantik Komplexe Datenstrukturen OOP Weitere Java-Elemente 2 Einführung in Java Was ist Java? lt. Sun: einfach

Mehr

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.

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

Mehr

Grundlagen von C. Ausarbeitung von Jonas Gresens

Grundlagen von C. Ausarbeitung von Jonas Gresens Grundlagen von C Ausarbeitung von Jonas Gresens 1 Allgemein Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und

Mehr

Programmieren mit Python

Programmieren mit Python Pete Moor Klasse 14r Programmieren mit Python In diesem Kurs lernen Sie:... nicht in erster Linie zu programmieren, denn dazu braucht es sehr viel know-how und jahrelange Routine. Sie erfahren jedoch,

Mehr

Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer)

Programmieren I. Prinzipieller Ablauf. Eigenschaften von JAVA. Source-Code Javac Bytecode. Java Virtual Machine (Java, Browser, Appletviewer) Programmieren I Grundlagen von JAVA Dr. Klaus Höppner Hello World in JAVA Hochschule Darmstadt WS 2007/2008 Elementare Datentypen 1 / 17 2 / 17 Eigenschaften von JAVA Prinzipieller Ablauf Plattform-und

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Konstruktor, Statische Methoden Packages Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Initialisierung von Datenstrukturen

Mehr

5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren:

5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: 5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen 5. Abstrakte Klassen Beispiel Beispiel (3) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Probleme des Implementierungsvorschlags:

Mehr

Sprachbeschreibung und Erweiterung

Sprachbeschreibung und Erweiterung Sprachbeschreibung und Erweiterung Worte, Sprachen, reguläre Ausdrücke, Automaten, BNF, Grammatik, Syntax- Diagramme, Spracherweiterungen do, for, break, switch Formale Beschreibung von Programmiersprachen

Mehr

Nassi-Shneiderman-Diagramm - Wikipedia

Nassi-Shneiderman-Diagramm - Wikipedia Nassi-Shneiderman-Diagramm aus Wikipedia, der freien Enzyklopädie Ein Nassi-Shneiderman-Diagramm ist eine Entwurfsmethode für die strukturierte Programmierung, die 1972/73 von Dr. Isaac Nassi und Dr. Ben

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Der hat die früher handschriftlichen Folien lesbar gemacht. Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Heutige Themen Hello World!

Mehr

Einheit Variablen in der Programmiersprache C Variablen-Modell, Variablen-Vereinbarungen

Einheit Variablen in der Programmiersprache C Variablen-Modell, Variablen-Vereinbarungen Einheit Variablen in der Programmiersprache C Variablen-Modell, Variablen-Vereinbarungen Kurs C/C++ Programmierung, WS 2008/2009 Dipl.Inform. R. Spurk Arbeitsgruppe Programmierung FR 6.2 Informatik R.

Mehr

Reihungen. Martin Wirsing. in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03

Reihungen. Martin Wirsing. in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03 Reihungen Martin Wirsing in Zusammenarbeit mit Matthias Hölzl und Nora Koch 11/03 2 Ziele Die Datenstruktur der Reihungen verstehen: mathematisch und im Speicher Grundlegende Algorithmen auf Reihungen

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

DAP2-Programmierpraktikum Einführung in C++ (Teil 1)

DAP2-Programmierpraktikum Einführung in C++ (Teil 1) DAP2-Programmierpraktikum Einführung in C++ (Teil 1) Carsten Gutwenger 11. April 2008 Lehrstuhl 11 Algorithm Engineering Fakultät für Informatik, TU Dortmund Überblick Mein erstes C++-Programm Namensräume

Mehr

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013

Programmiervorkurs. Organisation: Steffen Gebert, Alexander Wolff. Tutoren: Jürgen Zöller, Jonathan Stoll. Wintersemester 2012/2013 Programmiervorkurs Wintersemester 2012/2013 Organisation: Steffen Gebert, Alexander Wolff Tutoren: Jürgen Zöller, Jonathan Stoll Kontakt (für Organisatorisches, Fehler auf Folien...): Steffen Gebert steffen.gebert@informatik.uni-wuerzburg.de

Mehr

Repetitorium Informatik (Java)

Repetitorium Informatik (Java) Repetitorium Informatik (Java) Tag 8 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Vererbung Vererbung Statischer Typ Dynamischer Typ 2 Polymorphie Overloading: Methoden überladen Overriding:

Mehr

Computeranwendung und Programmierung (CuP)

Computeranwendung und Programmierung (CuP) Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag

Mehr

Grundlagen. Die Komponenten eines C Programms. Das erste Programm

Grundlagen. Die Komponenten eines C Programms. Das erste Programm Grundlagen 1. Die Komponenten eines C Programms 2. Ein Programm erzeugen und übersetzen 3. Variablen Deklarieren und Werte zuweisen 4. Zahlen eingeben mit der Tastatur 5. Arithmetische Ausdrücke und Berechnungen

Mehr

5. Abstrakte Klassen

5. Abstrakte Klassen 5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Vogel Amsel Drossel Fink Peter Becker, Programiersprache Java FH Bonn-Rhein-Sieg,

Mehr

Kontrollstrukturen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Kontrollstrukturen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-14-15/infoeinf WS14/15 Action required now 1. Smartphone: installiere die App "socrative student"

Mehr

Übung 9 - Lösungsvorschlag

Übung 9 - Lösungsvorschlag Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle Besprechung: 15.12.2008 Einführung in die Informatik Übung 9 - Lösungsvorschlag Aufgabe

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens SS2013 Inhalt Projekt Vorlesung: praktische Implementierung üben Ein und

Mehr

Kurzeinführung in C++

Kurzeinführung in C++ Kurzeinführung in C++ Johannes J. Schneider 27.10.2004 1 Einleitung C++ ist eine heutzutage in vielen Bereichen sehr häufig verwendete Programmiersprache, die auf der Programmiersprache C aufsetzt, aber

Mehr

Informatik Repetitorium SS 2009. Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692

Informatik Repetitorium SS 2009. Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692 Informatik Repetitorium SS 2009 Volker Jaedicke Volker.Jaedicke@web.de 0179 1322692 Operatoren und Datentypen Beispiel: Anweisungen Variable int a float b int c a= a % (int) (++b-1/4) Vorher 36 3.5 c=b

Mehr