Grundelemente der C++ Programmierung Pearson Education, Inc. All rights reserved.

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "Grundelemente der C++ Programmierung. 2006 Pearson Education, Inc. All rights reserved."

Transkript

1 1 2 Grundelemente der C++ Programmierung

2 2 2.1 Einführung 2.2 Erstes Programm in C++: Eine Zeile Text ausgeben 2.3 Varianten des ersten C++ Programms 2.4 Zweites C++ Programm: Ganze Zahlen addieren 2.5 Speicherkonzepte 2.6 Arithmetik 2.7 Fallunterscheidungen: Vergleichsoperatoren

3 3 2.1 Einführung C++ Programmierung Vier einführende Beispiele zeigen Wie Meldungen ausgegeben werden Wie Informationen vom Nutzer erhalten werden Wie arithmetische Berechnungen durchgeführt werden Wie Entscheidungen getroffen werden

4 2.2 Erstes Programm in C++: Eine Zeile Text ausgeben 4 Einfaches Programm Gibt eine Zeile Text aus Illustriert eine Reihe von wichtigen Eigenschaften von C++

5 1 // Fig. 2.1: fig02_01.cpp 2 // Text-printing program. 3 #include <iostream> // allows program to output data to the screen 4 5 // function main begins program execution 6 int main() 7 { 8 std::cout << "Welcome to C++!\n"; // display message 9 10 return 0; // indicate that program ended successfully } // end function main Welcome to C++! Outline fig02_01.cpp (1 von 1) Pearson Education, Inc. All rights reserved.

6 2.2 Erstes Programm in C++: Eine Zeile Text ausgeben 6 Kommentare Erläutern das Programm anderen Programmierern Verbessern die Lesbarkeit des Programms Werden vom Compiler ignoriert Einzeilenkommentare Beginnen mit // Beispiel // This is a text-printing program. Mehrzeilenkommentare Beginnen mit /* Enden mit */

7 7 Praxis-Tipp Jedes Programm sollte mit einem Kommentar beginnen, der den Zweck des Programms angibt, außerdem den Autor, das Datum und eine Versionsbezeichnung. (Im Rahmen dieser Folien wird aus Gründen der Übersichtlichkeit auf die Angabe von Autor, Datum und Versionsbezeichnung verzichtet.)

8 2.2 Erstes Programm in C++: Eine Zeile Text ausgeben 8 Präprozessor Direktiven Steuern i.w. textliche Ersetzungen und Ergänzungen Werden vor der Compilierung vom Präprozessor verarbeitet Beginnen mit # Beispiel #include <iostream> Veranlasst den Präprozessor, die Headerdatei <iostream> für Ein- und Ausgabestrom einzuschließen.

9 9 Häufiger Programmierfehler Wenn man vergisst, die <iostream> Headerdatei in ein Programm einzuschließen, das Daten von der Tastatur einliest oder an den Bildschirm ausgibt, meldet der Compiler einen Fehler. Der Compiler kann in solchen Fällen eine Bezugnahme auf Komponenten des Ein-/Ausgabestroms (z.b. std::cout) nicht erkennen.

10 2.2 Erstes Programm in C++: Eine Zeile Text ausgeben 10 Leerraumzeichen ( White space ) Leere Zeilen, Leerzeichen und Tabulatoren Eingesetzt, um Programme besser lesbar zu machen Werden vom Compiler ignoriert

11 11 Praxis-Tipp Leere Zeilen und Leerzeichen sollten zur Verbesserung der Lesbarkeit eines Programms eingesetzt werden.

12 2.2 Erstes Programm in C++: Eine Zeile Text ausgeben 12 Funktion main Teil jedes C++ Programms Genau eine Funktion jedes Programms muss main heißen. Gibt einen Wert vom Typ einer ganzen Zahl (einen integer ) zurück Beispiel int main() Der Funktionskörper wird in geschweifte Klammern ({}) eingeschlossen. Anweisungen ( statements ) Weisen das Programm an, eine Aktion auszuführen Alle Anweisungen enden mit einem Semikolon (;).

13 2.2 Erstes Programm in C++: Eine Zeile Text ausgeben 13 Namensbereich (namespace) std:: Gibt an, dass ein Name benutzt wird, der zum Namensbereich std gehört Ein Namensbereich kann durch eine using Direktive für ein ganzes Programm angegeben werden (s. Abschnitt 2.7). Standard Ausgabestrom-Objekt std::cout Ist mit dem Bildschirm verbunden Ist in der Ein-/Ausgabestrom Headerdatei <iostream> definiert

14 2.2 Erstes Programm in C++: Eine Zeile Text ausgeben 14 Ausgabeoperator << Der rechte Operand wird in den linken Operanden eingefügt, d.h. hier: der rechte Operand wird ausgegeben. Beispiel std::cout << "Hello"; Die Zeichenkette "Hello" wird in den Standardausgabestrom eingefügt, d.h. auf dem Bildschirm dargestellt. Escape Zeichen Ein Zeichen, dem ein "\" (Backslash) vorangestellt ist Zeigt die Ausgabe eines speziellen Zeichens an Beispiel "\n" Der Cursor wird zum Anfang der nächsten Zeile bewegt.

15 15 Escapesequenz Beschreibung \n Zeilenwechsel. Positioniert den Cursor am Anfang der nächsten Zeile. \t Horizontaler Tabulator. Bewegt den Cursor zum nächsten Tabulator-Stopp. \r Wagenrücklauf. Positioniert den Cursor am Anfang der aktuellen Zeile; wechselt dabei nicht zur nächsten Zeile. \a Alarm. Gibt ein Signal auf den Systemlautsprecher. \\ Backslash. Benutzt zur Ausgabe dieses Zeichens. \' Einfaches Anführungszeichen. Benutzt zur Ausgabe dieses Zeichens. \" Doppeltes Anführungszeichen. Benutzt zur Ausgabe dieses Zeichens. Fig. 2.2 Escapesequenzen.

16 16 Praxis-Tipp Viele Programmierer nehmen als letztes Zeichen, das von einer Funktion ausgegeben wird, das newline-zeichen (\n). Das stellt sicher, dass die Funktion den Bildschirmcursor am Beginn einer neuen Zeile hinterlässt. Konventionen dieser Art unterstützen die Wiederverwendung von Software - ein Hauptziel der Softwareentwicklung.

17 17 Häufiger Programmierfehler Weglassen des Semikolons am Ende einer C++ Anweisung ist ein Syntaxfehler. (Präprozessordirektiven enden nicht mit einem Semikolon.) Die Syntax einer Programmiersprache legt die Regeln für die Erzeugung eines gültigen Programms in dieser Sprache fest. Ein Syntaxfehler tritt auf, wenn der Compiler Code vorfindet, der die Sprachregeln von C++ verletzt. Der Compiler gibt eine Fehlermeldung als Hilfe für den Programmierer aus, um den fehlerhaften Code zu finden und zu korrigieren.

18 18 Häufiger Programmierfehler Syntaxfehler werden auch Compilerfehler, Übersetzungsfehler oder Fehler zur Übersetzungszeit genannt, weil der Compiler sie während der Übersetzungsphase aufdeckt. Eine Ausführung des Programms ist unmöglich, solange nicht alle Syntaxfehler korrigiert sind.

19 2.2 Erstes Programm in C++: Eine Zeile Text ausgeben 19 return Anweisung Eine von verschiedenen Möglichkeiten, um eine Funktion zu beenden Wird return am Ende von main eingesetzt, zeigt der Wert 0 eine erfolgreiche Beendigung des Programms an. Beispiel: return 0; main ist die einzige Funktion, bei der die return Anweisung weggelassen werden darf, obwohl ein Rückgabetyp (int) für main erklärt wurde. Der Compiler ergänzt in diesem Fall automatisch die Anweisung return 0;

20 20 Portabilitäts-Tipp Im C++-Standard ist für main der Rückgabetyp int festgelegt. Ein Rückgabetyp void ist nicht standardkonform und führt bei manchen C++- Compilern (nicht bei MS Visual C++) zu einer Fehlermeldung. Ein Rückgabetyp void für main sollte deshalb nicht verwendet werden. Bei Verwendung des standardkonformen Rückgabetyps int ist es jedoch erlaubt, im Fall von main die sonst ( d.h. in allen anderen Funktionen) erforderliche return Anweisung wegzulassen.

21 21 Praxis-Tipp Der komplette Funktionskörper jeder Funktion sollte um eine Ebene (z.b. drei Leerstellen) innerhalb der umschließenden Klammern eingerückt werden. Das verdeutlicht die Struktur eines Programms und macht das Programm besser lesbar.

22 22 Praxis-Tipp Die Breite für eine Einrückungsebene sollte einmal festgelegt und dann einheitlich angewendet werden. Die Einrückung kann durch die Tabulatortaste erfolgen, dabei ist jedoch zu beachten, dass Tabulatorstopps in verschiedenen Anwendungen unterschiedlich sind. Besser ist es, z.b. drei Leerstellen für eine Einrückungsebene zu benutzen. Dies kann in den meisten Entwicklungsumgebungen (auch MS Visual C++) so eingestellt werden.

23 Varianten des ersten C++ Programms Zwei Beispiele Text in eine einzige Zeile durch mehrere Anweisungen ausgeben (Fig. 2.3) Jede Ausgabe wird an genau der Stelle fortgesetzt, an der die vorherige aufgehört hat. Text in mehrere Zeilen durch eine einzige Anweisung ausgeben (Fig. 2.4) Jede Escapesequenz Zeilenwechsel (\n) positioniert den Cursor an den Anfang der nächsten Zeile Zwei aufeinanderfolgende Zeilenwechsel (\n\n) geben eine Leerzeile aus.

24 1 // Fig. 2.3: fig02_03.cpp 2 // Printing a line of text with multiple statements. 3 #include <iostream> // allows program to output data to the screen 4 5 // function main begins program execution 6 int main() 7 { 8 std::cout << "Welcome "; 9 std::cout << "to C++!\n"; 10 } // end function main Welcome to C++! Mehrere Ausgabeanweisungen ergeben eine Zeile Ausgabe Outline fig02_03.cpp (1 von 1) Pearson Education, Inc. All rights reserved.

25 1 // Fig. 2.4: fig02_04.cpp 2 // Printing multiple lines of text with a single statement. 3 #include <iostream> // allows program to output data to the screen 4 5 // function main begins program execution 6 int main() 7 { 8 std::cout << "Welcome\nto\n\nC++!\n"; 9 } // end function main Welcome to C++! Verwendet Zeilenwechsel- Zeichen, um in mehrere Zeilen auszugeben Outline fig02_04.cpp (1 von 1) Pearson Education, Inc. All rights reserved.

26 2.4 Zweites C++ Programm: Ganze Zahlen addieren 26 Variablen Namen von Speicherplätzen, in denen Werte abgespeichert werden Gebräuchliche Datentypen ( fundamental, primitiv oder eingebaut ) int ganze Zahlen char Zeichen double Zahlen mit Nachkommastellen Variablen müssen mit Typ und Namen definiert werden, bevor sie benutzt werden können: int integer1; int integer2; int sum;

27 1 // Fig. 2.5: fig02_05.cpp 2 // Addition program that displays the sum of two numbers. 3 #include <iostream> // allows program to perform input and output 4 5 // function main begins program execution 6 int main() 7 { 8 // variable declarations 9 int number1; // first integer to add 10 int number2; // second integer to add 11 int sum; // sum of number1 and number std::cout << "Enter first integer: "; // prompt user for data 14 std::cin >> number1; // read first integer from user into number std::cout << "Enter second integer: "; // prompt user for data 17 std::cin >> number2; // read second integer from user into number sum = number1 + number2; // add the numbers; store result in sum std::cout << "Sum is " << sum << std::endl; // display sum; end line 22 } // end function main Enter first integer: 45 Enter second integer: 72 Sum is 117 Definition von ganzzahligen Variablen Nutzt den Eingabeoperator mit dem Standardeingabestrom für Nutzereingabe Verketten oder Kaskadieren von Ausgabeoperationen Outline fig02_05.cpp (1 von 1) Strommanipulator std::endl gibt einen Zeilenwechsel aus und leert den Ausgabepuffer Pearson Education, Inc. All rights reserved.

28 2.4 Zweites C++ Programm: Ganze Zahlen addieren 28 Variablen Mehrere Variablen des gleichen Typs können in einer einzigen Anweisung definiert werden. Liste mit Kommas als Trennzeichen: int number1, number2, sum; Variablennamen Gültige Bezeichner Folge von Zeichen (Buchstaben, Ziffern, Unterstriche) Dürfen nicht mit einer Ziffer beginnen Unterscheiden zwischen Groß- und Kleinschreibung ( Case sensitive )

29 29 Praxis-Tipp Nach jedem Komma (,) sollte ein Leerzeichen gesetzt werden. Dies verbessert die Lesbarkeit von Programmen. Viele Programmierer ziehen es vor, jede Variable in einer eigenen Zeile zu deklarieren. Dies erlaubt auch, bei Bedarf einen erklärenden Kommentar zu der Variablen in den Rest der Zeile zu schreiben.

30 30 Portabilitäts-Tipp C++ erlaubt Bezeichner beliebiger Länge, aber die C++ Implementierungen begrenzen die Länge der Bezeichner. Benutzt man Bezeichner mit maximal 31 Zeichen, sollte die Portabilität sichergestellt sein.

31 31 Praxis-Tipp Bezeichner müssen so gewählt werden, dass sie eine Bedeutung innerhalb der Problemstellung des Programms haben ( sprechende Bezeichner ). Dies hilft ein Programm selbsterklärend zu machen - man kann das Programm verstehen, indem man es einfach liest, statt auf Kommentare und Manuals angewiesen zu sein.

32 32 Praxis-Tipp Abkürzungen in Bezeichnern sollten vermieden werden. Dies erhöht die Lesbarkeit von Programmen. Bezeichner, die mit Unterstrichen oder doppelten Unterstrichen beginnen, sollten vermieden werden. C++ Compiler nutzen intern oft solche Namen. Auf diese Weise wird Verwirrung zwischen eigenen Namen und vom Compiler gewählten Namen vermieden.

33 2.4 Zweites C++ Programm: Ganze Zahlen addieren 33 Objekt für den Eingabestrom std::cin aus <iostream> Normalerweise mit der Tastatur gekoppelt Eingabeoperator >> Erwartet, dass der Benutzer einen Wert eingibt und die Eingabetaste drückt Speichert den eingegebenen Wert in der Variablen rechts vom Operator Wandelt den Wert in den Typ der Variablen (wenn möglich) Beispiel: std::cin >> number; Liest eine mit der Tastatur eingegebene ganze Zahl zunächst als Folge von Zeichen Wandelt die Zeichenfolge in eine ganze Zahl Speichert die ganze Zahl in der Variablen number

34 34 Häufiger Programmierfehler Programme sollten die korrekte Eingabe aller Werte validieren, um zu verhindern, dass fehlerhaft eingegebene Informationen die Berechnungen im Programm beeinflussen.

35 2.4 Zweites C++ Programm: Ganze Zahlen addieren 35 Zuweisungsoperator = Weist den Wert auf seiner rechten Seite der Variablen auf seiner linken Seite zu Binärer Operator (zwei Operanden) Beispiel: sum = variable1 + variable2; Addition der Werte von variable1 und variable2 Speichern des Resultats in sum Strommanipulator std::endl Gibt einen Zeilenwechsel aus Leert den Ausgabepuffer

36 36 Praxis-Tipp Auf beiden Seiten eines binären Operators sollten Leerzeichen stehen. Das hebt den Operator hervor und macht das Programm besser lesbar.

37 2.4 Zweites C++ Programm: Ganze Zahlen addieren 37 Verkettung (Kaskadierung) von Ausgabeoperationen Anwendung von mehreren Ausgabeoperatoren in einer einzigen Anweisung Ausgabeoperation weiß, wie jeder Datentyp auszugeben ist Beispiel std::cout << "Die Summe ist " << number1 + number2 << std::endl; Schreibt erst "Die Summe ist " in den Ausgabestrom. Danach wird die Summe von number1 und number2 als temporäre ganze Zahl berechnet, in eine Zeichenfolge umgewandelt und in den Ausgabestrom geschrieben. Zum Schluss wird ein Zeilenwechsel ausgegeben und der Ausgabepuffer geleert.

38 Speicherkonzepte Variablennamen Entsprechen tatsächlichen Speicherplätzen Jede Variable hat Name, Typ, Größe und Wert. Wenn ein neuer Wert in der Variablen platziert wird, wird der alte Wert überschrieben. In den Speicher schreiben ist destruktiv. Für das Lesen von Variablen aus dem Speicher gilt dies nicht. Beispiel sum = number1 + number2; Wert von sum wird überschrieben Werte von number1 und number2 bleiben intakt

39 39 Fig. 2.6 Speicherplätze nach Berechnung und Abspeichern der Summe von number1 and number2.

40 Arithmetik Arithmetische Operatoren + Addition - Subtraktion * Multiplikation / Division Ganzzahlige Division schneidet Nachkommastellen ab 23 / 4 ergibt 5 % Modulo-Operator Gibt den Divisionsrest bei ganzzahliger Division zurück 23 % 4 ergibt 3

41 41 Häufiger Programmierfehler Der Versuch, den modulo-operator (%) mit nichtganzzahligen Operanden zu benutzen, führt zu einer Fehlermeldung des Compilers.

42 Arithmetik Gradlinige Anordnung Erforderlich für arithmetische Ausdrücke in C++ Alle Konstanten, Variablen und Operatoren erscheinen gradlinig hintereinander angeordnet. Gruppierung von Unterausdrücken Klammern werden in C++ Ausdrücken verwendet, um Unterausdrücke zu gruppieren. Gleiche Vorgehensweise wie in algebraischen Ausdrücken Beispiel a * ( b + c ) Multipliziere a mit dem Wert von b + c

43 43 Operation arithmetischer Operator in C++ Algebraischer Ausdruck C++ Ausdruck Addition + f + 7 f + 7 Subtraktion - p c p - c Multiplikation * bm oder b m b * m Division / x / y oder x y oder x : y x / y Modulo % r mod s r % s Fig. 2.7 Arithmetische Operatoren.

44 Arithmetik Regeln für den Operatorvorrang Operatoren in Klammern werden zuerst ausgewertet. Geschachtelte Klammern Operatoren im innersten Klammernpaar zuerst Als nächstes werden Multiplikation, Division, Modulo angewendet. Die einzelnen Operatoren werden von links nach rechts angewendet. Zum Schluss kommen Addition und Subtraktion. Die einzelnen Operatoren werden von links nach rechts angewendet.

45 45 Operator(en) Operation(en) Reihenfolge der Auswertung (Vorrang) ( ) Klammern Zuerst ausgewertet. Bei geschachtelten Klammern wird der Ausdruck im innersten Klammerpaar zuerst ausgewertet. Mehrere nicht geschachtelte Klammerpaare werden von links nach rechts ausgewertet. * Multiplikation / % + - Division Modulo Addition Subtraktion Als Zweites ausgewertet. Wenn mehrere vorhanden sind, werden sie von links nach rechts ausgewertet. Zum Schluss ausgewertet. Wenn mehrere vorhanden sind, werden sie von links nach rechts ausgewertet. Fig. 2.8 Vorrang von arithmetischen Operatoren.

46 46 Häufiger Programmierfehler Einige Programmiersprachen verwenden die Operatoren ** oder ^ um Exponentiation auszudrücken. C++ unterstützt diese Exponentiationsoperatoren nicht; der Versuch ihrer Verwendung führt zu Fehlermeldungen.

47 47 Praxis-Tipp Der Einsatz von redundanten Klammern in komplexen arithmetischen Ausdrücken kann die Ausdrücke klarer machen.

48 2.7 Fallunterscheidungen: Vergleichsoperatoren 48 Bedingung Ausdruck, der entweder wahr (true) oder falsch (false) sein kann Kann mit Hilfe von Vergleichs- und Gleichheitsoperatoren formuliert werden if Anweisung Falls die Bedingung true ist, wird der Körper der if Anweisung ausgeführt. Falls die Bedingung false ist, wird der Körper der if Anweisung nicht ausgeführt.

49 49 Algebraischer Vergleichsoperator C++ Vergleichsoperator C++ Bedingung Bedeutung der C++ Bedingung Vergleichsoperatoren > x > y x ist größer als y < x < y x ist kleiner als y >= x >= y x ist größer als oder gleich y <= x <= y x ist kleiner als oder gleich y Gleichheitsoperatoren = == x == y x ist gleich y!= x!= y x ist ungleich y Fig. 2.9 Vergleichs- und Gleichheitsoperatoren.

50 50 Häufiger Programmierfehler Einen der Operatoren ==,!=, >= und <= mit Leerzeichen zwischen seinen beiden Zeichen zu schreiben ist ein Syntaxfehler.

51 51 Häufiger Programmierfehler Die Reihenfolge der beiden Zeichen in einem der Operatoren!=, >= und <= zu vertauschen (also =!, => und =< zu schreiben) ist normalerweise ein Syntaxfehler. Es kann vorkommen, dass!= als =! zu schreiben nicht zu einem Syntaxfehler führt, in aller Regel dann aber zu einem logischen Fehler, der sich bei der Ausführung des Programms auswirkt.

52 52 Häufiger Programmierfehler Die Verwechslung des Gleichheitsoperators == mit dem Zuweisungsoperator = ist ein typischer Anfängerfehler. Der Gleichheitsoperator sollte als ist gleich zu gelesen werden und der Zuweisungsoperator sollte als wird zu oder bekommt den Wert von gelesen werden.

53 2.7 Fallunterscheidungen: Vergleichsoperatoren 53 using-deklarationen Erlauben, dass Namen aus einem bestimmten Namensbereich innerhalb eines Programms verwendet werden können, ohne dass der Namensbereich jedesmal explizit angegeben werden muss. Syntax: using std::cout; using std::cin; using-direktive Schließt alle Namen eines Namensbereichs in ein Programm ein, so dass der Namensbereich nicht mehr bei jedem Namen angeführt werden muss. Syntax: using namespace std;

54 1 // Fig. 2.13: fig02_13.cpp 2 // Comparing integers using if statements, relational operators 3 // and equality operators. 4 #include <iostream> // allows program to perform input and output 5 6 using std::cout; // program uses cout 7 using std::cin; // program uses cin 8 using std::endl; // program uses endl 9 10 // function main begins program execution 11 int main() 12 { 13 int number1 = 0; // first integer to compare (initialized to zero) 14 int number2 = 0; // second integer to compare (initialized to zero) cout << "Enter two integers to compare: "; // prompt user for data 17 cin >> number1 >> number2; // read two integers from user if( number1 == number2 ) 20 cout << number1 << " == " << number2 << endl; if( number1!= number2 ) 23 cout << number1 << "!= " << number2 << endl; if( number1 < number2 ) 26 cout << number1 << " < " << number2 << endl; if( number1 > number2 ) 29 cout << number1 << " > " << number2 << endl; 30 using Deklarationen vermeiden die Einleitung std:: im Programmtext cout und cin können jetzt ohne std:: geschrieben werden Outline fig02_13.cpp (1 von 2) Falls die Bedingung true ist (d.h., die Werte sind gleich), wird diese Anweisung ausgeführt Pearson Education, Inc. All rights reserved.

55 31 if( number1 <= number2 ) 32 cout << number1 << " <= " << number2 << endl; if( number1 >= number2 ) 35 cout << number1 << " >= " << number2 << endl; 36 } // end function main Enter two integers to compare: 3 7 3!= 7 3 < 7 3 <= 7 Outline fig02_13.cpp (2 von 2) 55 Enter two integers to compare: != > >= 12 Enter two integers to compare: == 7 7 <= 7 7 >= Pearson Education, Inc. All rights reserved.

56 56 Praxis-Tipp using Deklarationen sollten direkt nach dem #include stehen, auf das sie sich beziehen. using Deklarationen sind einer using Direktive grundsätzlich vorzuziehen, weil so dass Konzept des Namensbereichs besser unterstützt wird. In Praktikum und Klausur ist eine using Direktive für den Namensbereich std erlaubt.

57 57 Praxis-Tipp Die Anweisung(en) im Körper einer if Anweisung sollten eingerückt werden, um die Lesbarkeit zu verbessern. Aus Gründen der Lesbarkeit sollte nicht mehr als eine Anweisung in einer Programmzeile stehen.

58 58 Häufiger Programmierfehler Ein Semikolon direkt nach der rechten Klammer der Bedingung einer if Anweisung ist meist ein logischer Fehler (jedoch kein Syntaxfehler!). Das Semikolon bewirkt, dass der Körper der if Anweisung leer ist, so dass die if Anweisung unabhängig von ihrer Bedingung keine Aktion ausführt. Die ursprünglich im Körper der if Anweisung stehende Anweisung wird danach auf alle Fälle ausgeführt, so dass das Ergebnis unabhängig von der if Bedingung wird.

59 59 Praxis-Tipp Eine lange Anweisung kann über mehrere Zeilen verteilt werden. In diesem Fall sollten sinnvolle Trennstellen, wie hinter einem Komma in einer kommagetrennten Liste, oder nach einem Operator in einem langen Ausdruck, gewählt werden. Alle so entstehenden Folgezeilen sollten auf die gleiche Weise eingerückt werden.

60 60 Operator Assoziativität Typ () von links nach rechts Klammern * / % von links nach rechts multiplikativ + - von links nach rechts additiv << >> von links nach rechts Aus-/Eingabe < <= > >= von links nach rechts Vergleich ==!= von links nach rechts Gleichheit = von rechts nach links Zuweisung Fig Vorrang und Assoziativität der bisher besprochenen Operatoren.

61 61 Praxis-Tipp Vorrang und Assoziativität von Operatoren können in der entsprechenden Tabelle nachgesehen werden. Bei Unsicherheit über die Auswertungsreihenfolge in einem komplexen Ausdruck sollte der Ausdruck in kleinere Anweisungen zerlegt oder zusätzliche Klammern verwendet werden. Zuweisungsoperatoren (=) sind im Gegensatz zu den meisten anderen Operatoren rechtsassoziativ.

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

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

Mehr

Java Einführung VARIABLEN und DATENTYPEN Kapitel 2

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

Mehr

Übungen zu C++ Kapitel 1

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

Mehr

Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe

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

Mehr

Grundlagen. Kapitel 1

Grundlagen. Kapitel 1 Grundlagen Dieses Kapitel umfasst grundlegende Fragen und Aufgaben zur Erstellung von C++-Programmen. Hierzu zählen auch das Inkludieren von Header-Dateien Eine Header-Datei beinhaltet Informationen, die

Mehr

Java Einführung Operatoren Kapitel 2 und 3

Java Einführung Operatoren Kapitel 2 und 3 Java Einführung Operatoren Kapitel 2 und 3 Inhalt dieser Einheit Operatoren (unär, binär, ternär) Rangfolge der Operatoren Zuweisungsoperatoren Vergleichsoperatoren Logische Operatoren 2 Operatoren Abhängig

Mehr

3 Die Grundrechenarten

3 Die Grundrechenarten 3 Die Grundrechenarten In diesem Kapitel wollen wir uns unter anderem mit folgenden Themen beschäftigen: Operatoren für die Addition, Subtraktion, Multiplikation und Division Modulooperator, auch Restoperator

Mehr

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

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

Mehr

Objektorientiertes Programmieren für Ingenieure

Objektorientiertes Programmieren für Ingenieure Uwe Probst Objektorientiertes Programmieren für Ingenieure Anwendungen und Beispiele in C++ 18 2 Von C zu C++ 2.2.2 Referenzen und Funktionen Referenzen als Funktionsparameter Liefert eine Funktion einen

Mehr

Klausur in Programmieren

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

Mehr

Diana Lange. Generative Gestaltung Operatoren

Diana Lange. Generative Gestaltung Operatoren Diana Lange Generative Gestaltung Operatoren Begriffserklärung Verknüpfungsvorschrift im Rahmen logischer Kalküle. Quelle: google Operatoren sind Zeichen, die mit einer bestimmten Bedeutung versehen sind.

Mehr

2 Einfache Rechnungen

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

Mehr

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

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

Mehr

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

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

Mehr

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

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

Mehr

Zusammengesetzte Datentypen -- Arrays und Strukturen

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

Mehr

Grundlegende Anweisungen in C++

Grundlegende Anweisungen in C++ Grundlegende in C++ Peter Bastian Dieses Dokument basiert auf einer ursprünglich englischen Fassung von Katharina Vollmayr-Lee (http: // www. eg. bucknell. edu/ ~ kvollmay/ caps_ s2010/ C+ +_ summary.

Mehr

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

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

Mehr

2.4 Das erste C++-Programm *

2.4 Das erste C++-Programm * 2.4 Das erste C++-Programm * 11 2.4 Das erste C++-Programm * Den besten Lernerfolg erzielen Sie, wenn Sie alle Beispiele dieses Buchs selbst nachvollziehen. Sie können hierzu einen Compiler verwenden,

Mehr

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

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

Mehr

C++ - Lernen und professionell anwenden

C++ - Lernen und professionell anwenden mitp Professional C++ - Lernen und professionell anwenden von Prof. Dr. Ulla Kirch, Dr. Peter Prinz 6., überarbeitete Auflage 2012 C++ - Lernen und professionell anwenden Kirch / Prinz schnell und portofrei

Mehr

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

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

Mehr

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

Prinzipielle Ausführungsvarianten I

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

Mehr

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

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 16 Kapitel 5 Arithmetische Operatoren Seite 1 von 16 Arithmetische Operatoren - Man unterscheidet unäre und binäre Operatoren. - Je nachdem, ob sie auf einen Operanden wirken, oder eine Verknüpfung zweier

Mehr

Angewandte Mathematik und Programmierung

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

Mehr

Programmierung in C. Grundlagen. Stefan Kallerhoff

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

Mehr

Grundlagen C und C++ Einheit 03: Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme

Grundlagen C und C++ Einheit 03: Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Grundlagen C und C++ Einheit 03: Grundlagen in C++ Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Teil 1: Wiederholung C Heutige Agenda Nutzereingaben verarbeiten Teil 2: Grundlagen in C++ Erstes

Mehr

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

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

Mehr

Workshop: ASURO-Programmieren in C

Workshop: ASURO-Programmieren in C Workshop: ASURO-Programmieren in C / Teil 1: Theorie Workshop: ASURO-Programmieren in C Teil 1: Theorie Markus Becker http://mbecker-tech.de Bürgernetz Ingolstadt e. V. / ByteWerk Stand: 1. Mai 2010 Copyright:

Mehr

Einführung in die Programmierung (EPR)

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

Mehr

25 kann ohne Rest durch 5 geteilt werden! ist wahr

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

Mehr

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

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

Mehr

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

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

Mehr

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

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

Mehr

Primitive Datentypen. Dr. Wolfgang Süß Thorsten Schlachter

Primitive Datentypen. Dr. Wolfgang Süß Thorsten Schlachter Dr. Wolfgang Süß Thorsten Schlachter Java-Bezeichner Für Variablen, Methoden, Klassen und Schnittstellen werden Bezeichner auch Identifizierer (von engl. identifier) genannt vergeben. Ein Bezeichner ist

Mehr

Teil IV. Grundlagen der Programmierung

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

Mehr

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

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

Mehr

5.4 Klassen und Objekte

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

Mehr

2 Grundelemente eines C++-Programms

2 Grundelemente eines C++-Programms 9 In diesem Kapitel legen wir den Grundstein zur Programmierung in C++. Wir schauen uns an, welche Elemente immer in einem C++-Programm vorkommen und wie Texte auf dem Bildschirm ausgegeben werden können.

Mehr

Modul 122 VBA Scribt.docx

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

Mehr

L6. Operatoren und Ausdrücke

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

Mehr

Python Programmieren. Variablen, Ausdrücke und Anweisungen

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

Mehr

Anweisungsblöcke (dazu zählen auch Programme) werden in geschweifte Klammern eingeschlossen.

Anweisungsblöcke (dazu zählen auch Programme) werden in geschweifte Klammern eingeschlossen. Programmierung in C++ Seite: 1 Beispielprogramm 1: Programmierung in C++ int main() int hoehe = 3; int grundseite = 5; double flaeche = hoehe*grundseite*0.5; cout

Mehr

Grundlagen. Die Komponenten eines C Programms. Das erste Programm

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

Mehr

Neben dem Symbol Entwurfsmodus ist das Symbol Befehlschaltfläche zu sehen.

Neben dem Symbol Entwurfsmodus ist das Symbol Befehlschaltfläche zu sehen. Visual Basic / EXCEL Unterrichtsreihe von Herrn Selbach / Makro Programmierung 1. Die Steuerelemente Toolbox Durch Ansicht Symbolleisten Steuerelemente-Toolbox kann man Befehlschaltflächen (CommandButton),

Mehr

Definition: Die Sprache C++ ist die Menge aller korrekter C++-Programme. Theoretischer Aspekt. // mile2km.cpp: Umwandlung von Meilen in Kilometer

Definition: Die Sprache C++ ist die Menge aller korrekter C++-Programme. Theoretischer Aspekt. // mile2km.cpp: Umwandlung von Meilen in Kilometer Programmierkurs C++ 1. Überblick über C++ Seite 1 1 Überblick über C++ Definition: Die Sprache C++ ist die Menge aller korrekter C++-Programme. Theoretischer Aspekt 1.1 Elemente der Sprache C++ // mile2km.cpp:

Mehr

Einführung in die Java- Programmierung

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

Mehr

Die Programmiersprache C

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

Mehr

FB Informatik. Fehler. Testplan

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

Mehr

Modellierung und Programmierung

Modellierung und Programmierung Modellierung und Programmierung Dr. Martin Riplinger 19.12.2012 IAM Institut für Angewandte Mathematik Funktionszeiger: Vorüberlegungen Funktionsaufrufe sind bis jetzt im Code mit Name explizit angegeben

Mehr

Kapitel 1. Grundlagen

Kapitel 1. Grundlagen Grundlagen Dieses Kapitel beschreibt die nötigen Schritte zur Erstellung eines lauffähigen C- Programms. Diese Schritte können Sie auf Ihrem System anhand von einführenden Beispielen nachvollziehen. Die

Mehr

3. Grundregeln für die Java-Programmierung

3. Grundregeln für die Java-Programmierung 3. Grundregeln für die Java-Programmierung Sprachaufbau von Java Programmen Stilistische Konventionen JavaDoc Allgemeine Informatik 2 SS09 Folie 2.1 Allgemeine Vorbemerkung Bei Programmiersprachen sind

Mehr

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

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

Mehr

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

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

Mehr

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

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

Mehr

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

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

Mehr

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

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

Mehr

Grundlagen der Programmiersprache C++

Grundlagen der Programmiersprache C++ / TU Braunschweig Grundlagen der Programmiersprache C++ Um den Studierenden den Einstieg in die FE-Programmierung zu erleichtern werden die wesentlichen Elemente eines C-Programmes beschrieben, soweit

Mehr

1 Einführung... 13. 2 Erste Schritte... 19. 3 Programmierkurs... 33. 4 Datentypen... 81. 5 Weiterführende Programmierung... 139

1 Einführung... 13. 2 Erste Schritte... 19. 3 Programmierkurs... 33. 4 Datentypen... 81. 5 Weiterführende Programmierung... 139 Auf einen Blick 1 Einführung... 13 2 Erste Schritte... 19 3 Programmierkurs... 33 4 Datentypen... 81 5 Weiterführende Programmierung... 139 6 Objektorientierte Programmierung... 191 7 Verschiedene Module...

Mehr

Aufbau von Programmen/Dateien

Aufbau von Programmen/Dateien Aufbau von Programmen/Dateien Typen von Dateien Header-Dateien (.h): enthalten Deklarationen (auch Signatur, Prototyp, Rumpf) von Funktionen, Variablen, Konstanten und in C++ auch Klassendefinitionen eines

Mehr

620.900 Propädeutikum zur Programmierung

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

Mehr

Codingstandard. Softwareentwicklung Praktikum Stand: 27.02.2008

Codingstandard. Softwareentwicklung Praktikum Stand: 27.02.2008 I. Einleitung II. Codingstandard Softwareentwicklung Praktikum Stand: 27.02.2008 Wie in der Vorlesung schon ausgeführt wurde, ist die Lesbarkeit und Wartbarkeit des Sourcecodes ein sehr wichtiges Kriterium

Mehr

Einführung in die C-Programmierung

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

Mehr

Programmieren in C/C++ und MATLAB

Programmieren in C/C++ und MATLAB Programmieren in C/C++ und MATLAB Sven Willert Christian-Albrechts-Universität zu Kiel CAU 2-1 Datentypen und Formate Mit der Festlegung des Datentyps wird die Art bestimmt, mit der der Computer die Informationen

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

Eine Einführung in C-Funktionen

Eine Einführung in C-Funktionen Eine Einführung in C-Funktionen CGK-Proseminar 2014 Philip Gawehn 04.07.2014, Hamburg Inhaltsverzeichnis 1 Einleitung 2 2 Grundlagen 2 2.1 Der Aufbau einer Funktion....................... 2 2.2 Schlüsselwörter.............................

Mehr

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

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

Mehr

Dr. Monika Meiler. Inhalt

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

Mehr

Fallunterscheidung: if-statement

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

Mehr

IT-Zertifikat: Allgemeine Informationstechnologien II PHP

IT-Zertifikat: Allgemeine Informationstechnologien II PHP IT-Zertifikat: Allgemeine Informationstechnologien II PHP PHP ( PHP: Hypertext Preprocessor ) ist eine serverseitige Skriptsprache: Der PHP-Code wird nicht wie bei JavaScript auf dem Clientrechner ausgeführt,

Mehr

Brainfuck. 1 Brainfuck. 1.1 Brainfuck Geschichte und Umfeld. 1.2 Esoterische Programmiersprachen

Brainfuck. 1 Brainfuck. 1.1 Brainfuck Geschichte und Umfeld. 1.2 Esoterische Programmiersprachen Brainfuck 1 Brainfuck 1.1 Brainfuck Geschichte und Umfeld Brainfuck ist eine sogenannte esoterische Programmiersprache. Sie wurde 1993 vom Schweizer Urban Müller entworfen mit dem Ziel, eine Sprache mit

Mehr

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

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

Mehr

Schmitt, Günter (1996): Fortran 90 Kurs technisch orientiert, R. Oldenbourg Verlag, München

Schmitt, Günter (1996): Fortran 90 Kurs technisch orientiert, R. Oldenbourg Verlag, München MANUEL KALLWEIT & FABIAN KINDERMANN Literaturempfehlung: Vorlesungsskript von Heidrun Kolinsky zu FORTRAN 90/95: http://www.rz.uni-bayreuth.de/lehre/fortran90/vorlesung/index.html Schmitt, Günter (1996):

Mehr

5. Programmieren mit Pascal

5. Programmieren mit Pascal 5. Programmieren mit Pascal 5.0. Einführung 5.0.1. Die Datenorganisation Das Betriebssystem auf unserer vernetzten Rechneranlage heißt Windows XP. Ein Betriebssystem versetzt als Basisprogramm den Rechner

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, WS 14/15 Übungsleiter: Sebastian Ebers <ebers@itm.uni-luebeck.de> Aufgabenblatt 2

Einführung in die Programmierung, WS 14/15 Übungsleiter: Sebastian Ebers <ebers@itm.uni-luebeck.de> Aufgabenblatt 2 Übung zur Vorlesung Einführung in die Programmierung, WS 14/15 Übungsleiter: Sebastian Ebers Aufgabenblatt 2 Abgabe: 17.11.2014, vor der Vorlesung / Großübung (10:00 Uhr, AM

Mehr

Es gibt zwei verschiedene Arten, wie Programme auf dem Rechner ausgeführt werden:

Es gibt zwei verschiedene Arten, wie Programme auf dem Rechner ausgeführt werden: 3 Grundlagen 3.1 Starten eines C++ Programms Es gibt zwei verschiedene Arten, wie Programme auf dem Rechner ausgeführt werden: 1. Programme, die vom Interpreter der Programmiersprache Zeile für Zeile interpretiert

Mehr

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

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

Mehr

Programmieren für Physiker: C++

Programmieren für Physiker: C++ Programmieren für Physiker: C++ Termine: Vorlesung: Di. 8:00-9:30 Uhr, Lehmann-HS (M. Steinhauser) Hörsaalübungen: Fr. 8:00-9:30 Uhr, Lehmann-HS (A. Mildenberger) Computerübungen: (voraussichtlich) (Fragen

Mehr

Kapitel 3. Mein erstes C-Programm

Kapitel 3. Mein erstes C-Programm Kapitel 3 Mein erstes C-Programm 1 Gliederung Kapitel 3 Mein erstes C-Programm 3.1 Einleitung 3.2 Mein erstes C-Programm 3.3 Zusammenfassung 2 Problem Algorithmus Mittelwert für Messwerte berechnen DGL

Mehr

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

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

Mehr

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

Dr. Monika Meiler. Inhalt

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

Mehr

1. LPC - Lehmanns Programmier Contest - Lehmanns Logo

1. LPC - Lehmanns Programmier Contest - Lehmanns Logo Aufgabe ist die Entwicklung einer vereinfachten Variante der beliebten Programmiersprache Logo. Die Aufgabe ist in drei Stufen zu erledigen, von der wir zunächst nur die erste Stufe bekannt geben. Die

Mehr

Praktikum Ingenieurinformatik. Termin 2. Mein erstes C-Programm

Praktikum Ingenieurinformatik. Termin 2. Mein erstes C-Programm Praktikum Ingenieurinformatik Termin 2 Mein erstes C-Programm 1 1. Einleitung 2. Erstes C-Programm 3. Fehler ins Programm einbauen 4. Zweites und drittes C-Programm 5. Installation der Visual C++ 2010

Mehr

Grundlagen von C. Ausarbeitung von Jonas Gresens

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

Mehr

In der Computersprache C ist die Standardmethode zur Behandlung von Matrizen durch

In der Computersprache C ist die Standardmethode zur Behandlung von Matrizen durch Kapitel Matrizen in C++ In der Computersprache C ist die Standardmethode zur Behandlung von Matrizen durch 1 const int n=10; 3 double a[n][n]; gegeben. Allerdings gibt es bei dieser Methode eine Reihe

Mehr

Klausur in Programmieren

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

Mehr

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

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

Mehr

PHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden.

PHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden. PHP Code Konventionen Um einen einheitlichen Code zu generieren, der von jedem gelesen werden kann, müssen folgende Konventionen eingehalten werden. Allgemein Ein Einzug sollte aus 4 Leerzeichen bestehen.

Mehr

Es geht los! 1.1 Historisches

Es geht los! 1.1 Historisches 1 Es geht los! Dieses Kapitel behandelt die folgenden Themen: Entstehung und Entwicklung der Programmiersprache C++ Objektorientierte Programmierung Erste Grundlagen Wie schreibe ich ein Programm und bringe

Mehr

Kurzeinführung in C++

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

Mehr

Programmieren 1 - Grundlagen

Programmieren 1 - Grundlagen Programmieren 1 - Grundlagen Reiner Nitsch 06151/16-8417 r.nitsch@fbi.h-da.de Homepage: www.fbi.h-da.de/~r.nitsch Raum: D14/0.09 Programmiersprachen Maschinensprachen Assembler-Sprachen Hochsprachen (C,

Mehr

Einführung in C++ Operatoren überladen (Klassen)

Einführung in C++ Operatoren überladen (Klassen) Einführung in C++ Operatoren überladen (Klassen) Operatoren überladen Die Überladung von Operatoren ermöglicht es, vorhandene Operatoren (+,-,...) auch auf Objekte von Klassen anzuwenden. Die meisten der

Mehr

Aufgabenkomplex: Programmieren in C (Teil 1 von 2) (Ein-/Ausgabe, Ausdrücke, Steueranweisungen)

Aufgabenkomplex: Programmieren in C (Teil 1 von 2) (Ein-/Ausgabe, Ausdrücke, Steueranweisungen) Aufgabenkomplex: Programmieren in C (Teil 1 von 2) (Ein-/Ausgabe, Ausdrücke, Steueranweisungen) Hinweise: - Alle mit * gekennzeichneten Aufgaben sind zum zusätzlichen Üben gedacht. - Die Studentinnen und

Mehr

Lösungsvorschlag zum Übungsblatt 1 zur Vorlesung Informatik II / WS2001/02

Lösungsvorschlag zum Übungsblatt 1 zur Vorlesung Informatik II / WS2001/02 Lösungsvorschlag zum Übungsblatt 1 zur Vorlesung Informatik II / WS2001/02 Prof. Dr.-Ing. Holger Vogelsang (FH-Karlsruhe) Dipl.-Inform. (FH) Gudrun Keller (FH-Karlsruhe) Dipl.-Inform. Mathias Supp (.riess

Mehr

Prinzipien der Softwareentwicklung S. Strahringer

Prinzipien der Softwareentwicklung S. Strahringer Gliederung 1 Einführung Was ist ein Programm? Vorteile (und Nachteile) von PHP Erste PHP-Programme Ausführung von PHP-Programmen 2 Grundbegriffe der Programmierung Anweisungen, Variablen, Datentypen und

Mehr

Selber Programmieren

Selber Programmieren Selber Programmieren Wenn es für ein Problem keine fertige Lösung gibt, oder wenn man keine fertige Lösung finden kann, dann muss man sich das benötigte Werkzeug selbst herstellen: Ein eigenes Programm

Mehr

3 Berechnungen und Variablen

3 Berechnungen und Variablen 3 Berechnungen und Variablen Du hast Python installiert und weißt, wie man die Python-Shell startet. Jetzt kannst Du etwas damit machen. Wir fangen mit ein paar einfachen Berechnungen an und wenden uns

Mehr