Informatik für Ingenieure (InfIng)

Größe: px
Ab Seite anzeigen:

Download "Informatik für Ingenieure (InfIng)"

Transkript

1 Informatik für Ingenieure (InfIng) C - Kontrollstrukturen Doz. Dipl.-Ing. H. Hiller WS 2012/13

2 Kontrollstrukturen Erinnern Sie sich? Frühstücks-Ei kochen, 6 Minuten Was tun, wenn kein Topf vorhanden ist? Herdplatte schon besetzt ist? die Eier noch im Karton sind? Was tun, wenn's nicht geradeaus läuft? Programme sind wie das Leben Nichts läuft einfach nur geradeaus! Vieles macht man doppelt! Manches macht man auch dreifach! Anderes macht man erst gar nicht! Start Öffne Schrank. Nimm Topf. Schließe Schrank. : Stop FH D Seite 2 FB 5

3 Kontrollstrukturen Kontrollstrukturen erlauben es vom sequenziellen Ablauf eines Programms abzuweichen Start anweisung_1 Wiederhole anweisung_2 solange, bis ein bestimmter Wert in anweisung_2 erreicht wird. Führe anweisung_4 nur dann aus, wenn die vorhergehende anweisung_3 einen gültigen Wert geliefert hat. anweisung_2 anweisung_3 anweisung_4 Stop Überspringe alle Anweisungen, wenn nicht alle Eingangsbedingungen erfüllt sind. FH D Seite 3 FB 5

4 Bedingungen Bedingungen Verzweigungen und Schleifen basieren auf Bedingungen Bedingungen können wahr oder falsch sein Ausführung erfolgt nur, wenn Bedingung erfüllt ist (also wahr ist) Wahr und Falsch Viele Programmiersprachen kennen den Datentyp BOOLEAN BOOLEAN hat 2 Werte: Wahr und Falsch bzw. TRUE und FALSE C kennt diesen Datentyp nicht Wahrheitsprüfung in C liefert immer einen Integerwert Integerwert ist von Null verschieden, wenn der Vergleich wahr ist Integerwert ist gleich Null, wenn der Vergleich falsch ist Wahr: ungleich 0 Falsch: gleich 0 FH D Seite 4 FB 5

5 Themen dieser Vorlesung Wir wollen folgenden Fragen nachgehen: 1. "Wie kann man bedingt Anweisungen ausführen?" Verzweigungen 2. "Wie kann man Anweisungen wiederholen?" Schleifen 3. "Wie kann man Anweisungen ab- bzw. unterbrechen?" Sprünge FH D Seite 5 FB 5

6 Übersicht Verzweigungen Schleifen Sprunganweisungen FH D Seite 6 FB 5

7 Bedingte Verzweigung (if..else) Bedingte Verzweigung Wahrheitswert entscheidet über die Ausführung von Anweisungen Syntax der if-anweisung if (ausdruck) else anweisung_1; anweisung_2; ausdruck ist wahr: Ausführung von anweisung_1 ausdruck ist falsch: Ausführung von anweisung_2 Einfach Alternative else ist optional und kann weggelassen werden if (ausdruck) anweisung; ausdruck ist wahr: Ausführung von anweisung_1 ausdruck ist falsch: anweisung_1 wird übersprungen ausdruck wahr anweisung_1 ausdruck wahr anweisung_1 falsch anweisung_2 falsch FH D Seite 7 FB 5

8 Bedingte Verzweigung (if..else) Einrückungen Ohne Bedeutung für den Compiler "Nur" ein Appell an die Lesbarkeit :-)) Runde Klammern Pflicht für das Argument der if-anweisung Geschweifte Klammern Optional bei lediglich einer Anweisung Pflicht bei zwei oder mehr Anweisungen Klammern bestimmen den Programmablauf Gleiche if - Anweisung, verschiedene Klammerung Welche Anweisungen werden ausgeführt? #1: Keine Anweisung wird ausgeführt #2: Ausgeführt wird anweisung_2 Was liegt hier vor: Absicht oder Fehler? Einrückung der anweisung_2 spricht für Fehler if (ausdruck) anweisung_1; anweisung_2; else anweisung_3; if (1 > 3) anweisung_1; anweisung_2; if (1 > 3) anweisung_1; anweisung_2; #1 #2 FH D Seite 8 FB 5

9 Bedingte Verzweigung (if..else) Beispiel Programm soll prüfen, ob ein gegebenes Zeichen ein kleiner Buchstabe ist Ist das Zeichen ein Kleinbuchstabe, so ist der zugehörige ASCII-Wert auszugeben #include <stdio.h> #include <ctype.h> int main() char c = 'm'; if ( (c >= 'a') && (c <= 'z') ) printf ("Das Zeichen %c ist ein kleiner Buchstabe.\n", c); printf ("Der ASCII-Wert ist %ddez.\n", c); else printf ("Was weiss ich, was das für ein Zeichen ist..."); return 0; FH D Seite 9 FB 5

10 Bedingte Verzweigung (if..else) Schachtelung else gehört immer zum unmittelbar vorhergehenden if Fehler bei Klammer oder Semikolon verändern den Programmablauf Beispiel Verändern einer Klammer bei geschachtelter if-anweisung if (x > 0) if (y > 0) a = 1; else a = 2; if (x > 0) if (y > 0) a = 1; else a = 2; if (x > 0) if (y > 0) a = 1; else a = 2; Ohne Klammern gehört das else zum zweiten if. Mit Klammern funktional kein Unterschied zu A, aber übersichtlicher. Mit zweiter Klammer etwas früher gesetzt, gehört das else zum ersten if FH D Seite 10 FB 5

11 Bedingte Verzweigung (if..else) Mehrfachverzweigung Verzweigung über mehrere Alternativen mittels else..if Syntax der Mehrfachverzweigung if (ausdruck_1)? anweisung_1; else if (ausdruck_2) anweisung_2; else if (ausdruck_n) a_1? a_2? anweisung_n; a_n else anweisung_m; a_m Auswertung der Ausdrücke in vorgegebener Reihenfolge Ergibt eine der Auswertungen wahr, wird die zugehörige Anweisung ausgeführt Ist kein Ausdruck wahr, wird die Anweisung im (letzten) else-zweig ausgeführt FH D Seite 11 FB 5

12 Bedingte Verzweigung (if..else) Bedingungsoperator (?:) Alternative zur Verwendung der Schlüsselwörter if und else Syntax ausdruck? anweisung_1 : anweisung_2 Tenärer Operator?: ist ein tenärer Operator (der einzige übrigens in ANSI C) if (a > b) ist äquivalent mit (a > b)? (x = 0) : (x = 1); x = 0; else x = 1; oder noch etwas raffinierter ausgedrückt x = (a > b)? 0 : 1; FH D Seite 12 FB 5

13 Fallunterscheidung (switch) Fallunterscheidung Berücksichtigung mehrerer Alternativen, nicht nur wahr oder falsch Prinzipiell auch mit if..else möglich (Nachteil: unübersichtlicher) Syntax der switch - Anweisung switch (ausdruck) case const_1: case const_n: default: anweisung_1; break; anweisung_n; break; anweisung_x; Auswertung des Ausdrucks liefert einen Wert vom Typ Integer Ergebnis wird verglichen mit den case - Lables (ganzzahlige Konstanten) Anschließend Sprung zu case - Lable, das mit Ergebnis übereinstimmt Fehlende Übereinstimmung führt zum (optionalen) default-lable FH D Seite 13 FB 5

14 Fallunterscheidung (switch) Abschluss eines case-blocks mittels break Anweisungen der nachfolgenden case - Lables werden nicht ausgeführt Programm wird nach der schließenden geschweiften Klammer fortgesetzt switch (ausdruck) case const_1: anweisung_1; break; Einsprung A Einsprung B case const_2: anweisung_2a; anweisung_2b; Fallthrough case const_3: anweisung_3; break; default: anweisung_x; Verzicht auf break am Ende eines case-blocks Nachfolgendes case-lable wird ebenfalls ausgeführt (ggf. auch weitere Lables) Prg.-Ausführung bis zum nächsten break bzw. Ende des switch (Fallthrough) FH D Seite 14 FB 5

15 Fallunterscheidung (switch) Beispiel Ausgabe der Anzahl Tage eines Monats #include <stdio.h> int main() int monat = 2; switch (monat) case 1: printf("31 Tage"); break; case 2: printf("28 Tage"); break; // Monat Januar hat 31 Tage // Sprung zum Ende von switch // weitere Lables für 3 bis 6 // Falltrough, da Juli und // August beide 31 Tage haben case 7: case 8: printf("31 Tage"); break; // weitere Lables für 9 bis 12 default: printf("kein gueltiger Monat"); return 0; FH D Seite 15 FB 5

16 Übersicht Verzweigungen Schleifen Sprunganweisungen FH D Seite 16 FB 5

17 Schleifen Schleifen Wiederholung einer oder mehrerer Anweisungen Realisierung jeglicher Formen von "Zählen" Anzahl Schleifendurchläufe Vorgegeben oder im Programmverlauf ermittelt Abbruchbedingung steuert die Schleifendurchläufe ist ein logischer Ausdruck (liefert wahr oder falsch) wird vor oder nach jedem Durchlauf überprüft 3 Arten von Schleifen while - Schleife do..while - Schleife for - Schleife Jochen Seelhammer - Fotolia.com FH D Seite 17 FB 5

18 while - Schleife while - Schleife Vorprüfende bzw. abweisende Schleife Syntax der while - Schleife ausdruck falsch while (ausdruck) anweisung; Schleifendurchläufe Abbruchbedingung wird vor Eintritt geprüft Kein Schleifendurchlauf wenn ausdruck falsch Anzahl der Schleifendurchläufe 0..n wahr anweisung while (a < b) // Anweisung x a = a + 1; printf("a=%d",a); FH D Seite 18 FB 5

19 while - Schleife Beispiel Auszugeben sind alle Integer-Zahlen von 0 bis 4 #include <stdio.h> int main() int i = 0; while (i <= 4) printf ("i = %d\n", i); i = i + 1; ; return 0; Was geschieht, wenn i zu Programmbeginn auf 5 gesetzt wird? FH D Seite 19 FB 5

20 do..while - Schleife do..while - Schleife Nachprüfende bzw. nicht-abweisende Schleife Syntax der do..while - Schleife anweisung do anweisung; while (ausdruck); ausdruck wahr Anzahl Schleifendurchläufe Abbruchbedingung wird nach Durchlauf geprüft Schleife wird mindestens einmal durchlaufen Anzahl der Schleifendurchläufe 1..n falsch do // Anweisung x a = a + 1; while (a > b); printf("a=%d",a); FH D Seite 20 FB 5

21 do..while - Schleife Beispiel Auszugeben sind alle Integer-Zahlen von 0 bis 4 #include <stdio.h> int main() int i = 0; do printf ("i = %d\n", i); i = i + 1; while (i <= 4); return 0; Was geschieht, wenn i zu Programmbeginn auf 5 gesetzt wird? FH D Seite 21 FB 5

22 for - Schleife for - Schleife Vorprüfende bzw. abweisende (Zähl-) Schleife Syntax for (ausdruck_1; ausdruck_2; ausdruck_3) anweisung; ausdruck_1: Laufindex, Initialisierung ausdruck_2: Abbruchkriterium ausdruck_2: Laufindex, Inkrementierung / Dekrementierung ausdruck wahr anweisung falsch Funktion Init des Laufindexes bei Schleifeneintritt (ausdruck_1) Auswertung der Abbruchbedingung (ausdruck_2) Wenn ausdruck_2 wahr ist, dann durchlaufe die Schleife und schalte dem Laufindex weiter (ausdruck_3) Laufindex Inkrementierung (z.b. i++) oder Dekrementierung (z.b. i--) for (i=0;i<n;i++) // Anweisung x a = a + i; ; printf("a=%d",a); FH D Seite 22 FB 5

23 for - Schleife Beispiel Auszugeben sind alle Integer-Zahlen von 0 bis 4 #include <stdio.h> int main() int i; for (i=0; i<=4; i++) printf ("i = %d\n", i); return 0; Keine separate Anweisung für die Laufvariable i (i = i+1 bzw. i++) FH D Seite 23 FB 5

24 Hörsaalübung Übung 1 Ausgabe aller Großbuchstaben (A.. Z) #include <stdio.h> int main() int i; for (i='a'; i<='z'; i++) printf ("%c ", i); return 0; #include <stdio.h> int main() int i = 'A'; do printf ("%c ", i++); while (i<= 'Z'); return 0; Beide Schleifen sind gleichwertig für die Lösung dieser Aufgabe. Präferenz hat die for Schleife, da übersichtlicher. FH D Seite 24 FB 5

25 Hörsaalübung Übung 2 Gegeben sei eine Variable name als ein Array mit 21 Feldern Es ist die Länge eines in name gespeicherten Vornamens zu ermitteln #include <stdio.h> int main() char name[21] = "Snoopy"; int i = 0; while (name[i]!= '\0') printf ("name[%i] = %c\n", i, name[i]); i = i + 1; printf ("%s hat %d Buchstaben", name, i); return 0; // Pruefung auf NUL-Byte // Laufindex erhoehen FH D Seite 25 FB 5

26 Hörsaalübung Übung 3 Aufforderung zur Eingabe eines kleinen Buchstabens Eingabeaufforderung ist bei Falscheingabe (z.b. einer Zahl) zu wiederholen #include <stdio.h> int main() char eingabe; do printf ("Eingabe Kleinbuchstabe: "); // Eingabeaufforderung eingabe = getchar(); // Einlesen von der Tastatur fflush(stdin); // Tastaturbuffer loeschen while ( (eingabe < 'a') (eingabe > 'z') ); printf ("\nes wurde der Buchstabe %c eingegeben", eingabe); return 0; FH D Seite 26 FB 5

27 Verschachtelte Schleifen Verschachtelte Schleifen Keine Einschränkungen für Anweisungen im Schleifenkörper Somit können auch Schleifen in einer Schleife vorkommen Schleifen werden durch übergeordnete Schleifen kontrolliert for (...) for (...) for (...) Verschachtelungstiefe Ausgedrückt durch die Anzahl an Ebenen abhängiger Schleifen Prinzipiell keine Begrenzung Mehr als drei Ebenen führen zu schwer verständlichem Code Uhrenvergleich ;-) Äußere Schleife entspricht dem Stundenzeiger Innere Schleife entspricht dem Minutenzeiger Während der Stundenzeiger um eine Einheit vorrückt, absolviert der Minutenzeiger einen kompletten Umlauf. Heino Pattschull - Fotolia.com FH D Seite 27 FB 5

28 Verschachtelte Schleifen Beispiel Ausgabe der Ziffern 0 bis 49 in 5 Zeilen #include <stdio.h> int main() int i, j; // Laufindizes der beiden Schleifen for (i=0; i <5; i++) for (j=0; j< 10; j++) printf("%d%d ", i, j); printf ("\n"); return 0; // aeussere Schleife, vgl. std-zeiger // innere Schleife, vgl. min-zeiger FH D Seite 28 FB 5

29 Endlosschleife Endlosschleife Ausführung einer Schleife ohne Unterbrechung Beabsichtigte Endlosschleifen Steuerungs-Algorithmen (z.b. Maus, Multitaskingsysteme) Applets (z.b. animierte Applets auf Webseiten) Unbeabsichtigte Endlosschleifen Mögliche Programmierfehler Schleife ohne Abbruchbedingung Schleife mit Abbruchbedingung, aber unerfüllbar Mögliche Auswirkungen Inaktivität des Programms dem Benutzer gegenüber ("Einfrieren") Absturz des Rechners durch hohe Ressourcenauslastung Endlosschleifen im täglichen Leben Akustischer Kurzschluss, Bild im Bild Wiederholte Ausgabe/Aufnahme eines Schallmusters/Bildes anweisungen schleife anweisungen WoGi - Fotolia.com FH D Seite 29 FB 5

30 Endlosschleife Beispiele 3 Endlosschleifen 1 beabsichtigt, 2 unbeabsichtigt (Fehler) Endlosschleife #1 Endlosschleife #2 Endlosschleife #3 #include <stdio.h> int main() while (1) printf("endlos"); return 0; #include <stdio.h> int main() int i=0; while (i < 10) printf("i=%d",i); return 0; #include <stdio.h> int main() int i=0; while (i < 10); printf("i=%d",i); return 0; Finden Sie die Fehler bei Endlosschleife #2 und #3 FH D Seite 30 FB 5

31 Übersicht Verzweigungen Schleifen Sprunganweisungen FH D Seite 31 FB 5

32 continue Sprung aus einer Schleife Abbruch eines Schleifendurchlaufs Restlicher Code im Schleifenblock wird übersprungen Schleife wird mit nächster Iteration fortgeführt Syntax while (ausdruck)... continue;... continue; Beispiel Summenbildung über gerade ganzzahlige Zahlen von i bis 10 while (i < 11) i = i + 1; if (i % 2) continue; s = s + i; printf("i = %d s = %d\n", i, s); // Module-Operation // Abbruch der Iteration bei ungeraden Zahlen FH D Seite 32 FB 5

33 break Sprung aus switch - Anweisung oder Schleife switch: Verlassen der switch - Anweisung Schleife: Verlassen der Schleife, keine weitere Iteration Programm wird mit nächster Anweisung fortgeführt Syntax while (ausdruck)... break; break; Beispiel Summenbildung über ganzzahlige Zahlen while (i < 11) i = i + 1; s = s + i; if (s > 10) break; printf("i = %d s = %d\n", i, s); FH D Seite 33 FB 5

34 return Rücksprung aus einer Funktion Rücksprung in die aufrufende Funktion, bzw. an die aufrufende Stelle Optional: Übergabe eines (Rückgabe-) Wertes an die aufrufende Funktion Rücksprung an jeder Stelle möglich, vorzugsweise am Ende einer Funktion Syntax return ausdruck; ausdruck: Datentyp ist festgelegt in Funktionsdefinition Beispiel Rücksprung an die aufrufende Stelle, bzw. Funktion in main() // Anweisungen funktion_a; int funktion_a ergebnis = summe(1,3); return; FH D Seite 34 FB 5

35 goto Sprung innerhalb einer Funktion Sprungziel muss durch eine Marke gekennzeichnet sein Programm wird nach der Sprungmarke fortgesetzt Syntax goto sprungmarke; : anweisung_2 sprungmarke: anweisung; sprungmarke sprungmarke: Sprungadresse innerhalb einer Funktion anweisung_3 Verwendung von goto anweisung_1 goto Unüberlegter Einsatz von goto führt leicht zu unübersichtlichen Programmen Einziger sinnvolle Einsatz: Abbruch einer mehrfach geschachtelten Schleife Formal ist goto niemals notwendig Einsatz von Schleifen anstelle von goto Sprunganweisungen mit goto widersprechen den Prinzipien der strukturierten Programmierung. FH D Seite 35 FB 5

36 goto Beispiel Auszugeben sind alle Zahlen von 0 bis 4 #include <stdio.h> int main() int i = 0; #include <stdio.h> int main() int i = 0; ohne goto anfang: printf("i = %i\n", i++); if (i <= 4) goto anfang; return 0; while (i <= 4) printf("i = %i\n", i++); return 0; Formal ist goto niemals notwendig. Jeder Algorithmus lässt sich durch Verzweigungen und Schleifen realisieren! FH D Seite 36 FB 5

37 Kreisverkehr? Endlosschleife! Klaus Eppele - Fotolia.com FH D Seite 37 FB 5

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

Schachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A

Schachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A 2.4.6. Kontrollstrukturen if-anweisung: Bedingte Ausführung (Verzweigung) 2 Varianten: if (Bedingung) Anweisung (Anweisung = einzelne Anweisung oder Block) Bedeutung: die Anweisung wird nur ausgeführt,

Mehr

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

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf  Seite 1 von 25 Kapitel 9 Schleifen Seite 1 von 25 Schleifen - Schleifen werden zur wiederholten Ausführung von Anweisungen verwendet. - Es werden drei Arten von Schleifen unterschieden: o for -Schleife o while -Schleife

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

C- Kurs 04 Anweisungen

C- Kurs 04 Anweisungen C- Kurs 04 Anweisungen Dipl.- Inf. Jörn Hoffmann jhoffmann@informa@k.uni- leipzig.de Universität Leipzig Ins@tut für Informa@k Technische Informa@k Ausdrücke Institut für Informatik Anweisungen C-Programm

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

Kontrollstrukturen -- Schleifen und Wiederholungen

Kontrollstrukturen -- Schleifen und Wiederholungen Kontrollstrukturen -- Schleifen und Wiederholungen Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14

Mehr

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration Selektion Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if

Mehr

(Aufgaben zu Wertzuweisungen siehe Vorlesungsbeilage S. 49)

(Aufgaben zu Wertzuweisungen siehe Vorlesungsbeilage S. 49) Anweisungen Eine Anweisung ist eine in einer beliebigen Programmiersprache abgefaßte Arbeitsvorschrift für einen Computer. Jedes Programm besteht aus einer bestimmten Anzahl von Anweisungen. Wir unterscheiden

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 4 C-Anweisungen...4-2 4.1 Ausdrucksanweisungen...4-3 4.2 Zusammengesetzte Anweisungen (Anweisungsblöcke)...4-3 4.3 Schleifenanweisungen...4-4 4.3.1 while - Schleife...4-4 4.3.2 do - Schleife...4-5

Mehr

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

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

Mehr

2.4 Schleifen. Schleifen unterscheiden sich hinsichtlich des Zeitpunktes der Prüfung der Abbruchbedingung:

2.4 Schleifen. Schleifen unterscheiden sich hinsichtlich des Zeitpunktes der Prüfung der Abbruchbedingung: 2.4 Schleifen Schleifen beschreiben die Wiederholung einer Anweisung bzw. eines Blocks von Anweisungen (dem Schleifenrumpf) bis eine bestimmte Bedingung (die Abbruchbedingung) eintritt. Schleifen unterscheiden

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

C++ Teil Schleifen. Man kann bestimme Anweisungen in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen.

C++ Teil Schleifen. Man kann bestimme Anweisungen in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen. C++ Teil 3 3.3 Schleifen Man kann bestimme en in einem Programm mehrfach ausführen lassen. Dazu gibt es in C++ verschiedene Schleifen. for-schleife for-schleife while-schleife do-while-schleife for ( Ausdruck1;

Mehr

Java: Syntax-Grundlagen III

Java: Syntax-Grundlagen III Java: Syntax-Grundlagen III Verzweigungen, bedingte Anweisungen Eines der wesentlichen Merkmale einer Programmiersprache ist ihre Fähigkeit, Operationen situationsbedingt ausführen zu können, d.h. eine

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

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

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

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

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

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

Mehr

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

2 Teil 2: Nassi-Schneiderman

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

Mehr

Einführung in die Programmierung II. 3. Kontrollstrukturen

Einführung in die Programmierung II. 3. Kontrollstrukturen Einführung in die Programmierung II 3. Kontrollstrukturen Thomas Huckle, Stefan Zimmer 2.5.2007-1- Anweisungen: was bisher geschah Bisher kennen wir zwei Formen von Anweisungen Ein Ausdruck mit Semikolon

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren 3. Kontrollstrukturen 09.11.2016 Jun.-Prof. Dr.-Ing. Anne Koziolek Version 1.1 ARBEITSGRUPPE ARCHITECTURE-DRIVEN REQUIREMENTS ENGINEERING (ARE) INSTITUT FÜR PROGRAMMSTRUKTUREN UND

Mehr

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

INP (05) Prof. Dr.-Ing. S. Gössner. University of Applied Sciences Lippe & Höxter

INP (05) Prof. Dr.-Ing. S. Gössner. University of Applied Sciences Lippe & Höxter INP (05) 1 of 16 INP (05) Prof. Dr.-Ing. S. Gössner University of Applied Sciences Lippe & Höxter INP (05) 2 of 16 Inhalt INP (05) Inhalt Kontrollanweisungen if - Anweisung if... else - Anweisung if..

Mehr

4.4 Imperative Algorithmen Prozeduren

4.4 Imperative Algorithmen Prozeduren 4.4.2 Prozeduren Der Wert eines Ausdrucks u in Zustand z Z lässt sich damit auch leicht definieren (jetzt W Z statt W σ ) Dazu erweitern wir die rekursive Definition von Folie 57 (Wert eines Ausdrucks):

Mehr

Einstieg in die Informatik mit Java

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

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren 3. Kontrollstrukturen 04.11.2015 Prof. Dr. Ralf H. Reussner Version 1.1 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD),

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

Javakurs für Anfänger

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

Mehr

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

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen Neben der Sequenz (Aneinanderreihung von Anweisungen)

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der Java-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 3: Kontrollstrukturen Einfache Anweisungen Anweisungsblöcke Steuerung

Mehr

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen Neben der Aneinanderreihung von Anweisungen (Sequenz)

Mehr

Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht:

Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht: Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht: o Klasse 0: kein Rabatt o Klasse 1: 4,5 % Rabatt o Klasse 2: 8,75% Rabatt

Mehr

3. Grundanweisungen in Java

3. Grundanweisungen in Java 3. Grundanweisungen in Java Die Grundanweisungen entsprechen den Prinzipien der strukturierten Programmierung 1. Zuweisung 2. Verzweigungen 3. Wiederholungen 4. Anweisungsfolge (Sequenz) Die Anweisungen

Mehr

Programmiertechnik Kontrollstrukturen

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

Mehr

Intensivübung zu Algorithmen und Datenstrukturen

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

Mehr

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

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

2.5 Programmstrukturen Entscheidung / Alternative

2.5 Programmstrukturen Entscheidung / Alternative Entscheidung, ob der folgende Anweisungsblock ausgeführt wird oder ein alternativer Block Entscheidung ob die Bedingung wahr oder falsch (True / False) ist Syntax: 2.5 Programmstrukturen 2.5.1 Entscheidung

Mehr

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

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

Mehr

3. Anweisungen und Kontrollstrukturen

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

Mehr

6. Iteration (Schleifenanweisungen)

6. Iteration (Schleifenanweisungen) 6. Iteration (Schleifenanweisungen) Java-Beispiel: TemperatureTable.java K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 9. Nov. 2015 2 Schwerpunkte While-Anweisung: "abweisende"

Mehr

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

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

Mehr

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

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

Mehr

Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen

Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen Einheit Datentypen in der Programmiersprache C Schwerpunkt: Elementare (arithmetische) Datentypen Kurs C/C++ Programmierung, WS 2008/2009 Dipl.Inform. R. Spurk Arbeitsgruppe Programmierung FR 6.2 Informatik

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

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

Ü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

C++ - Einführung in die Programmiersprache Schleifen

C++ - Einführung in die Programmiersprache Schleifen C++ - Einführung in die Programmiersprache Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Schleifen Iterationsanweisungen. Wiederholung von Anweisungsblöcken.

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Kontrollstrukturen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Kontrollstrukturen Wichtig: bedingte Ausführung

Mehr

Kapitel 5. Programmierkurs. Kontrollstrukturen. Arten von Kontrollstrukturen. Kontrollstrukturen Die if-anweisung Die switch-anweisung

Kapitel 5. Programmierkurs. Kontrollstrukturen. Arten von Kontrollstrukturen. Kontrollstrukturen Die if-anweisung Die switch-anweisung Kapitel 5 Programmierkurs Birgit Engels, Anna Schulze ZAIK Universität zu Köln Kontrollstrukturen Die if-anweisung Die switch-anweisung Die for-schleife Die while-schleife Die do-schleife WS 7/8 /55 Kontrollstrukturen

Mehr

Einführung in die Programmierung für Physiker. Die Programmiersprache C Kontrollstrukturen

Einführung in die Programmierung für Physiker. Die Programmiersprache C Kontrollstrukturen Einführung in die Programmierung für Physiker Die Programmiersprache C Kontrollstrukturen Marc Wagner Institut für theoretische Physik Johann Wolfgang Goethe-Universität Frankfurt am Main WS 2017/18 Anweisungen

Mehr

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser

Mehr

6. Iteration (Schleifenanweisungen)

6. Iteration (Schleifenanweisungen) Schwerpunkte While-: "abweisende" Schleife 6. Iteration (Schleifenanweisungen) Java-Beispiel: TemperatureTable.java Do-while-: "nichtabweisende" Schleife For-: zählergesteuerte Schleife Klassifikation

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

Arbeitsblätter für Algorithmierung und Strukturierung C #

Arbeitsblätter für Algorithmierung und Strukturierung C # Prof. Dr.- Ing. Ch. Wahmkow Fachbereich Maschinenbau Fachhochschule Stralsund Arbeitsblätter für Algorithmierung und Strukturierung C # Inhalt : Struktogramme, Beispiele und Erläuterungen - Sequenz - vollständige

Mehr

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

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

Mehr

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

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

Grundlagen der Programmiersprache C für Studierende der Naturwissenschaften

Grundlagen der Programmiersprache C für Studierende der Naturwissenschaften Grundlagen der Programmiersprache C für Studierende der Naturwissenschaften Teil 3: Anweisungen, Blöcke und Programmfluss Martin Nolte Abteilung für Angewandte Mathematik Universität Freiburg i. Br. Vorlesung

Mehr

RO-Tutorien 3 / 6 / 12

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

Mehr

Schleifen: Immer wieder dasselbe tun

Schleifen: Immer wieder dasselbe tun Schleifen: Immer wieder dasselbe tun Bei einer Schleife werden Anweisungen immer wieder ausgeführt, solange die Bedingung wahr ist. Dafür muss man eine Variable immer wieder ändern, solange bis eine Überprüfung

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

Algorithmen zur Datenanalyse in C++

Algorithmen zur Datenanalyse in C++ Algorithmen zur Datenanalyse in C++ Hartmut Stadie 16.04.2012 Algorithmen zur Datenanalyse in C++ Hartmut Stadie 1/ 39 Einführung Datentypen Operatoren Anweisungssyntax Algorithmen zur Datenanalyse in

Mehr

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens Grundlagen von C Jonas Gresens Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität

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

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

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

Mehr

1.8.5 Wiederholungen. Beispiele Unendliche Schleife: 1.8 Kontrollstrukturen 75. ( Bedingung ) AnweisungOderBlock. ja Anweisung. Bedingung erfüllt?

1.8.5 Wiederholungen. Beispiele Unendliche Schleife: 1.8 Kontrollstrukturen 75. ( Bedingung ) AnweisungOderBlock. ja Anweisung. Bedingung erfüllt? 1.8 Kontrollstrukturen 75 1.8.5 Wiederholungen Häufig muss die gleiche Teilaufgabe oft wiederholt werden. Denken Sie nur an die Summation von Tabellenspalten in der Buchführung oder an das Suchen einer

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung 11. Vorlesung 14.06.2017 1 Schleifen 2 do...while do block while ( bedingung ); block: eine Anweisung oder Anweisungen in { block bed JA NEIN 3 while while ( bedingung ) block

Mehr

Flussdiagramm / Programmablaufplan (PAP)

Flussdiagramm / Programmablaufplan (PAP) Flussdiagramm / Programmablaufplan (PAP) Basissysmbole Grenzstelle (Anfang, Zwischenhalt oder Ende des Programms/Algorithmus) Verbindung Zur Verdeutlichung der Ablaufrichtung werden Linien mit einer Pfeilspitze

Mehr

Programmieren für Wirtschaftswissenschaftler SS 2015

Programmieren für Wirtschaftswissenschaftler SS 2015 DEPARTMENT WIRTSCHAFTSINFORMATIK FACHBEREICH WIRTSCHAFTSWISSENSCHAFT Programmieren für Wirtschaftswissenschaftler SS 2015 Lucian Ionescu Blockveranstaltung 16.03 27.3.2015 3. Verzweigungen und Schleifen

Mehr

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 2 am 04.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Grundlagen der Programmierung Teil1 Einheit III Okt. 2010

Grundlagen der Programmierung Teil1 Einheit III Okt. 2010 Grundlagen der Programmierung Teil1 Einheit III - 22. Okt. 2010 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Einschub Bevor wir mit den

Mehr

4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan)

4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan) 4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan) 4. Ablaufsteuerung 4-1 4.1 Anweisungen Ein Programm besteht

Mehr

ModProg 15-16, Vorl. 5

ModProg 15-16, Vorl. 5 ModProg 15-16, Vorl. 5 Richard Grzibovski Nov. 18, 2015 1 / 29 Übersicht Übersicht 1 Logische Operationen 2 Priorität 3 Verzweigungen 4 Schleifen 2 / 29 Logische Werte Hauptkonzept: Besitzt ein C-Ausdruck

Mehr

Grundlagen der Programmierung

Grundlagen der Programmierung Grundlagen der Programmierung 7. Vorlesung 18.05.2016 1 Konstanten Ganzzahlkonstante Dezimal: 42, 23, -2 Oktal (0 vorangestellt): 052 Hexadezimal (0x vorangestellt): 0x2A Gleitkommazahlen: 3.1415, 2.71,

Mehr

Arrays. Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss

Arrays. Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss Arrays FTI 41 2005-09-09 Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss z.b. Dim Werte(x) As Single. Wobei

Mehr

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

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

Mehr

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Textausgabe per printf Die Funktion printf ist kein Bestandteil der C Sprache sondern gehört zur C Bibliothek. printf

Mehr

Grundlagen der Programmierung Teil1 Einheit III Okt. 2009

Grundlagen der Programmierung Teil1 Einheit III Okt. 2009 Grundlagen der Programmierung Teil1 Einheit III - 23. Okt. 2009 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Ausdrücke & Anweisungen

Mehr

Programmieren I. Kapitel 5. Kontrollfluss

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

Mehr

Zeichendarstellung. Zeichen sind Zahlen (in C) Zeichen und switch

Zeichendarstellung. Zeichen sind Zahlen (in C) Zeichen und switch darstellung Arbeiten mit darstellung werden im Computer durch (kleine) Zahlen dargestellt in C können im Datentyp char gespeichert werden, dieser umfasst ein Byte und gilt als Ganzzahltyp darstellung Arbeiten

Mehr

Programmieren in C / C++ Grundlagen C 4

Programmieren in C / C++ Grundlagen C 4 Programmieren in C / C++ Grundlagen C 4 Hochschule Fulda FB AI Wintersemester 2016/17 http://c.rz.hs-fulda.de Peter Klingebiel, HS Fulda, FB AI Anweisungen Anweisung im allgemeinsten Sinn: Programmieren

Mehr

Übungspaket 9 Logische Ausdrücke

Übungspaket 9 Logische Ausdrücke Übungspaket 9 Logische Ausdrücke Übungsziele: Skript: 1. Umgang mit logischen Vergleichs- und Verknüpfungsoperatoren 2. Bilden einfacher und komplexer logischer Ausdrücke Kapitel: 22 Semester: Wintersemester

Mehr

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1 Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur

Mehr

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

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

Mehr

3 KONTROLLSTRUKTUREN ALLGEMEINES

3 KONTROLLSTRUKTUREN ALLGEMEINES 3 KONTROLLSTRUKTUREN ALLGEMEINES Leitideen: Die Syntax der Kontrollstrukturen in C++ soll möglichst wenige reservierte Worte verwenden, daher werden Bedingungen geklammert und mehrere abhängige Anweisungen

Mehr

Praxisorientierte Einführung in C++ Lektion: "Kontrollstrukturen"

Praxisorientierte Einführung in C++ Lektion: Kontrollstrukturen Praxisorientierte Einführung in C++ Lektion: "Kontrollstrukturen" Christof Elbrechter Neuroinformatics Group, CITEC April 24, 2014 Christof Elbrechter Praxisorientierte Einführung in C++ April 24, 2014

Mehr

Algorithmen und ihre Programmierung -Teil 2-

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

Mehr

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

Sprachkonstrukte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg

Sprachkonstrukte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg Sprachkonstrukte Einführung in Java Folie 1 von 20 12. Mai 2011 Ivo Kronenberg Inhalt Kommentare Identifier (Bezeichner) Variablen Numerische Ausdrücke und Typen Kontrollstrukturen Verzweigungen Bedingungen

Mehr

Kleine Anekdote. Schleifen in C

Kleine Anekdote. Schleifen in C Kleine Anekdote 1786 kam ein Junge mit 9 Jahren in die Volksschule. Um die Schüler zu beschäbigen, gab der Lehrer die Aufgabe alle Zahlen von 1 bis 100 zusammenzuzählen. Dieser neunjährige Junge lieferte

Mehr

Tag 3 Repetitorium Informatik (Java)

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

Mehr

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

Schleifen dienen dazu, bestimmte Anweisungen immer wieder abzuarbeiten.

Schleifen dienen dazu, bestimmte Anweisungen immer wieder abzuarbeiten. Folge 6 WHILE-Schleife JAVA 6.1 Schleifen Schleifen dienen dazu, bestimmte Anweisungen immer wieder abzuarbeiten. Zu einer Schleife gehören die Schleifenbedingung und der Rumpf. Die Schleifenbedingung

Mehr