C++ Programmierkurs. Variablen. Wintersemester 04 / 05. Christian Hagemeier. mittwochs 17 18:30 Uhr Hörsaal II der Physikalischen Institute
|
|
- Götz Beyer
- vor 7 Jahren
- Abrufe
Transkript
1 C++ Programmierkurs Wintersemester 0 / 05 Christian Hagemeier Lehrstuhl Prof. Dr. Schrader Institut für Informatik Universität zu Köln 1 Variablen Stelle im Speicher, wo ein Wert von einem bestimmten Datentyp gespeichert werden kann Variablen müssen vor deren Nutzung mit Name und Datentyp definiert werden: int zahl1; int zahl2; 3 mittwochs 17 18:30 Uhr Hörsaal II der Physikalischen Institute NEU: Gültigkeitsbereich von Variablen: Variablen sind immer vom Ort der Definition bis zum Ende dieses Programmblocks (siehe {} ) gültig! Beispiel folgt auf Folie 52f. (Programmcode zum Befehl break) Gliederung der Vorlesung 2 Fehlerarten : Organisatorisches und Einführung : Einführung und Kontrollstrukturen : Kontrollstrukturen : Funktionen : Vektoren, Zeiger und Strings 2.11.: Klassen und Datenabstraktion : Klassen : Überladen von Operatoren : Vererbung : Polymorphismus : Stream Ein /Ausgabe : Datei Ein /Ausgabe : Standard Template Library : Templates : Diverse Feinheiten Syntaxfehler Compilerfehler tritt dann auf, wenn der Compiler einen Befehl nicht erkennen kann Häufigste Ursachen (neben Tippfehlern): vergessenes Semikolon am Ende eines Befehls vergessene Klammern benutzte Variable nicht definiert logische Fehler Laufzeitfehler fatale logische Fehler führen zum Programmabbruch Beispielsweise Division durch 0 nichtfatale logische Fehler führen nicht zum Programmabbruch, resultieren aber meist in fehlerhaften Ergebnissen häufig bei Verwendung von = an Stelle von ==
2 2. Kontrollstrukturen 5 Kontrollflußdiagrammumsetzung Einführung 2.2 Arten von Kontrollstrukturen 2.3 if Auswahlstruktur 2. if/else Auswahlstruktur 2.5 while Wiederholungsstruktur 2.6 Zählergesteuerte Wiederholung 2.7 Wiederholung mit Abbruchwert 2.8 Zuweisungen in C for Wiederholungsstruktur 2.10 switch Mehrfachauswahl Struktur 2.11 do/while Wiederholungsstruktur 2.12 break und continue 2.13 Logische Operatoren 2.1 Zusammenfassung Entscheidung kann auf Grund eines jeden Ausdrucks gefällt werden. Null falsch (false) Nichtnull wahr (true ) Beispiel: 3 - ist wahr (true) 2.2 Arten von Kontrollstrukturen 6 Kontrollflußdiagrammumsetzung 8 Sequentielle Ausführung Befehle werden in vorgegebener Reihenfolge abgearbeitet Kontrollflußsprünge Nächster ausgeführter Befehl nicht nächster Befehl in Quelltext 3 Kontrollstrukturen: 1. sequentielle Struktur Programm führt aufeinanderfolgende Befehle in angegebener Reihenfolge aus 2. Auswahlstrukturen if, if/else, switch 3. Wiederholungsstrukturen while, do/while, for
3 Gruppierung von Befehlen 9 Kontrollflußdiagramm while 11 durch mehrere Befehle in einem paar geschweifter Klammern: if ( punkte > 60 ) cout << Bestanden. << endl; else { cout << Durchgefallen. << endl; cout << Der Kurs muß wiederholt werden. << endl; } 2.5 while Wiederholungsstruktur Zählergesteuerte Wiederholung 12 Wiederholungsstruktur: Aktion wird solange ausgeführt wie Bedingung wahr bleibt Pseudocode: Solange noch Gegenstände auf meinem Einkaufszettel stehen Kaufe nächsten Gegenstand und streiche ihn vom Zettel while Bedingung bricht ab, sobald Bedingung nicht mehr erfüllt ist Beispiel in C++: int product = 2; while ( product <= 1000 ) product = 2 * product; Schleife wird durchlaufen bis Zähler bestimmten Wert erreicht Anzahl an Wiederholungen ist fest vorgegeben Beispiel: Eine Kurs mit 10 Studenten hat einen Test geschrieben. Die Punktzahlen (ganze Zahlen zwischen 0 und 100) der Bewertung sind verfügbar. Ermittle die durchschnittliche Punktzahl aller Kursteilnehmer in diesem Test.
4 Pseudocode für Durchschnittspunktzahl 13 C++ Code für Durchschnittspunktzahl (2) 15 Setze Summe auf Null Setze Anzahl auf Null Solange Anzahl kleiner oder gleich Zehn ist Lies nächste Punktzahl ein Füge ihn Summe hinzu Zähle Anzahl eins hoch Setze Kursdurchschnitt auf Summe / 10 Ausgabe Kursdurchschnitt 21 // Verarbeitungsphase 22 while ( anzahl <= 10 ) { // 10 Schleifendurchläufe 23 cout << Gibt Punktzahl ein: "; // Eingabeaufforderung 2 cin >> punkte; // lies Punkte vom Benutzer 25 summe = summe + punkte; // addiere Punkte zu Summe 26 anzahl = anzahl + 1; // erhöhe Zähler 27 } 28 Der Zähler wird bei jedem Schleifen - 29 // Beendigung durchlauf erhöht. Nach dem durchschnitt = summe / 10; Durchlauf // ganzzahlige beendet er division die Schleife // Ergebnis anzeigen 33 cout << Durchschnittspunktzahl ist " << durchschnitt << endl; 3 35 return 0; // indicate program ended successfully } // end function main C++ Code für Durchschnittspunktzahl (1) 1 Ausgabe von Durchschnittspunktzahl 16 1 // Fig. 2.7: fig02_07.cpp 2 // Class average program with counter-controlled repetition. 6 using std::cin; 7 using std::endl; 8 9 // function main begins program execution 10 int main() 11 { 12 int summe; // Summe der bisher eingegebenen Punktzahlen 13 int anzahl; // Nummer der nächsten eingegebenen Punktzahl 1 int punkte; // gerade eingegebene Punktzahl 15 int durchschnitt; // Durchschnitt der Punktzahlen // Initialisierungsphase 18 summe = 0; // initialisiere Summe 19 anzahl = 1; // initialisiere Schleifenzähler 20 Gib Punktzahl ein: 98 Gib Punktzahl ein: 76 Gib Punktzahl ein: 71 Gib Punktzahl ein: 87 Gib Punktzahl ein: 83 Gib Punktzahl ein: 90 Gib Punktzahl ein: 57 Gib Punktzahl ein: 79 Gib Punktzahl ein: 82 Gib Punktzahl ein: 9 Durchschnittspunktzahl ist 81
5 2.7 Wiederholung mit Abbruchwert 17 Verfeinerungsschritte 19 Sei das Problem nun wie folgt: Entwickle ein Durchschnittsermittlungsprogramm das eine nicht vorher bekannte Menge an Punktzahlen bearbeitet. Probleme: Unbekannte Anzahl an Punktzahlen Wie soll Programm wissen, wann Ende ist? Abbruchwert bedeutet Ende der Daten Schleife bricht nach Eingabe des Abbruchwerts ab Abbruchwert muß so gewählt werden, daß er nicht mit regulärer Eingabe verwechselt werden kann! Hier z.b. -1 Verfeinere Initialisierungsphase: Initialisiere Variablen wird zu Initialisiere Summe auf Null Initialisiere Anzahl auf Null Verarbeitungsphase: Lies Punkte ein, summiere und zähle sie wird zu Lies erste Punktzahl ein (evtl. Abbruchwert) Solange Benutzer noch nicht Abbruchwert eingegeben hat Füge diese Zahl in Gesamtsumme ein Zähle eins zur Anzahl hinzu Lies nächste Punktzahl ein (evtl. Abbruchwert) Algorithmenentwurf: Top Down 18 Verfeinerungsschritte 20 schrittweise Verfeinerung Beginne mit Pseudocode für oberste (=ungenaueste) Ebene: Ermittle den Kursdurchschnitt des Test Verfeinere in kleinere Teile: Initialisiere Variablen Lies Punkte ein, summiere und zähle sie Durchschnitt berechnen und ausgeben Beendigung Durchschnitt berechnen und ausgeben wird zu Wenn der Zähler nicht Null ist Setze Durchschnitt auf Punktzahl / Anzahl Ausgabe Durchschnitt Sonst Ausgabe Es wurden keine Punktzahlen eingegeben!
6 Quellcode Durchschnittsberechnung 2 (1) 21 Quellcode Durchschnittsberechnung 2 (3) 23 1 // Fig. 2.9: fig02_09.cpp 2 // Class average program with sentinel-controlled repetition. 6 using std::cin; 7 using std::endl; 8 using std::fixed; // Fließkommaausgabe im Format #include <iomanip> // Stream-Manipulatoren using std::setprecision; // Setzt numerische Ausgabeprzision 13 1 // function main begins program execution 15 int main() 16 { Datentypdouble zum Speichern 17 int summe; // Summe der Punkte von Dezimalzahlen. 18 int anzahl; // Anzahl eingegebener Punktezahlen 19 int punkte; // aktuelle Punktzahl double durchschnitt; // Fließkommazahl zur Durchschnittsberechnung 22 2 // Beendigung 3 // Wenn Benutzer mindestens eine Punktzahl eingegeben hat... if ( anzahl > 0 ) { 5 6 // berechne Durchschnitt aller eingegebenen Punktzahlen 7 durchschnitt = static_cast<double>( summe ) / anzahl; 8 9 // zeige Durchschnitt mit zwei Nachkommastellen Genauigkeit an 50 cout << Durchschnittspunktzahl ist " << setprecision( 2 ) 51 << fixed << durchschnitt << endl; } // end if part of if/else 5 55 else // wenn keine Punktzahlen eingegeben wurden gib entspr. aus 56 cout << Es wurden keine Punktzahlen eingegeben!" << endl; return 0; // indicate program ended successfully } // end function main Quellcode Durchschnittsberechnung 2 (2) 23 // Initialisierungsphase 2 summe = 0; // initialisiere Summe 25 anzahl = 0; // initialisiere Anzahl // Verarbeitungsphase 28 // lies erste Zahl vom Benutzer ein 29 cout << Gib Punkte ein, -1 zum Beenden: "; // Eingabeaufforderung 30 cin >> punkte; // Lies Punkte vom Benutzer // wiederhole solange eingegeben Abbruchwert nicht 33 while ( punkte!= -1 ) { 3 summe = summe + punkte; // füge Punkte zur Summe hinzu 35 anzahl = anzahl + 1; // erhöhe Zähler cout << Gib Punkte ein, zum Beenden: "; // Eingabeaufforderung cin >> punkte; // Lies Punkte vom Benutzer 39 0 } // end while 1 22 Quellcode Durchschnittsberechnung 2 (3) static_cast<double>() behandelt summe 2 // Beendigung 3 // Wenn Benutzer mindestens temporär eine Punktzahl als double eingegeben (casting). hat... if ( anzahl > 0 ) { Benötigt, da ganzzahlige Division Rest abschneidet. 5 6 // berechne Durchschnitt aller eingegebenen Punktzahlen 7 durchschnitt = static_cast<double>( summe ) / anzahl; 8 9 // zeige Durchschnitt mit zwei Nachkommastellen Genauigkeit an 50 cout << Durchschnittspunktzahl ist " << setprecision( 2 ) 51 << fixed << durchschnitt << endl; 52 setprecision(2)gibt zwei Ziffern nach 53 } // end if part of if/else Dezimalpunkt aus (entsprechend gerundet) else fixed // wenn zwingt keine zur Ausgabe Punktzahlen eingegeben wurden gib entspr. aus 56 im cout fixed << point Es wurden Format keine für Zur Benutzung <iomanip> einbinden. Punktzahlen eingegeben!" << endl; 57 Dezimalzahlen (nicht 58 return wissenschaftliches 0; // indicate Format). program ended successfully } // end function main <iostream> einbinden. 2
7 Ausgabe Durchschnittsberechnung 2 25 Inkrement und Dekrement Operatoren 27 Gib Punkte ein, -1 zum Beenden: 75 Gib Punkte ein, -1 zum Beenden: 9 Gib Punkte ein, -1 zum Beenden: 97 Gib Punkte ein, -1 zum Beenden: 88 Gib Punkte ein, -1 zum Beenden: 70 Gib Punkte ein, -1 zum Beenden: 6 Gib Punkte ein, -1 zum Beenden: 83 Gib Punkte ein, -1 zum Beenden: 89 Gib Punkte ein, -1 zum Beenden: -1 Durchschnittspunktzahl ist Statt c += 1 (bzw. c -= 1) kann auch Inkrement Operator (++) (bzw. Dekrement Operator --) verwendet werden Preinkrement Operator: Operator wird vor Variablen benutzt (++c bzw. --c) Variable wird modifiziert, bevor Ausdruck ausgewertet wird Postinkrement Operator: Operator wird nachvariablen benutzt (c++ bzw. c--) Ausdruck wird ausgewertet bevor Variable modifiziert wird Inkrement Operator erhöht Variable um 1 Dekrement Operator verringert Variable um Zuweisungen in C++ 26 Beispiele Inkrement /Dekrement Operator 28 Abkürzende Schreibweise: c = c + 3; c += 3; Generell wird variable = variable operator ausdruck; zu variable operator= ausdruck; weitere Beispiele: d -= (d = d - ) e *= 5 (e = e * 5) f /= 3 (f = f / 3) g %= 9 (g = g % 9) Sei c=5, dann gibt cout << c++ die Zahl 6 aus. gibt cout << ++c die Zahl 5 aus. Als separate Befehle haben sie die gleiche Wirkung: ++c; cout << c; und c++; cout << c; geben beide 6 aus.
8 Beispiel Inkrement /Dekrement Operator for Wiederholungsstruktur 31 1 // Fig. 2.1: fig02_1.cpp 2 // Preincrementing and postincrementing. 6 using std::endl; 7 8 // function main begins program execution 9 int main() 10 { 11 int c; // deklariere Variable // demonstriere Postinkrement 1 c = 5; // setze c auf 5 15 cout << c << endl; // gib 5 aus 16 cout << c++ << endl; // gib 5 aus, dann postinkrement 17 cout << c << endl << // gib 6 aus endl; // demonstriere Preinkrement 20 c = 5; // setze c auf 5 21 cout << c << endl; // gib 5 aus 22 cout << ++c << endl; // Preinkrement dann gib 6 aus 23 cout << c << endl; // gib 6 aus allgemeines Format der for Schleife for ( initialisierung; SchleifenFortsetzungstest; Erhöhung ) Befehl; Beispiel: for ( int counter = 1; counter <= 10; ++counter ) cout << counter << std::endl; Gibt Zahlen von 1 bis 10 aus. for Schleife kann meist als while Schleife umgeschrieben werden: initialisierung; while ( SchleifenFortsetzungstest ) { } Befehl; Erhöhung; Beispiel Inkrement /Dekrement Operator 30 Beispiel for return 0; // indicate successful termination } // end function main // Fig. 2.17: fig02_17.cpp 2 // Zählergesteuerte Wiederholung mit for 6 using std::endl; 7 8 // Anfang der Programmausführung 9 int main() 10 { for ( int counter = 1; counter <= 10; counter++ ) 13 cout << counter << endl; 1 15 return 0; // signalisiere erfolgreiche Ausführung } // main
9 Ausgabe des Beispiels 33 Weiteres einfaches Beispiel // Fig. 2.20: fig02_20.cpp 2 // Summembildung mit for 6 using std::endl; 7 8 // Ausführungsanfang 9 int main() 10 { 11 int sum = 0; // initialisiere Summe // summiere gerade 100 zahlen von 2 bis 1 for ( int number = 2; number <= 100; number += 2 ) 15 sum += number; // addiere Zahl zu Summe cout << "Summe ist endl; // Ausgabe der Summe " << sum << 18 return 0; } // main Summe ist 2550 Kontrollflußdiagramm for Schleife 3 Beispiel: Zinsberechnung 36 Eine Person investiert Euro in einer festverzinslichen Anlage zu 5 Prozent Zinsen pro Jahr. Angenommen die Zinsen verbleiben nach Gutschrift auf dem Konto, berechne und gib den Kontostand nach jedem der ersten 10 Jahre aus. Folgende Formel kann dafür verwendet werden: kontostand = betrag * (1+zins) jahre
10 Programmcode: Zinsberechnung 37 Ausgabe: Zinsberechnung 39 1 // Fig. 2.21: fig02_21.cpp 2 // Zinsberechnung 6 using std::endl; 7 using std::fixed; #include <iomanip> using std::setw; 13 using std::setprecision; 1 15 #include <cmath> // zur Benutzung der Funktion pow() // Programmausführungsanfang 18 int main() 19 { 20 double amount; // aktueller Geldbestand 21 double principal = ; // anfangs Geldbestand 22 double rate =.05; // Zinsrate 23 <cmath> Header wird für pow Funktion benötigt (sonst: Syntaxfehler). Jahr aktueller Geldbestand Zahlen sind rechtsb ündig wegen setw (an Positionen und 2). Programmcode: Zinsberechnung (2) 38 switch Mehrfachauswahl Struktur 0 2 // Tabellenüberschriften ausgeben 25 cout << Jahr << setw( 2 ) << aktueller Geldbestand << endl; // Fließkommaausgabeformat festlegen 28 cout << fixed << setprecision( 2 ); // berechne Knotostand für die ersten 10 Jahre 31 for ( int year = 1; year <= 10; year++ ) { // berechne neuen Stand 3 amount = principal * pow( rate, year ); // Gib eine Zeile der Tabelle aus 37 cout << setw( ) << year 38 << setw( 2 ) << amount << endl; 39 0 } // Ende for-schleife 1 2 return 0; 3 } // main Setzt Spaltenbreite auf mind. 21 Zeichen. Falls Ausgabe kürzer: Ausrichtung rechts. pow(x,y) = x y Testet Variable auf mehrere Werte: switch ( variable ) { case <wert1>: Befehle1; case <wert>: break; leitet einen Fall case <wert2>: ein. case <wert3>: default: Befehle2_3; break; BefehleD; break; break beendet einen Fall Alternative zu folgendem Ausdruck: if ( variable == <wert1> ) Befehle1; else if (variable == <wert2> ) Befehle2_3; else if ( variable == <wert3> ) else Befehle2_3; } BefehleD; default ist optional und wird dann benutzt, wenn kein anderer Fall zutrifft.
11 Kontrollflußdiagramm 1 Programmcode: Notenberechnung 3 1 // Fig. 2.22: fig02_22.cpp 2 // Notenberechnung 6 using std::cin; 7 using std::endl; 8 9 // function main begins program execution 10 int main() 11 { 12 int grade; // aktuelle Note 13 int count1 = // Anzahl an 1 en 0; 1 int count2 = 0; // Anzahl an 2 en 15 int count3 = 0; // Anzahl an 3 en 16 int count = 0; // Anzahl an en 17 int count5_6 = 0; // Anzahl an 5 en und 6 en cout << Gib die Noten ein. << endl 20 << 0 zum Beenden. << endl; 21 Beispielprogramm: Notenberechnung 2 Programmcode: Notenberechnung (2) Beispiel zur Anwendung von switch: Das Programm soll solange Noten von 1 6 einlesen, bis eine 0 eingegeben wird. Abschließend soll zu jeder Note ausgegeben werden, wie häufig sie genannt wurde. 22 // lies erste Note ein und wiederhole 23 cin >> grade; 2 while ( grade!= 0 ) { 25 // welche Note wurde eingegeben? 26 switch ( grade ) { // switch, das in while-struktur geschachtelt ist // 1 wurde eingegeben: 29 case 1: 30 ++count1; // zähle hoch 31 break; // notwendig um switch zu verlassen wurde eingegeben: // 3 case 2: 35 ++count2; // zähle hoch 36 break; // beende switch wurde eingegeben: // 39 case 3: 0 ++count3; // zähle hoch 1 break; // beende switch 2
12 Programmcode: Notenberechnung (3) 5 Programmausgabe: Notenberechnung 7 3 // wurde eingegeben: case : 5 ++count; // zähle count hoch 6 break; // beende switch 7 8 case 5: // 5 oder 9 case 6: // 6 wurde eingegeben 50 ++count5_6; // zähle count5_6 hoch 51 break; // beende switch default: // wenn etwas anderes eingegeben wurde: 5 cout << Falsche Note eingegeben." 55 << " Bitte neue Note eingeben." << endl; 56 break; // optional; will exit switch anyway } 59 cin >> grade; // lies nächste Note ein 60 } Gib die Noten ein. 0 zum Beenden r Falsche Note eingegeben. Bitte neue Note eingeben Anzahl an Noten: 1 en: 2 2 en: 2 3 en: 3 en: 2 5 en und 6 en: 2 Programmcode: Notenberechnung () do/while Wiederholungsstruktur 8 67 // Ergebnisse ausgeben 68 cout << Anzahl an Noten: << endl 69 << 1 en: << count1 << endl // Anzahl an 1 70 << 2 en: << count2 << endl // Anzahl an 2 71 << 3 en: << count3 << endl // Anzahl an 3 72 << en: << count << endl // Anzahl an 73 << 5 en und 6 en: << count5_6 // Anzahl an 5 oder 6 7 << endl; return 0; // erfolgreiche Beendigung } // main Ähnlich der while Wiederholungsstruktur Schleifenfortsetzungstest am Ende und nicht am Anfang der Schleife Schleifenkörper wird also mindestens einmal ausgeführt! Syntax: do { Befehle; } while ( bedingung ); Im Gegensatz zu while: while ( bedingung ) { }; Befehle;
13 Kontrollflußdiagramm break und continue 51 break Befehl sofortige Beendigung von while, for, do/while, switch Programm wird mit erster Anweisung nach beendeter Struktur fortgesetzt Übliche Anwendung: Vorzeitiges Beenden einer Schleife Rest von switch überspringen continue Befehl Nächste Iteration in while, for, do/while Überspringt Rest des Schleifenkörpers Bei while und do/while: Schleifenbedingung wird direkt nach continue überprüft Bei for: Inkrementierung wird direkt vorgenommen dann wird Schleifenbedingung überprüft Beispiel für do/while 50 Beispiel break 52 1 // Fig. 2.2: fig02_2.cpp 2 // Beispiel für Verwendung von do/while 6 using std::endl; 7 8 // Programmstart 9 int main() 10 { 11 int counter = 1; // initialisiere Zähler do { 1 cout << counter << " "; // Zeige Zähler an 15 } while ( ++counter <= 10 ); // Ende von do/while cout << endl; return 0; } // main Beachte Preinkrement Operator in Bedingung 1 // Fig. 2.26: fig02_26.cpp 2 // Verwendung der break-anweisung in for-schleife 6 using std::endl; 7 8 // Programmstart 9 int main() 10 { int x; 13 1 // 10 Schleifendurchläufe 15 for ( x = 1; x <= 10; x++ ) { // wenn x 5 ist, beende Schleife 18 if ( x == 5 ) 19 break; // beende Schleife genau dann, wenn x 5 ist cout << x << " "; // gib Wert von x aus } // for x wird bereits hier definiert, damit es auch außerhalb der for Schleife genutzt werden kann. Beendet for wennbreak ausgeführt wird.
14 Beispiel break (2) 53 Beispiel continue (2) cout << Abbruch als x 5 wurde: << x << endl; return 0; } // main 2 25 cout << Mittels continue wurde der Wert 5 übersprungen << endl; return 0; } // main Abbruch als x 5 wurde: Mittels continue wurde der Wert 5 übersprungen Beispiel continue Logische Operatoren 56 1 // Fig. 2.27: fig02_27.cpp 2 // Verwendung der continue-anweisung in for-schleife 6 using std::endl; 7 8 // Programmstart 9 int main() 10 { int x; 13 1 // 10 Schleifendurchläufe 15 for ( x = 1; x <= 10; x++ ) { // wenn x 5 ist, fahre mit nächster Schleifeniteration fort 18 if ( x == 5 ) 19 continue; // überspringe restlichen Code in Körper cout << x << " "; // gib Wert von x aus } // for Beendet for wennbreak ausgeführt wird. zur Verwendung in Bedingungen in Schleifen und if Befehlen Syntax: ( bedingung1 ) operator ( bedingung2 ) && (logisches und) wahr, wenn beide Bedingungen wahr sind Beispiel: if ( geschlecht == 1 && alter >= 65 ) ++maennlichersenior; (logisches oder) wahr, wenn mindestens eine der beiden Bedingungen wahr ist
15 Logische Operatoren (2) 57 Verwechselung von = und == (2) 59! (logisches nicht, Negation) hier Syntax:!( bedingung ) liefert wahr, falls Bedingung falsch ist (und umgekehrt) if (! ( note == abbruchwert ) ) cout << nächste Note << grade << endl; Alternativ: if (note!= abbruchwert) cout << nächste Note << grade << endl; Beispiel: if ( paycode == ) cout << Bonus zugeteilt << endl; wenn paycode ist, wird Bonus zugeteilt Ersetzung von == durch =: if ( paycode = ) cout << Bonus zugeteilt << endl; paycode wird auch gesetzt (unabhängig vom Wert zuvor) Bedingung ist wahr (da nichtnull ist) Bonus wird in jedem Fall zugeteilt Verwechselung von = und == 58 Lvalues und Rvalues 60 Erzeugt meist keinen Syntaxfehler Problemaspekte: Ausdrücke, die einen Wert haben, können zur Entscheidung genutzt werden (Null = falsch, Nichtnull = wahr) Zuweisungen besitzen in diesem Sinne einen Wert (nämlich der, der zugewiesen wird) Lvalues Ausdrücke, die auf der linken Seite eines Ausdrucks benutzt werden können Können modifiziert werden (Variablen) x = Rvalues Dürfen nur auf rechter eines Ausdrucks verwendet werden! Konstanten (wie beispielsweise Zahlen) = x darf daher nicht geschrieben werden Lvalues können als Rvalues verwendet werden, jedoch nicht umgekehrt!
16 Zusammenfassung Strukturierte Programmierung Programme einfacher zu verstehen, testen, debuggen und modifizieren Regeln für strukturierte Programmierung nur vorgestellte Kontrollstrukturen verwenden Regeln: 1. Fange mit einfachstem Flußdiagramm an 2. Jedes Quadrat (Aktion) kann durch zwei Quadrate (Aktionen) in Sequenz ersetzt werden 3. Jedes Quadrat (Aktion) kann durch beliebige Kontrollstruktur (if, if/else, switch, while, do/while, for) ersetzt werden. Regeln 2 und 3 können in beliebiger Reihenfolge und Anzahl ausgeführt werden 62
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
MehrJava 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
MehrEinfü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
MehrC++ Programmierkurs. Wintersemester 04 / 05. Christian Hagemeier. Lehrstuhl Prof. Dr. Schrader Institut für Informatik Universität zu Köln
C++ Programmierkurs 1 Wintersemester 04 / 05 Christian Hagemeier Lehrstuhl Prof. Dr. Schrader Institut für Informatik Universität zu Köln mittwochs 17 18:30 Uhr Hörsaal II der Physikalischen Institute
MehrJavaScript. 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
MehrFACHHOCHSCHULE 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
Mehr5. 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
MehrProgrammiersprache 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.)
MehrSchachtelung 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,
MehrProgrammierkurs 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
MehrJavakurs 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
Mehr1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH
1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH Die Umgebungsvariable CLASSPATH kann im Hamster-Simulator sowohl für Compiler als auch für die Ausführung des Hamster-Programms gesetzt werden: Hierdurch
MehrVorlesung 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),
MehrJava - 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
Mehr1.8 Kontrollstrukturen 73. default : ziffer = 0; if (ziffer > 0) { cout << "Ziffer = " << ziffer; else { cout << "keine römische Ziffer!
1.8 Kontrollstrukturen 73 default : ziffer = 0; if (ziffer > 0) { cout
MehrJava: Eine kurze Einführung an Beispielen
Java: Eine kurze Einführung an Beispielen Quellcode, javac und die JVM Der Quellcode eines einfachen Java-Programms besteht aus einer Datei mit dem Suffix.java. In einer solchen Datei wird eine Klasse
MehrModul 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
MehrPraktikum zur Vorlesung Einführung in die Programmierung WS 14/15 Blatt 3
Michael Jugovac Dominik Kopczynski Jan Quadflieg Till Schäfer Stephan Windmüller Dortmund, den 30. Oktober 2014 Praktikum zur Vorlesung Einführung in die Programmierung WS 14/15 Blatt 3 Es können 12 (+5
Mehr3. 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
MehrAnnehmende Schleife do while
Annehmende Schleife do while Schleife mit nachfolgender Bedingungsprüfung: annehmende Schleife B S Mit B wird eine Bedingung (logischer Ausdruck) bezeichnet, S ist ein Strukturblock. Zuerst wird S ausgeführt,
MehrProgrammiertechnik 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,
MehrFunktionales 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
MehrAuswahlen (Selektionen)
1 Anhang 10.3 Ein/Ausgaben Eingabe mit Prompt (Beispiel) cout ; // Prompt ohne endl cin
Mehr1 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:
MehrEinfü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
MehrGrundlagen 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:
MehrProgrammieren 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
MehrEinstieg 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
MehrGrundlagen 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
MehrProf. 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,
MehrInformationsverarbeitung
1/23 Informationsverarbeitung Einführung in das Programmieren mit C++ Markus Uhlmann Institut für Hydromechanik Karlsruher Institut für Technologie www.ifh.kit.edu WS 2011/2012 Vorlesung 4 (alle Quelldateien
MehrEinfü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
MehrEinstieg 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,
MehrGrundlagen 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,
Mehr4. 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
Mehr3. 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
MehrSteueranweisungen. 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)
MehrEINI 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
MehrEinführung in den Einsatz von Objekt-Orientierung mit C++ I
Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen
MehrAlgorithmen & 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
MehrModProg 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
MehrLabor Software-Entwicklung 1
Labor Software-Entwicklung 1 Übereinkunft zu Programmablaufplänen PAP - Grundlagen Wintersemester 2015/2016 Seite 1 von 9 Inhalt DIN 66 001: Sinnbilder für Programmablaufplan... 3 Grenzstelle... 3 Ablauflinie...
MehrVom Problem zum Programm
Aussagenlogik Vom Problem zum Programm Kontrollstrukturen der prozeduralen Programmierung Grundprinzipien: Sequenz Alternative Iteration Beschreibungsformen Ablaufpläne Struktogramme Pseudocode Programmentwicklung
MehrC++ - 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.
Mehr2.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
MehrArbeitsblä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
MehrAufgabe 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
MehrSchleifenanweisungen
Schleifenanweisungen Bisher: sequentielle Abarbeitung von Befehlen (von oben nach unten) Nun: Befehle mehrfach ausführen (= Programmschleife): for-anweisung - wenn feststeht, wie oft z.b.: eine Berechnung
MehrDie Programmiersprache C Eine Einführung
Die Programmiersprache C Eine Einführung Christian Gentsch Fakutltät IV Technische Universität Berlin Projektlabor 2. Mai 2014 Inhaltsverzeichnis 1 Einführung Entstehungsgeschichte Verwendung 2 Objektorientiert
MehrDr. 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
Mehr9 Anweisungen und Kontrollstrukturen
9 Anweisungen und Kontrollstrukturen Hier beziehen wir uns auf Kapitel 6 von Go To Java 2. Die Steuerung des Programmablaufs geschieht durch sogenannte Anweisungen. Jede Anweisung bewirkt irgendwelche
MehrUnterlagen. CPP-Uebungen-08/
Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen
MehrEinleitung 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
MehrS. 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
MehrProgrammieren 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
MehrTag 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!
MehrKontrollstrukturen 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
MehrAlgorithmen 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
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 05: Weitere Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme 1. Teil: Weitere Kontrollstrukturen Wiederholungsstrukturen (Schleifen) While-,do-,for-Schleifen
Mehr4. 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
MehrWie entwerfe ich ein Programm?
Wie entwerfe ich ein Programm? Welche Objekte brauche ich? Flussdiagramme für Programmablauf Vorcode Testcode Hauptcode Wir spielen Lotto! Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel 5 +
MehrBKTM - 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
Mehr6. 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"
Mehr2. Programmierung in C
2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)
MehrKapitel 1: Einführung
10 Kapitel 1: Einführung 1.1 Was ist eine Programmiersprache? 1.2 Details zu C++ 1.3 Phasen der Programmierung 1.4 Ein erstes Programm: Hello World! 1.5 Addition zweier Zahlen 1.6 Entscheidungen 1.1 Was
MehrOperatoren (1) Operatoren (2)
Operatoren (1) Binäre Operatoren + - * / % < = > & ^ > && Addition Subtraktion Multiplikation Division Divisionsrest Vergl. auf kleiner Vergl. auf kleiner oder gleich Vergl. auf gleich Vergl.
MehrInformatik für Elektrotechnik und Informationstechnik
Informatik für Elektrotechnik und Informationstechnik Praktikum 1 Wintersemester 2013/14 1 Kennenlernen der Entwicklungsumgebung Netbeans Netbeans ist eine moderne Entwicklungsumgebung für mehrere Programmiersprachen,
MehrProgrammieren 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,
MehrSchleifen 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.
MehrOperatoren 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
MehrFB Informatik. Fehler. Testplan
Fehler #include int i,n,summe; int summe (int); cout 0) cin>n; i=summme(n); cout
MehrC- 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
MehrKlassen und Objekte. Klassen sind Vorlagen für Objekte. Objekte haben. Attribute. Konstruktoren. Methoden. Merkblatt
Klassen und Objekte Klassen sind Vorlagen für Objekte. Objekte haben Attribute Konstruktoren Methoden Aus einer Klasse kann man beliebig viele Objekte herstellen. Attribute bestimmen die Eigenschaften
MehrRO-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
MehrHerzlich Willkommen. Über mich Termine Literatur Über PHP
Über mich Termine Literatur Über PHP Herzlich Willkommen Über mich Termine Literatur Über PHP Wer ist das da vorne? Mario Lipinski Über mich Termine Literatur Über PHP Wer ist das da vorne? Mario Lipinski
MehrSystem.out.println("TEXT");
Inhaltsübersicht - Erstes Beispiel - Datentypen - Ausdrücke und Operatoren - Schleifen / Bedinungen - Struktogramme - Grundgerüst eines Programms in JAVA - Einlesen von Daten Erstes Beispiel public class
MehrEntwurf 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
MehrPraxisorientierte 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
MehrGrundlagen von C# - 2
Grundlagen von C# - 2 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Arrays 2. Kontrollstrukturen 3. Verzweigungen Bedingte Verzweigung (if else) 4. Schleifen Kopfgesteuerte Schleife (while) Fußgesteuerte
MehrEine kleine Befehlssammlung für Java Teil1
Eine kleine Befehlssammlung für Java Teil1 Definition einer Klasse public class Klasse{ Hier wird der Name der Klasse definiert. In diesem Fall ist das Klasse. Der Name muss mit dem Namen der.class Datei
MehrTutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2
Prof. aa Dr. J. Giesl Programmierung WS16/17 F. Frohn, J. Hensel, D. Korzeniewski Tutoraufgabe 1 (Zweierkomplement): a) Sei x eine ganze Zahl. Wie unterscheiden sich die Zweierkomplement-Darstellungen
MehrEinfache 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
MehrProgrammierkurs Python I
Programmierkurs Python I Michaela Regneri 2009-11-05 (Folien basieren auf dem gemeinsamen Kurs mit Stefan Thater) Übersicht Variablen Datentypen Werte Operatoren und Ausdrücke Kontrollstrukturen: if, while
MehrFlussdiagramm / Programmablaufplan (PAP)
Flussdiagramm / Programmablaufplan (PAP) Basissysmbole Grenzstelle (Anfang, Zwischenhalt oder Ende des Programms/Algorithmus) Verbindung Zur Verdeutlichung der Ablaufrichtung werden Linien mit einer Pfeilspitze
MehrKontrollanweisungen: Teil Pearson Education, Inc. All rights reserved.
1 3 Kontrollanweisungen: Teil 1 2 3.1 Einführung 3.2 Algorithmen 3.3 Pseudocode 3.4 Euklidscher Algorithmus 3.5 Kontrollstrukturen 3.6 if Auswahlanweisung 3.7 if...else Zweifach-Auswahlanweisung 3.8 while
MehrPHP 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
MehrKlausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:
Seite 1 von 8 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 ( / 10 Pkt.) a) Geben
Mehr4 Schleifen und Dateien
4 Schleifen und Dateien 4.1 Übungsaufgabe 4.1.1 Aufgabe 1 Schreiben Sie drei C++ Programme: pword_for.cxx, pword_while.cxx, pword_do.cxx. Die Programme sollen den Benutzer höchstens 5 Mal nach einem Passwort
MehrEin- und Ausgabe (I/O)
Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Überblick 1 2 / 14 Motivation Computer arbeiten
MehrIdeen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn
Ideen und Konzepte der Informatik Programme und Algorithmen Kurt Mehlhorn November 2016 Algorithmen und Programme Algorithmus = Schritt-für-Schritt Vorschrift zur Lösung eines Problems. Formuliert man
MehrÜbungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.
Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Daher ist y = x + 5.6; keine Gleichung, sondern die Anweisung den Wert
MehrProgrammieren 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
MehrEs 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
MehrJava 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
Mehr4. Ablaufsteuerung (Kontrollstrukturen)
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
MehrProgrammieren 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)
MehrC++ - Einführung in die Programmiersprache Ein- und Ausgabe in die Konsole. Leibniz Universität IT Services Anja Aue
C++ - Einführung in die Programmiersprache Ein- und Ausgabe in die Konsole Leibniz Universität IT Services Anja Aue Eingabe (input) und Ausgabe (output) In diesem Kapitel wird nur das Lesen von und das
MehrWebbasierte 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,
MehrPrimitive 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Ü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