Kap 4. Befehle und Struktogramme

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Kap 4. Befehle und Struktogramme"

Transkript

1 Kap 4. Befehle und Struktogramme

2 4.1 Elementare Befehle Befehlstypen Zuweisung (eigentlich kein Befehl) Verzweigung Wiederholung/Schleife Block (zusammengesetzt) Ein-/Ausgabe (eigentlich kein Befehl) Beispiel aus dem Musterprogramm x=a; if ( a<=0 )// unzulaessige Eingabe while ( abs (x*x-a)>genauigkeit ) { } cin>>a; cout <<"\n a muss > 0 sein "; Sowohl Zuweisung als auch Ein-/Ausgabe sind Ausdrücke mit einem Wert!!! Operand Operator Operand x = a cin >> a Dr. Norbert Spangler / Programmieren I

3 Elementare Befehle Die elementaren "Befehle" sind also Verzweigung Fallunterscheidungen Schleife Block Wiederholungen Ein Block ist aus anderen Befehlen zusammengesetzt Ausdrücke wie Zuweisung oder Ein-/Ausgabe Anmerkung: Es kann jeder Ausdruck hingeschrieben werden also auch 1; a<5; In der Regel macht dies keinen Sinn. Dr. Norbert Spangler / Programmieren I

4 4.2 Grafische Darstellung Zur Verdeutlichung der Logik eines Programmes sind grafische Darstellungen sehr hilfreich. Hierzu gibt es eine Reihe von Möglichkeiten und Tools: Flußdiagramme Struktogramme (*) UML (Unified Modeling Language) -> in P2 Ziele sind u.a. eine bessere Darstellung komplexer Abläufe Unterstützung bei der Entwicklung Dokumentation des Programms Dr. Norbert Spangler / Programmieren I

5 Grafische Darstellung des Programmablaufs/Flussdiagramm Start a lesen Flußdiagramme sind einfach zu verstehen, werden aber schnell unübersichtlich. a<= 0 nein x=a ja a unzulässig Es gibt nur wenige (kleine) Symbole x=x- nein Ergebn is genau ja Ergebnis ausgeben Ende Dr. Norbert Spangler / Programmieren I

6 Grafische Darstellung des Programmablaufs/Struktogramm Struktogramme unterstützen sehr gut die Entwicklung komplexer Abläufe und sind daher eher ein Mittel zur Unterstützung des Entwurfs und nicht zur Dokumentation. Wurzel berechnen Eingabe a a <= 0 Ja Nein Es gibt nur wenige Symbole und daher ist diese Technik sehr einfach. Sie sind ab sofort zu jedem Programm anzufertigen und vor Beginn des Praktikums zusammen mit dem Testplan abzugeben. a muss >0 sein x=a Solangex*x-a ungenau x*x-a x = x x Ausgabe x Dr. Norbert Spangler / Programmieren I

7 Grafische Darstellung des Programmablaufs/UML UML Unified Modeling Language Ist eine Sprache für die Modellierung von Programmen mit grafischen Symbolen für die verwendeten Begriffe. UML ist wesentlich komplexer (es gibt 13 Diagrammtypen) als die bisher genannten Beispiele und wird in späteren Vorlesungen angesprochen. Beispiele siehe unten (Quelle: Wikipedia) Dr. Norbert Spangler / Programmieren I

8 4.3 Blöcke und Gültigkeitsbereiche Ein Block ist die Zusammenfassung mehrerer Befehle mittels eines Paars geschweifter Klammern: { } hier kommen die Befehle des Blocks Ein Block ist praktisch eine Aggregation von Befehlen zu einem Befehl. Er wird immer dort verwendet, wo nur ein Befehl stehen soll, wo man aber mehrere Befehle ausführen möchte. Dies wird in der Regel bei den Wiederholungen und Verzweigungen der Fall sein. Dr. Norbert Spangler / Programmieren I

9 Gültigkeitsbereich In einem Block dürfen auch Variable deklariert werden, welche dann aber nur in diesem Block verwendet werden können! Unter dem Gültigkeitsbereich einer Variablen versteht man daher den Programmabschnitt, wo die Variable bekannt ist und wo sie verwendet werden kann. Der Bereich beginnt mit der Stelle innerhalb des Blocks, wo sie deklariert wird und endet am Ende dieses Blocks. Nach Beendigung des Blocks existiert diese Variable nicht mehr. Ihr Speicherplatz ist freigegeben. Derartige Variable nennt man lokale Variable. Sie sind im Stack abgelegt. { Deklaration z.b. int i } Gültigkeitsbereich Dr. Norbert Spangler / Programmieren I

10 Gültigkeitsbereich/globale Variable Globale Variable müssen außerhalb von geschweiften Klammern deklariert werden, also vor dem Programm. Damit sind sie überall bekannt, d.h. in jedem Block. // lokal/global #include <iostream> using namespace std; int i=2; void main() { int j=1; { int k=2; } } Lokale Variable Globale Variable Weil globale Variable überall bekannt sind und überall damit geändert werden können stellen sie ein Risiko dar und sollten üblicherweise nicht verwendet werden. Ausnahme etwa: globale Konstanten Dr. Norbert Spangler / Programmieren I

11 // lokal/global #include <iostream> using namespace std; int i=2;//global void main() { int j=1;//block 1 { int j=2;//block 2 cout << i << j << endl; } } cout << i << j << endl; Gültigkeitsbereich/Beispiel Der Name der Variablen kann auch dem einer Variablen gleich sein, die schon vorher deklariert wurde. Damit "überdeckt diese Variable die vorher deklarierte, solange man sich in dem entsprechenden Gültigkeitsbereich im Block befindet. Was wird ausgegeben? Dr. Norbert Spangler / Programmieren I

12 4.4 Zuweisungen Zuweisung sind aus Kapitel 3 bekannt. Sie stellen eigentlich einen Ausdruck dar!!! Beispiel Bzw. auch flaeche=r*r* ; i = i+1; i+=1;//zusammengesetzte Zuweisung Aufbau Variable = Ausdruck L-Wert = R-Wert bzw. Variable op= Ausdruck Die Zuweisung ist ein Ausdruck der Form Operand Operator Operand. Der Wert des Ausdrucks ist der R-Wert. Dr. Norbert Spangler / Programmieren I

13 Zuweisungen/Struktogramm flaeche = r*r* Symbol: Rechteck!!!!!!! flaeche = r 2 *pi Inhalte sind beliebig zu beschreiben. Es muss kein C++ Code sein. Es kann also auch r 2 *π da stehen. x = x x 2 a 2x C++ Code sollte aber daraus direkt ableitbar sein Anmerkung: Das Rechtecksymbol ist das allgemeine Symbol innerhalb der Struktogramme. Es kann jeder Befehl hineingeschrieben werden. Dr. Norbert Spangler / Programmieren I

14 Sequenz i = i+1 j+=2 Ausgabe i und j Es dürfen auch mehrere Befehle in ein Rechteck, bzw. ein Block i = i+1 j+=2 Ausgabe i und j Mehrere Rechtecke können direkt untereinander sein. Dies wird dann auch als Sequenz bezeichnet. Dr. Norbert Spangler / Programmieren I

15 4.5 Verzweigungen Verzweigungen dienen zur Fallunterscheidung, d.h. in Abhängigkeit von einer Bedingung (=boolscher Ausdruck mit dem Wert wahr oder falsch ) soll zwischen verschiedenen Möglichkeiten der weiteren Befehlsausführung entschieden werden wie z.b. - beim Wurzelziehen (Radikand <0 ) - beim Suchen ( Vergleich mit dem gesuchten Element) - bei der Eingabe (zulässig ja/nein). - Menue: der Anwender kann aus einer Reihe von Aktionen auswählen Es gibt 3 Arten von Verzweigungen Verzweigungen mit if-else switch Auswahloperator? Dr. Norbert Spangler / Programmieren I

16 if ( x<y ) minimum=x; else minimum=y; cout<<minimum; Verzweigung mit if else : Beispiele if ( x<y ) {//if-block minimum=x; cout<<" das Minimum ist x"<<endl; } else {//else-block minimum=y; cout<<" das Minimum ist y"<<endl; } cout<< Der Wert des Minimums ist <<minimum<<endl; Einrücken und Klammern if/else stehen in derselben Spalte. Die Klammern sollten auf Höhe von if / else stehen Die Befehle (des Blocks) im if- bzw. else-zweig sollten stets eingerückt werden: z.b. 4 Positionen Dr. Norbert Spangler / Programmieren I

17 Verzweigung mit if-else : Allgemein if ( Bedingung ) // if-else Anweisung1 else Anweisung2 Anweisung3//naechste Anweisung nach dem if-else Wirkungsweise Auswertung der Bedingung = boolescher Ausdruck falls true (d.h. nicht 0) : Führe Anweisung1 aus, dann kommt Anweisung3 falls false (d.h. 0 ) : Führe Anweisung2 aus, dann kommt Anweisung3 Anmerkung: -Mit Anweisung ist jeweils auch ein Block gemeint (siehe Musterprogramm) -Bedingung ist jeder Ausdruck, der wahr oder falsch ist -Der else-zweig kann weggelassen werden. if ( Bedingung) //if ohne else Anweisung1 Anweisung3//naechste Anweisung Dr. Norbert Spangler / Programmieren I

18 Struktogramm Dr. Norbert Spangler / Programmieren I

19 Sequenz: 2 Rechtecke untereinander Dr. Norbert Spangler / Programmieren I

20 // Werte Stromimpuls #include <iostream> using namespace std; void main() { double t; cin >> t ; if ( t < 0 ) cout << " Wert ist " << 0 <<endl; else { if ( t < 1 ) cout << " Wert ist " << t <<endl; else { if ( t < 2 ) cout << " Wert ist " << 2-t <<endl; else cout << " Wert ist " << 0 <<endl; } } } Verschachtelung Verschachtelung ja Ausgabe 0 t<0 ja Ausgabe t t<1 ja t<2 nein nein nein Ausgabe 2-t Ausgabe 0 if-else Befehle müssen immer vollständig im if oder else Block eines übergeordneten if-else Befehls enthalten sein Übliche Vorgehensweise: Von außen nach innen. Dr. Norbert Spangler / Programmieren I

21 Alternative: else-if-kette // Werte Stromimpuls #include <iostream> using namespace std; void main() { double t; cin >> t ; if ( t < 0 ) cout << " Wert ist " << 0 <<endl; else if ( t < 1 ) cout << " Wert ist " << t <<endl; else if ( t < 2 ) cout << " Wert ist " << 2-t <<endl; else cout << " Wert ist " << 0 <<endl; } 1,2 1 0,8 0,6 0,4 0, ,5 0 0,5 1 1,5 2 2,5 if - else if - else if - else else if Kette Dr. Norbert Spangler / Programmieren I

22 else if Kette if ( Bedingung1) Anweisung1 else if (Bedingung2) Anweisung2 else if... else Anweisungm Anweisungn Wirkungsweise Auswertung von Bedingung1 falls true : Führe Anweisung1 aus, dann Anweisungn falls false: Auswertung von Bedingung2 falls true : Führe Anweisung2 aus, dann Anweisungn falls false:... Dr. Norbert Spangler / Programmieren I

23 Struktogramm ELSE-IF-Kette Verschachtelung ja t<0 nein ja t<1 nein Ausgabe 0 Ausgabe t t<2 ja nein Ausgabe 2-t Ausgabe 0 Wie Verschachtelung Dr. Norbert Spangler / Programmieren I

24 Sünde 1: Abfrage boolscher Größen IF-Sünden bool a;. if ( a==true)// a ist schon wahr oder falsch!!!! {} //kein Vergleich erforderlich Besser: if ( a ) {} bool b;. if ( b==false) {} Besser: if (!b ) {} Sünde 2: Namensvergabe bool keinfehler;// statt a wie oben if ( keinfehler ) {} bool fehler;// statt b wie oben if (!fehler ) {} Dr. Norbert Spangler / Programmieren I

25 Sünde 3: Vergleiche IF-Sünden bool gleich; int wert, eingabe;. if (eingabe == wert) gleich=true; else gleich=false; bool ungleich; int wert,eingabe;. if eingabe!=wert) ungleich=true; else ungleich=false; Besser: gleich = (eingabe==wert); Besser: ungleich = (eingabe!=wert); Sünde 4: 2xif verschachtelt aber nur ein else ( Dangling else ) bool b1,b2, if (b1) if ( b2) cout<<"1"; else cout<<"2"; Wohin gehört das else? Was passiert? Was ist gewollt? Besser: geschweifte Klammern setzen Dr. Norbert Spangler / Programmieren I

26 Verzweigung mit Switch: Beispiel // Kleinrechner/switch void main() { int i,j; Rechner für Grundrechenarten + - * / und % char op; cin >> i >> op >> j; switch (op) { case '+' : cout << i << op << j <<" = " << i+j << endl; break; case '-' : cout << i << op << j <<" = " << i-j << endl; break; case '*' : cout << i << op << j <<" = " << i*j << endl; break; case '/' : cout << i << op << j <<" = " << i/j << endl; break; case '%' : cout << i << op << j <<" = " << i%j << endl; break; default : cout << " unzulässiger Operator " << endl; } } Dr. Norbert Spangler / Programmieren I

27 Switch- allgemein switch ( ganzzahliger Wert ) { case konstante1: Befehl;Befehl;...Befehl; break; case konstante2: Befehl;Befehl;...Befehl; break;... Einrücken/Klammern Analog Verzweigung Kann weggelassen werden In der Regel nicht sinnvoll. } default: Befehl;Befehl;...Befehl; Kann weggelassen werden Nicht empfehlenswert!!!!! Empfehlung: als ganzzahzliger Wert ist der Typ char geeigneter als int/short etc., da es keine Eingabefehler geben kann. Dr. Norbert Spangler / Programmieren I

28 switch Wirkungsweise Bestimmung des Werts (muss ganzzahliger Typ sein) Vergleich mit den ganzzahligen Konstanten (alle verschieden) Bei Übereinstimmung mit einer Konstanten->Verzweigung zur case Marke. Ausführung der Befehle bis zum break, dann Verzweigung zum Ende (nach dem switch). Fehlt der break-befehl wird mit dem darauf folgenden Befehl fortgesetzt!!!!! Stimmt der Wert mit keiner Konstanten überein wird bei default fortgesetzt, Sofern vorhanden (wenn nicht, findet keine Aktion statt). Dr. Norbert Spangler / Programmieren I

29 Struktogramm switch + - * / % sonst op Ausgabe Ausgabe Ausgabe Ausgabe Ausgabe Fehler i + j i - j i * j i / j i modulo j meldung Dr. Norbert Spangler / Programmieren I

30 Gegenüberstellung Die else-if Kette ist universeller als switch. Sie kann mit beliebigen Bedingungen formuliert werden. Switch ist beschränkt auf den Vergleich ganzzahliger Ausdrücke (u.a. Aufzählungstyp!!), ist aber übersichtlicher, insbesondere wenn es viele Fälle sind, die logisch eher alle gleichwertig sind. Switch ist besonders bei einer Menue-Auswahl empfehlenswert. Dr. Norbert Spangler / Programmieren I

31 Beispiel Anstelle von Verzweigung mit dem Auswahloperator Form : (Bedingung)? wert1: wert2; if ( x<y ) minimum = x; else minimum = y; Wirkung : Ist die Bedingung wahr, wird wert1 verwendet, sonst wert2. kann auch minimum = (x<y)? x : y; mit dem Auswahloperator? verwendet werden (bedingte Bewertung). Der Auswahloperator wird bei größeren Ausdrücken schnell unübersichtlich wert=(t<0)?0:(t<1)?t:(t<2)?(2-t):0; Dr. Norbert Spangler / Programmieren I

32 4.6 Schleifen (Wiederholungen) Schleifen dienen dazu, eine Gruppe von Befehlen zu wiederholen etwa bei - Der Eingabe einer Tabelle von Zahlen - Berechnung des Durchschnitts einer großen Menge von Zahlen - Der Bestimmung des Minimums/Maximus einer Menge von Messwerten - Der Suche eines Elements in einer Tabelle - Der Wahl einer Aktion durch den Anwender in einem Menue Diese Wiederholungen finden solange statt, wie eine Wiederholungsbedingung (WB ) gilt bzw. ein Ende noch nicht erreicht ist: -Noch Daten da -Noch nicht alle Zahlen untersucht (bei Maximum, Minimum, Suche) -Der Anwender hat keine Lust mehr WB ist üblicherweise ein Ausdruck vom Typ bool. Das Prinzip ist also.. WB prüfen Befehle ausführen WB prüfen. C++ kennt 3 verschiedene Arten von Schleifen Dr. Norbert Spangler / Programmieren I

33 Übersicht Schleifen while-schleife (siehe Musterprogramm) while (WB) { Befehle } Arbeitsweise: WB Befehle WB Befehle WB do-while-schleife Einrücken/Klammer Analog Verzweigung do { Befehle } while (WB) Arbeitsweise: Befehle WB Befehle WB Befehle WB for-schleife (Verallgemeinerung der while-schleife) Übliche Arbeitsweise: Eine ganzzahlige Zählvariable durchläuft Werte von einem Anfangswert bis zu einem Endwert Dr. Norbert Spangler / Programmieren I

34 While-Schleife while (WB) { Befehle } Arbeitsweise: WB Befehle WB Befehle WB while ( Wiederholungsbedingung) Anweisung1 Anweisung2//naechste Anweisung Wirkung (*) Werte Bedingung aus falls true : Führe Anweisung1 aus Mache weiter bei (*) falls false: Führe Anweisung2 aus Kopfgesteuerte Schleife Dr. Norbert Spangler / Programmieren I

35 Struktogramm/Allgemein Dr. Norbert Spangler / Programmieren I

36 Modellierung einer while-schleife 1) Identifizierung der Wiederholungsbedingung (WB) der Schleife (ev. Negation einer Abbruchbedingung) 2) Identifizierung aller Befehle, die wiederholt werden wie z.b.: nächste Daten lesen neue Summe berechnen zählen... 3) Ermittlung, ob die Schleife immer mindestens einmal durchlaufen wird falls ja: do while -> später andernfalls: while 4) Existenz von Befehlen unter 3) prüfen, welche WB ändern. Ansonsten ist es eine unendliche Schleife. Dr. Norbert Spangler / Programmieren I

37 Beispiel a) Musterprogramm b) Aufgabe: es sollen positive Zahlen eingelesen und deren Summe berechnet werden. Bei Eingabe einer Zahl <=0 endet die Verarbeitung. Wiederholungsbedingung (WB) : eingelesene Zahl > 0 Befehle in der Schleife : aktuelle Summe bestimmen, neue Zahl lesen Mindestens einmal: nein, wenn die erste Zahl <= 0 ist -> while-schleife Änderung WB : ja da neue Zahl gelesen wird Dr. Norbert Spangler / Programmieren I

38 Beispiel While-Schleife summe = 0 erste zahl lesen zahl>0 summe=summe+zahl zahl lesen summe weiter verarbeiten double summe=0.0, zahl; cin>>zahl; while ( zahl>0 ) { summe+=zahl; cin>>zahl; } //summe ist berechnet Übliche Vorgehensweise, wenn eine unbekannte Anzahl von Daten zu lesen ist: 1. Lesen (genauer Leseversuch) direkt vor der Schleife 2. WB: Kontrolle der Eingabe 3. am Ende der Schleife: nächster Lesebefehl Dr. Norbert Spangler / Programmieren I

39 do while Schleife do { Befehle } while (WB) Arbeitsweise: Befehle WB Befehle WB Befehle WB do Anweisung1 while ( Wiederholungsbedingung) Anweisung2 Wirkung (*) Führe Anweisung1 aus Werte WB (boolscher Ausdruck) aus falls true : Mache weiter bei (*) falls false: Führe Anweisung2 aus In einer do while Schleife wird die Anweisung in der Schleife mindestens 1 mal ausgeführt!!!! Fußgesteuerte Schleife Modellierung analog while-schleife Dr. Norbert Spangler / Programmieren I

40 Struktogramm Dr. Norbert Spangler / Programmieren I

41 Beispiel: Do-While Die Do-While-Schleife ist eher selten. Typische Anwendungen sind Aktionen, wo erst danach entschieden werden kann, ob die Aktion zu wiederholen ist. Ein Beispiel wäre die Eingabe einer Zahl, die zwischen 1 und 100 sein soll. do { cout<< Zahl eingeben <<endl; cin>>zahl; } while ( zahl<=0 zahl>100 )//Kontrolle Allgemein Dr. Norbert Spangler / Programmieren I

42 for-schleife- ein Beispiel Es sollen n ganze Zahlen gelesen und aufsummiert werden. n ist ebenfalls einzulesen. Hier steht die Anzahl der Wiederholungen zu Beginn der Schleife fest. int n,summe=0,zahl; cin>>n; for ( int zaehler=1; zaehler<=n; zaehler++) { cin>>zahl; summe+=zahl; } Einrücken/Klammer analog Verzweigung Wirkung Initialisierung(1 mal) : zaehler wird deklariert und 1 gesetzt * WB prüfen: ist zaehler<=n wie While-Schleife Befehle: zahl lesen und aufsummieren wie While-Schleife Reinitialisierung: zaehler erhöhen weiter bei * Dr. Norbert Spangler / Programmieren I

43 for-schleife allgemein for (Anweisung1;Wiederholungsbedingung;Anweisung3) Anweisung2 Anweisung4//naechste Anweisung Wirkung Führe Anweisung1(=Initialisierung) aus (ev. mehrere durch Komma getrennt, Deklarationen sind üblich) (*) Werte die Wiederholungsbedingung aus-> also kopfgesteuert Falls true : Führe Anweisung2 (Schleifenbefehle) aus Führe Anweisung3 (=Reinitialisierung) aus (ev. mehrere durch Komma getrennt) Weiter bei (*) int zaehler=1 zaehler<=n zaehler++ Falls false: Weiter mit dem ersten Befehl nach der Schleife Anweisung4 Dr. Norbert Spangler / Programmieren I

44 Struktogramm/vereinfacht Die For-Schleife ist kopfgesteuert. Daher ist das Symbol identisch zur While-Schleife. Hinweis: Der structorizer schlägt hier ein anderes Symbol vor, welches üblicherweise als Endlosschleife verwendet wird. Wir werden es hier nicht verwenden!! Dr. Norbert Spangler / Programmieren I

45 Modellierung von for-schleifen (Zählschleifen) Prinzipielles Vorgehen bei üblichen einfachen Schleifen 1. Bestimmung des Zählers und seines Anfangswertes, der Anzahl der Wiederholungen bzw. des Wertes wo die Schleife endet 2) Initialisierung: Zähler= Anfangswert 3) Wiederholungsbedingung: Zähler < =Endwert oder Zähler<Wert 4) Reinitialisierung: Zähler um 1 erhöhen 5) Identifizierung aller Befehle, die wiederholt werden wie z.b.: nächste Daten lesen neue Summe berechnen... Die Möglichkeiten einer for-schleife sind aber wesentlich weitreichender als hier dargestellt. Dr. Norbert Spangler / Programmieren I

46 Struktogramm/Beispiel For-Schleife summe = 0 n lesen zaehler von 1 bis n zahl lesen summe=summe+zahl summe weiter verarbeiten Dr. Norbert Spangler / Programmieren I

47 For-Schleife: Variationen Für eine Schleife über geraden Zahlen ändert man die Reinitialisierung for (int i=0 ; i<n ; i=i+2) {... } Für eine Rückwärtsschleife formuliert man beispielsweise wie folgt for (int k=m ; k>0 ; k=k-1)//alternative k-- {... } Eine Schleife über relle Zahlen for (double x=0.0, x<=1; x+=0.01) {... } Mehrere Befehle, durch Komma getrennt, bei Initialisierung und Reinitialisierung for (int i=1, k=100; i<n && k > 0; i=i+1,k=k-1) {... } Eine Endlosschleife for (; ;) //Alternative while(1) oder while(true) {... } Dr. Norbert Spangler / Programmieren I

48 For-Schleife/ohne Zähler Die for-schleife ist ein sehr mächtiger Befehl, der prinzipiell jede Wiederholung modellieren kann. Dies ist dann oft sehr trickreich, aber meist schwer lesbar/verständlich. for (Datei oeffnen, hole erste Daten ; kein Dateiende ; lese naechste Daten) { verarbeite Daten } Initialisierung: Wiederholungsbedingung: Schleifenbefehle: Reinitialisierung: Datei oeffnen, ersten Datensatz lesen (Versuch) Leseversuch geglückt, Daten sind da Daten verarbeiten naechste Daten lesen (Versuch) Es ist lesbarer, dies mittels einer While-Schleife zu realisieren. Datei oeffnen; Erste Daten holen; while( kein Dateiende) { Daten verarbeiten; naechste Daten lesen; } Dr. Norbert Spangler / Programmieren I

49 Schleifen: geänderter Ablauf break : Der Befehl break beendet sofort die aktuelle Schleife, in welcher dieser Befehl steht. Es geht mit dem ersten Befehl nach der Schleife weiter. while (true) // keine Endebedingung unendliche Schleife { if ( ) break; } continue : Der Befehl continue beendet die Befehle innerhalb der Schleife und setzt mit der Überprüfung der Wiederholungsbedingung bzw. Reinitialisierung bei for-schleifen fort.. for ( int i=0;i<1000;i++) { if ( ) continue; } Dr. Norbert Spangler / Programmieren I

50 4.7 Ein-/Ausgabe Die Ein- und Ausgabe in C++ erfolgt üblicherweise mittels cin und cout. Dies sind jedoch keine Befehle sondern Objekte von Stream-Klassen. Die (Stream-)Klassen werden im Zusammenhand mit der Objektorientierung im Sommersemester behandelt. Die aus C stammenden Funktionen printf/scanf werden nicht betrachtet. Dr. Norbert Spangler / Programmieren I

51 Ein-/Ausgabe mit cin/cout Es können ein aber auch mehrere Daten mit einem Aufruf bearbeitet werden. Formatierungen sind mittel I/O-Manipulatoren möglich. cin>>x; cin>>a>>b>>c; cout<<i; cout<<"ergebnis "<<i<<endl; cout<<setw(10)<<setprecision(5)<<fixed<<d<<endl;//mit Manipulatoren Dr. Norbert Spangler / Programmieren I

52 Weitere Ein-/Ausgabebefehle character c1;// Variable fuer Zeichen put schreibt ein Zeichen cout.put(c1); get liest das nächste Zeichen, welches auch ein Whitespace-Zeichen sein kann! cin.get(c1); read/write Lesen und Schreiben von character-arrays (später) cin.read(c,10) bzw. cout.write(c,10) für jeweils 10 Zeichen getline Lesen von Zeichen in eine Variable vom Typ String bis zum Auftreten eines Begrenzungszeichens. getline(cin,name) Stringvariable name / Begrenzungszeichen newline getlinie(cin,name,'#') Stringvariable name / Begrenzungszeichen # Dr. Norbert Spangler / Programmieren I

53 4.8 Sonstige Befehle return Ausdruck Beendigung einer Funktion mit dem Wert des Ausdrucks als Funktionswert-> Kap. Funktionen return beendigung einer Funktion vom Typ void exit(n) goto marke Beendigung des Programms :Fehlercode n (ganze Zahl) Verzweigung zu einer Marke / soll nicht verwendet werden schlechter Programmierstil Dr. Norbert Spangler / Programmieren I

54 4.9 Beispiel for Es sollen n Zahlen eingelesen und ihr Maximum berechnet werden. Zusätzlich ist die Nummer der eingelesenen Zahl, welche,das Maximum ist, zu bestimmen. n ist voher einzulesen. Testplan Achtung: bei Maximum/Minimumsuche als Anfangswert immer das erste Element wählen Nr. Fall Eingabe Ergebnis n Zahlen Nummer Max 1 Keine Zahl 0 Meldung 2 Eine Zahl Normal/Anfang Normal/Mitte Normal/Ende Gleiche Zahlen Dr. Norbert Spangler / Programmieren I

55 Beispiel for void main() { int n; cout<<"n einlesen "; cin >>n; if ( n<=0 ) cout<<" keine Zahlen gelesen "<<endl; else { int zahl, nummer=1; cin>>zahl; int maximum=zahl; for ( int i=2 ; i<=n ; i++ ) // Zaehlvariable in der Schleife deklarieren { cin>>zahl; if ( zahl>maximum ) { maximum=zahl; nummer=i; } } cout<<"maximum "<<maximum<<" = "<<nummer<<". Zahl"<<endl; } } Initialisierung : i=2 (Zählvariable auf den Anfangswert setzen) Wiederholungsbedingung: i<=n (Zählvariable abfragen) Reinitialisierung: i=i+1 (Zählvariable hochzählen Dr. Norbert Spangler / Programmieren I

56 In einem Programm sollen positive ganze Zahlen eingelesen und deren Durchschnitt berechnet werden. Das Programm endet, wenn eine negative Zahl oder 0 eingegeben wird. Danach sind Durchschnitt und Anzahl der gelesenen Zahlen am Bildschirm auszugeben Beispiele/while Achtung: Hier ist die Anzahl der Wiederholungen zu Beginn der Schleife nicht bekannt -> While-Schleife empfohlen Dr. Norbert Spangler / Programmieren I

57 Beispiele/while // Lesen von positiven Zahlen #include <iostream> using namespace std; void main() { int anzahl=0,eingabezahl; float summe=0.0; // Erste Zahl eingeben cout << " Bitte positive Zahl eingeben " << endl; cout << " Abbruch mit 0 " << endl; cin >> eingabezahl; //Schleife while (eingabezahl>0) { anzahl=anzahl+1;//zaehler erhoehen summ=summe+eingabezahl;//summe bestimmen } //Ergebnis ausgeben } cout << " Bitte naechste Zahl eingeben/abbruch mit 0 " << endl; cin >> eingabezahl; cout << " Der Durchschnitt ist : " << summe/anzahl << endl; cout << " Es wurden "<<anzahl<<" Zahlen gelesen"<<endl; Welche Testfälle sollte man wählen? Welche Schwächen hat dieses Programm? Dr. Norbert Spangler / Programmieren I

58 Beispiele/while Ein guter vorher erstellter Testplan hätte die Schwächen des Programms aufgedeckt. Der Fall n=0 sollte noch nach der Schleife abgefangen werden. Testplan Nr. Fall Eingabe Ergebnis Zahlen Durchschnitt Anzahl 1 Keine Zahl 0????????? 0 2 Eine Zahl Normalfall ,1 3 Dr. Norbert Spangler / Programmieren I

59 Beispiele/while // Lesen von positiven Zahlen #include <iostream> using namespace std; void main() { int anzahl=0,eingabezahl; float summe=0.0; // Erste Zahl eingeben cout << " Bitte positive Zahl eingeben " << endl; cout << " Abbruch mit 0 " << endl; cin >> eingabezahl; //Schleife while (eingabezahl>0) { anzahl=anzahl+1; summ=summe+eingabezahl; cout << " Bitte naechste Zahl eingeben/abbruch mit 0 " << endl; cin >> eingabezahl; } //Ergebnis ausgeben if ( anzahl==0 ) cout<<" keine Zahlen gelesen"<<endl; else { } cout << " Der Durchschnitt ist : " << summe/anzahl << endl; cout << " Es wurden "<<anzahl<<" Zahlen gelesen"<<endl; } Durch die Berücksichtigung des Testfalls "keine Zahlen" ( Testplan! ) ergibt sich ein geänderter Programmcode. Dr. Norbert Spangler / Programmieren I

60 Der Anwender soll eine Zahl n>0 eingeben Beispiel do while void main() { int n; do { cout<<endl; cout<<" Zahl > 0 eingeben "; cin>>n; } while(n<=0) // jetzt geht s weiter } Nachteil: Der Anwender bekommt keinen Hinweis, dass seine letzte Eingabe fehlerhaft war. Aber: Do While Schleifen kommen eher selten vor. Dr. Norbert Spangler / Programmieren I

61 4.12 Übung Schleife und switch Es soll in einem Auswahlmenue der Anwender gefragt werden, welche Aktion er durchführen will bzw. ob er die Durchführung von Aktionen abbrechen will. Als Aktionen sollen der Einfachheit die Aktionen Ausgabe " Aktion A" Ausgabe " Aktion F" vorgegeben sein. Erstellen Sie ein entsprechendes Programm. Tipp: Lesen sie Zeichen (char) ein für die Wahl des Menuepunktes und keine Zahlen. Sie ersparen sich Fehleingaben. Dr. Norbert Spangler / Programmieren I

62 Übung Schleife und switch Testplan Nr. Fall Eingabe Ergebnis 1 Wahl A A Aktion A: Ausgabe A 2 Wahl B B Aktion B: Ausgabe B 3 Wahl C C Aktion C: Ausgabe C 4 Wahl D D Aktion D: Ausgabe D 5 Wahl E E Aktion E: Ausgabe E 6 Wahl F F Aktion F: Ausgabe F 7 Ende X Programmende Struktogramm und Programm zur Übung Dr. Norbert Spangler / Programmieren I

63 4.13 Vorgehensweise Struktogramme Von außen nach innen TOP DOWN Einzelne Rechtecke erst mit Stichwort zusammenfassend beschreiben und dann detaillieren Dr. Norbert Spangler / Programmieren I

64 4.14 echte Klausurerlebnisse

5. Elementare Befehle und Struktogramme

5. Elementare Befehle und Struktogramme 5. Elementare Befehle und Struktogramme Programmablauf Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme Dr. Norbert Spangler / Grundlagen

Mehr

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

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

Hochschule Darmstadt Informatik-Praktikum (INF 1) WS 2015/2016 Wirtschaftsingenieur Bachelor 5. Aufgabe Datenstruktur, Dateieingabe und -ausgabe

Hochschule Darmstadt Informatik-Praktikum (INF 1) WS 2015/2016 Wirtschaftsingenieur Bachelor 5. Aufgabe Datenstruktur, Dateieingabe und -ausgabe Aufgabenstellung Für eine Hausverwaltung sollen für maximal 500 Wohnungen Informationen gespeichert werden, die alle nach der gleichen Weise wie folgt strukturiert sind: Art Baujahr Wohnung Whnginfo Nebenkosten

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

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

Hochschule Darmstadt Informatik-Praktikum (INF 1) WS 2014/2015 Wirtschaftsingenieur Bachelor 4. Aufgabe Datenstruktur, Dateieingabe und -ausgabe

Hochschule Darmstadt Informatik-Praktikum (INF 1) WS 2014/2015 Wirtschaftsingenieur Bachelor 4. Aufgabe Datenstruktur, Dateieingabe und -ausgabe Aufgabenstellung Für ein Baumkataster sollen für maximal 500 Bäume Informationen gespeichert werden, die alle nach der gleichen Weise wie folgt strukturiert sind: Nummer Bauminfo Baumart Hoehe Baum Umfang

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

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 4 Einführung in die Programmiersprache Java (Teil II)... 4-2 4.4 Strukturierte Programmierung... 4-2 4.4.1 Strukturierung im Kleinen... 4-2 4.4.2 Addierer (do-schleife)... 4-3 4.4.3 Ein- Mal- Eins

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

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

FB Informatik. Fehler. Testplan

FB Informatik. Fehler. Testplan Fehler #include int i,n,summe; int summe (int); cout 0) cin>n; i=summme(n); cout

Mehr

Programmieren in C. -- ALLE Programmiersprachen sind HÄSSLICH -- Deklaration: erst der Datentyp, dann der Variablenname. Semikolon am Ende.

Programmieren in C. -- ALLE Programmiersprachen sind HÄSSLICH -- Deklaration: erst der Datentyp, dann der Variablenname. Semikolon am Ende. PROGRAMMIEREN IN C - EIN KURZÜBERBLICK 1 Programmieren in C -- ALLE Programmiersprachen sind HÄSSLICH -- Die einfachste Programmstruktur: main () -- was zu tun ist --- Vorgeordnete Definitionen: # include

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 4 Anweisungen... 4-2 4.1 Strukturierte Programmierung... 4-2 4.1.1 Geschichte... 4-2 4.1.2 Strukturierung im Kleinen... 4-2 4.2 Einige Beispielanwendungen... 4-4 4.2.1 Addierer (do-schleife)...

Mehr

Projektverwaltung Problem Lösung: Modulare Programmierung

Projektverwaltung Problem Lösung: Modulare Programmierung Projektverwaltung Problem Der Sourcecode ür ein Programm wird immer länger und unübersichtlicher Eine Funktion, die in einem alten Projekt verwendet wurde, soll auch in einem neuen Projekt verwendet werden

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

Klausur in Programmieren

Klausur in Programmieren Studiengang Sensorik/Sensorsystemtechnik Note / normierte Punkte Klausur in Programmieren Wintersemester 2010/11, 17. Februar 2011 Dauer: 1,5h Hilfsmittel: Keine (Wörterbücher sind auf Nachfrage erlaubt)

Mehr

Kontrollstrukturen, Strukturierte Programmierung

Kontrollstrukturen, Strukturierte Programmierung , Strukturierte Programmierung Steuer- und Kontrollfluss Strukturierte Programmierung Arten von Strukturblöcken Sequenz Alternative Iteration C-Spezifisches Seite 1 Elementare Algorithmen SelectionSort

Mehr

Es ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.

Es ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen. Ziele sind das Arbeiten mit Funktionen und dem Aufzählungstyp (enum), sowie - einfache Verzweigung (if else) - Alternativen switch case - einfache Schleifen (while oder do while) Aufgabe 3: Diese Aufgabe

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

Zusammengesetzte Datentypen -- Arrays und Strukturen

Zusammengesetzte Datentypen -- Arrays und Strukturen Zusammengesetzte Datentypen -- und Strukturen Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14

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

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

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

Kurze Einführung in die Programmiersprache C++ und in Root

Kurze Einführung in die Programmiersprache C++ und in Root Kurze Einführung in die Programmiersprache C++ und in Root Statistik, Datenanalyse und Simulation; 31.10.2006 Inhalt 1 Einführung in die Programmiersprache C++ Allgemeines Variablen Funktionen 2 1 Einführung

Mehr

Klausur in Programmieren

Klausur in Programmieren Studiengang Sensorik/Sensorsystemtechnik Note / normierte Punkte Klausur in Programmieren Sommer 2009, 16. Juli 2009 Dauer: 1,5h Hilfsmittel: Keine (Wörterbücher sind auf Nachfrage erlaubt) Name: Matrikelnr.:

Mehr

Einführung in die Programmierung Wintersemester 2011/12

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

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

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

Programmieren in C/C++ und MATLAB

Programmieren in C/C++ und MATLAB Programmieren in C/C++ und MATLAB Sven Willert Sabine Schmidt Christian-Albrechts-Universität zu Kiel CAU 4-1 Übung 1) Schreiben Sie ein Programm, das die Fläche unter einer Parabel, also das Integral

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

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

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

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 5. Kontrollstrukturen Allgemein Kontrollstrukturen dienen zur Steuerung des Programmablaufs. (Bemerkung: C und C++ besitzen die selben Kontrollstrukturen.)

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

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

Die Programmiersprache C99: Zusammenfassung

Die Programmiersprache C99: Zusammenfassung Die Programmiersprache C99: Zusammenfassung Jörn Loviscach Versionsstand: 7. Dezember 2010, 19:30 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen in der Vorlesung. Videos dazu: http://www.youtube.com/joernloviscach

Mehr

Kontrollstrukturen. Bedingter Ablauf: if. Bedingter Ablauf: if-else

Kontrollstrukturen. Bedingter Ablauf: if. Bedingter Ablauf: if-else Kontrollstrukturen 1. Bedingter Ablauf: if, if-else 2. Blöcke von Code 3. Wiederholungsschleife: for mit Inkrement und Dekrement Operatoren 4. erweiterte Eigenschaften von printf() 5. Die relationalen

Mehr

Grundlagen der Informatik 5. Kontrollstrukturen II

Grundlagen der Informatik 5. Kontrollstrukturen II 5. Kontrollstrukturen II Schleifen Sprünge Grundlagen der Informatik (Alex Rempel) 1 Schleifen Schleifen allgemein und in C++ Schleifen (Loops) ermöglichen die Realisierung sich wiederholender Aufgaben

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

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

Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Gute Lösung:

Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Gute Lösung: Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Der Sourcecode wird an den entsprechenden Stellen im Programm wiederholt Programm wird lang

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

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

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

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 elementare Ausgabe von Daten auf externe Medien, wie Dateien und das Einlesen davon wird demonstriert.

Die elementare Ausgabe von Daten auf externe Medien, wie Dateien und das Einlesen davon wird demonstriert. Ein- und Ausgabe Die elementare Ausgabe von Daten auf externe Medien, wie Dateien und das Einlesen davon wird demonstriert. Komplexe E/A-Operationen werden erst diskutiert, nachdem das Klassenkonzept erarbeitet

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

Übungen zu C++ Kapitel 1

Übungen zu C++ Kapitel 1 Übungen zu C++ Kapitel 1 Aufgabe 1 Ergänze den Text. a) Die sechs logischen Einheiten eines Computers sind Eingabe-Einheit, Ausgabe-Einheit, RAM, ALU, CPU, Plattenspeicher. b) Die Programme, welche Hochsprachenprogramme

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

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18 Kapitel 3 Datentypen und Variablen Seite 1 von 18 Datentypen - Einführung - Für jede Variable muss ein Datentyp festgelegt werden. - Hierdurch werden die Wertemenge und die verwendbaren Operatoren festgelegt.

Mehr

Dieser Teil führt in die Kontrollstrukturen von C++ ein. Eine Kontrollstruktur definiert, wie die einzelnen Anweisungen ausgeführt werden, z.b.

Dieser Teil führt in die Kontrollstrukturen von C++ ein. Eine Kontrollstruktur definiert, wie die einzelnen Anweisungen ausgeführt werden, z.b. Kontrollstrukturen Dieser Teil führt in die Kontrollstrukturen von C++ ein. Eine Kontrollstruktur definiert, wie die einzelnen Anweisungen ausgeführt werden, z.b. sequentiell, bedingt oder wiederholt.

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

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

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

Kontrollstrukturen und Funktionen in C

Kontrollstrukturen und Funktionen in C Kontrollstrukturen und Funktionen in C Lernziele: Vertiefen der Kenntnisse über Operatoren, Kontrollstrukturen und die Verwendung von Funktionen. Aufgabe 1: Quickies: Datentypen in C a) Was sind die elementaren

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 der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung 8. Vorlesung 25.05.2016 1 Ausdrücke "Befehle", die ein Ergebnis liefern 3 + 4 sin(x) x < 10 getchar() Ausdrücke können Teil eines anderen Ausdrucks sein x = sin( x + y ) Auswertung:

Mehr

Pass by Value Pass by Reference Defaults, Overloading, variable Parameteranzahl

Pass by Value Pass by Reference Defaults, Overloading, variable Parameteranzahl Funktionen Zusammenfassung von Befehlssequenzen als aufrufbare/wiederverwendbare Funktionen in einem Programmblock mit festgelegter Schnittstelle (Signatur) Derartige prozedurale Programmierung erlaubt

Mehr

Programmierung in C. Grundlagen. Stefan Kallerhoff

Programmierung in C. Grundlagen. Stefan Kallerhoff Programmierung in C Grundlagen Stefan Kallerhoff Vorstellungsrunde Name Hobby/Beruf Schon mal was programmiert? Erwartungen an den Kurs Lieblingstier Für zu Hause C-Buch online: http://openbook.rheinwerk-verlag.de/c_von_a_bis_z/

Mehr

25 kann ohne Rest durch 5 geteilt werden! ist wahr

25 kann ohne Rest durch 5 geteilt werden! ist wahr Lehrbrief 2: Lektion 8 - C -Praxis 4-1 - 5.2 Einfache Entscheidungen mit if und die Vergleichsoperatoren Nun tauchen wir immer tiefer in die Geheimnisse von C ein und beschäftigen uns mit einem sehr wichtigen

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

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

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

Lua Grundlagen Einführung in die Lua Programmiersprache

Lua Grundlagen Einführung in die Lua Programmiersprache Lua Grundlagen Einführung in die Lua Programmiersprache 05.05.2014 Ingo Berg berg@atvoigt.de Automatisierungstechnik Voigt GmbH Die Lua Programmiersprache Was ist Lua? freie Programmiersprache speziell

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen

Grundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen Grundlagen der Programmierung Prof. H. Mössenböck 3. Verzweigungen If-Anweisung n > 0? j n if (n > 0) x = x / n; ohne else-zweig x x / n j max x x > y? n max y if (x > y) max = x; else max = y; mit else-zweig

Mehr

Java Einführung ABLAUFSTEUERUNG Kapitel 3 und 4

Java Einführung ABLAUFSTEUERUNG Kapitel 3 und 4 Java Einführung ABLAUFSTEUERUNG Kapitel 3 und 4 Inhalt dieser Einheit Merkmale und Syntax der verschiedenen Kontrollstrukturen: if else switch while do while for break, continue EXKURS: Rekursion 2 Kontrollstrukturen

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

public class SternchenRechteckGefuellt {

public class SternchenRechteckGefuellt { Java programmieren: Musterlösungen Konsolen-Aufgaben Aufgabe 1: Gefüllte Rechtecke zeichnen Schreiben Sie ein Programm, das ein durch Sternchen gefülltes Rechteck zeichnet. Der Benutzer soll Breite und

Mehr

Funktionales C++ zum Ersten

Funktionales C++ zum Ersten Funktionales C++ zum Ersten WiMa-Praktikum 1, Teil C++, Tag 1 Christoph Ott, Büro: Helmholtzstr.18, E22 Tel.: 50-23575, Mail: christoph.ott@uni-ulm.de Institut für Angewandte Informationsverarbeitung 26.08.08

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

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

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur Unterprogramme Unterprogramme sind abgekapselte Programmfragmente, welche es erlauben, bestimmte Aufgaben in wiederverwendbarer Art umzusetzen. Man unterscheidet zwischen Unterprogrammen mit Rückgabewert

Mehr

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Grundstrukturen: Sub [name]([übergabe]) End Sub [Übergabe] ist

Mehr

Webbasierte Programmierung

Webbasierte Programmierung Webbasierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der HTML5-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 6: JavaScript Kontrollstrukturen Verzweigungen Einseitig, zweiseitig,

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

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

Zusammenfassung des Handzettels für Programmieren in C

Zusammenfassung des Handzettels für Programmieren in C Zusammenfassung des Handzettels für Programmieren in C In der handschriftlichen Kopie werden mehr Abkürzungen verwendet. Alles Grün markierte dient zum lernen und wird nicht auf den Handzettel übertragen.

Mehr

GI Vektoren

GI Vektoren Vektoren Problem: Beispiel: viele Variablen vom gleichen Typ abspeichern Text ( = viele char-variablen), Ergebnisse einer Meßreihe ( = viele int-variablen) hierfür: Vektoren ( = Arrays = Feld ) = Ansammlung

Mehr

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen

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

4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C

4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C Einfache Programmstrukturen in C 4-1 Welche einfache Programmstrukturen sind zu unterscheiden? Arithmetische und logische Ausdrücke und Zuweisungen Verzweigungen Unvollständige bedingte Anweisungen Vollständige

Mehr

Kontrollstrukturen Blöcke / Schleifen / Bedingungen

Kontrollstrukturen Blöcke / Schleifen / Bedingungen Kontrollstrukturen Blöcke / Schleifen / Bedingungen 1 Einfache Anweisungen und Blöcke einfache Anweisung abgeschlossen mit Semikolon ; typische Fälle: o Deklaration, Zuweisung, Funktionsaufruf Sonderfall

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

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

Klausur Informatik I WS 2006/2007

Klausur Informatik I WS 2006/2007 Klausur Informatik I WS 2006/2007 Name Gruppe 1 Vorname Dauer 90 min Matrikelnummer Hilfsmittel keine Hinweis: sofern Sie die Rückseite eines Blattes verwenden vermerken sie dies auf der Vorderseite Nr.

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

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

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 23

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf  Seite 1 von 23 Kapitel 16 Datei Aus- und Eingabe Seite 1 von 23 Datei Aus- und Eingabe - Für die Ausgabe auf Dateien und die Eingabe von Dateien werden die Streams ofstream und ifstream verwendet. - Sie sind in der Bibliothek

Mehr

Nachname: Vorname: Matr.-Nr.: Punkte: 1. Aufgabe: ( / 25 Pkt.) Gegeben ist das folgende Struktogramm zur Berechnung von sin(x) mit Hilfe einer Reihe.

Nachname: Vorname: Matr.-Nr.: Punkte: 1. Aufgabe: ( / 25 Pkt.) Gegeben ist das folgende Struktogramm zur Berechnung von sin(x) mit Hilfe einer Reihe. Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe: ( / 25 Pkt.) Gegeben ist das folgende

Mehr

S. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"

S. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort then S. d. I.: Programieren in C Folie 4-1 4 Anweisungen 4.1 if-anweisung 1) if (Ausdruck) 2) if (Ausdruck) } else im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then" es wird nur der numerische Wert

Mehr

Hochschule Darmstadt Informatik-Praktikum WS 2016/2017 WIng Bachelor 4. Aufgabenblatt Modularisierung, Funktionen, Unterprogramme

Hochschule Darmstadt Informatik-Praktikum WS 2016/2017 WIng Bachelor 4. Aufgabenblatt Modularisierung, Funktionen, Unterprogramme Ziele sind das Arbeiten mit Funktionen, sowie - einfache Verzweigung (if else) - Alternativen switch case - einfache Schleifen (while oder do while) Aufgabe 4: Diese Aufgabe basiert auf der Aufgabe 3.

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

Programmieren II Klassen. Programmieren II Klassen. Programmieren II Klassen. Programmieren II Klassen. Zur Erinnerung.

Programmieren II Klassen. Programmieren II Klassen. Programmieren II Klassen. Programmieren II Klassen. Zur Erinnerung. Vorbemerkungen Zur Erinnerung aktueller Standpunkt: Entwickler von (bibliotheken) jetzt sind wichtig interne Repräsentation der Daten Realisierung der gewünschten Funktionalität Bereitstellung geeigneter

Mehr

Einführung in die Programmierung (EPR)

Einführung in die Programmierung (EPR) Goethe-Center for Scientific Computing (G-CSC) Goethe-Universität Frankfurt am Main Einführung in die Programmierung (EPR) (Übung, Wintersemester 2014/2015) Dr. S. Reiter, M. Rupp, Dr. A. Vogel, Dr. K.

Mehr

BKTM - Programmieren leicht gemacht.

BKTM - Programmieren leicht gemacht. BKTM Programmieren leicht gemacht. + Struktogramm Das Struktogramme ist eine Entwurfsmethode für die strukturierte Programmierung. Es ist nach der DIN 66261 genormt. Es ist 1972/73 von Dr. Isaac Nassi

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

Auswahlen (Selektionen)

Auswahlen (Selektionen) 1 Anhang 10.3 Ein/Ausgaben Eingabe mit Prompt (Beispiel) cout ; // Prompt ohne endl cin

Mehr