Gestrige Themen. Erste Schritte in Linux. Benutzung des Compilers und Editors. Variablen. Ein- und Ausgabe mit cin, cout (C++) Verzweigungen

Größe: px
Ab Seite anzeigen:

Download "Gestrige Themen. Erste Schritte in Linux. Benutzung des Compilers und Editors. Variablen. Ein- und Ausgabe mit cin, cout (C++) Verzweigungen"

Transkript

1 1 Gestrige Themen Erste Schritte in Linux Benutzung des Compilers und Editors Variablen Ein- und Ausgabe mit cin, cout (C++) Verzweigungen Ausdrücke

2 2 Themen heute Elementare Datentypen Kontrollstrukturen Funktionen Ausgabe mit printf (C)

3 3 Eingebaute Datentypen Logische Variablen (boolean) bool bool flag; (1 Byte) (nur C++) mögliche Werte: true, false Ganze Zahlen (integers) ((un)signed) short int short int a; a=1; (1 oder 2 Bytes) ((un)signed) int int b; b=-3; (2 oder 4 Bytes) ((un)signed) long int long int c; c=123; (4 oder 8 Bytes) Fließkommazahlen (floating point numbers) float float x; x=3.0; (4 Bytes) double double y; y=-1.5e4; (8 Bytes) long double long double z; z=y; (8 oder 16 Bytes) Buchstaben (characters) char, (un)signed char char c; c= f ; (1 Byte)

4 4 Implizite Typumwandlung Die elementaren Datentypen können ineinander umgewandelt werden. Ganzzahlige Umwandlungen int i1 = ; // i1 == 511 char ch = i1; // ch == 255 (!!) int i2 = ch; // undefiniert, i2 == 255 i2 == -1 Gleitkommaumwandlungen float f1 = FLT_MAX; double d1 = f1; float f2 = d1; double d2 = DBL_MAX; float f3 = d2; // maximaler float-wert // OK: d1 == f1 // OK: f2 == d1 // maximaler double-wert // undefiniert, weil FLT_MAX<DBL_MAX Umwandlung von Gleitkommazahlen zu ganzen Zahlen int i = 0.999; // i == 0 double x = i; // x == 0.0

5 5 Explizite Typumwandlung (Casting) Beispiel: Vorsicht: die Implizite Typumwandlung führt manchmal zu unerwarteten Ergebnissen! double x = 1/4; // x = 0.0 (!!) Man kann dies durch explizite Typumwandlung vermeiden: double x = double(1/4); // nutzt nichts : x == 0.0 double x = double(1)/double(4); // schon besser : x == 0.25 double x = 1.0 / 4.0; // am einfachsten int i = (int) x; // i == 0, C-Stil int j = int(x); // moderner

6 6 Beispiele für Ausdrücke int a = 42, b = -9; double x = 1, y = 4.2; Ausdruck Typ Wert a+b int 33 a < b bool false 1 + (a < b) int 1 x + a / y double 11.0 x >= a bool false a!= 9 && y > x bool true a++ int 42 (a ist 43) ++b int -8 (b ist -8) b = (int)y + 3 int 7 (b = (int)y + 3) == 7 bool true

7 7 Hello World! C #include <stdio.h> int main() /* This is the world s most famous program! */ printf("hello World!\n"); return 0; Compilierung: mit dem Befehl gcc -o hello hello w.c

8 8 Erläuterungen stdio.h ist eine C-Systembibliothek zur Ein- und Ausgabe printf ist der C-Befehl, um Daten in die Standardausgabe zu schreiben. C kennt keine using-direktive Ausgabe elementarer Datentypen mit printf #include <stdio.h> int main() i double alpha=3.3; int a=5; char* name="rwth"; printf("die %s ist ueber 100 Jahre alt.\n",name); printf("alpha= %e, a=%d\n",alpha,a);

9 9 Formatangaben bei printf %d ganze Dezimalzahl, %f Gleitkommazahl, %e Exponentialschreibweise %c (einzelnes) ASCII Zeichen %s Zeichenkette (später) %p Zeiger (später) Zeilende : \n Prozentzeichen: \% Viele weitere Formatangaben möglich, siehe auch man 3 printf Formatierte Eingabe: man 3 scanf, man 3 getchar

10 10 Steuerungszeichen und Escape Sequencen #include <stdio.h> int main() printf("\033[35m violett\033[0m"); printf("\033[34m blue \033[0m"); printf("\033[1m bold \033[0m\n"); Programmausführung violett blue bold Steuerungszeichen und Escape-Sequencen dienen zur Programmierung der Linux Konsole, siehe z. B. K. Johnson, E. Troan: Anwendungen entwickeln unter Linux, Addison Wesley, 1998.

11 11 Beispiel -2- zur Ein- und Ausgabe (C-Style) #include <stdio.h> int main() printf("geben Sie ein Zeichen ein\n"); printf("bestaetigen Sie die Eingabe mit <Enter>: "); char c=getchar(); printf("\ndas eingegebene Zeichen war %c.\n\n",c); Programmausführung Geben Sie ein Zeichen ein Bestaetigen Sie die Eingabe mit <Enter>: a Das eingegebene Zeichen war a.

12 12 Schleifen 1: while-schleife #include <iostream> using namespace std; int main() int n = 2; while( n <= 1000 ) cout << n << endl; n = n*2; return 0;

13 13 Ausgabe: Die Bedingung wird vor jedem Schleifendurchlauf geprüft. while( i<1000 ) i++; while( true )... // Endlosschleife while( error!=0 && itno<=maxit )...

14 14 Schleifen 2: do-while-schleife, #include <iostream> using namespace std; int main() int n; // nicht initialisiert, hier ok do cout << "Bitte n eingeben: "; cin >> n; cout << "n*n = " << n*n << endl; while( n!= 0 ); cout << "Programmende" << endl; return 0;

15 15 Ausgabe: Bitte n eingeben: 5 n*n = 25 Bitte n eingeben: 8 n*n = 64 Bitte n eingeben: 0 n*n = 0 Programmende! Die Bedingung wird nach jedem Schleifendurchlauf geprüft.

16 16 Schleifen 3: for-schleife #include <iostream> #include <iomanip> // fuer setw using namespace std; int main() for(int i = 0; i <= 15; i++) cout << setw(5) << i << setw(5) << i*i << endl; return 0;

17 17 Ausgabe:

18 18 Mehr for-schleifen for( i=0; i<n; i++ ) // i laeuft von 0 bis n-1... for( int i=100; i>0; i-- )... for( i=0,j=0; i<10; i++,j+=2 )... for( x=0; x<=xmax; x+=0.5 )... for(;;)... // Endlosschleife

19 19 Zurück zum Anfang: continue x=0; while(x<10) x++; if(x==5) continue; cout << x << " " << flush; Ausgabe: Die continue Anweisung springt zum Kopf der innersten for, do oder while Schleife, in der sie vorkommt.

20 20 Die switch Anweisung #include <iostream> using namespace std; int main() int code; cout << "Bitte geben Sie 0 oder 1 ein:"; cin >> code; switch(code) case 0: cout << "Null!" << endl; break; case 1: cout << "Eins!" << endl; break; default: cerr << "Weder Null noch Eins!" << endl; // switch zu Ende

21 21 int i; switch(i) case 1: case 2: cout << "x ist 1 oder 2" << endl; break; case 3: cout << "x ist 3" << endl; Vorsicht! Die break Anweisung springt hinter den innersten do, for, while oder switch Anweisungsblock, in dem sie steht.

22 22 Beispiel für ein sinnvolles goto int i,j; for( i=0; i<n; i++ ) for( j=0; j<n; j++ ) if( i==1 && j==2) goto gefunden; gefunden: cout << "gefunden!\n";

23 23 Aufzählungstypen Eine Aufzählung ist eine Folge von konstanten ganzzahligen Werten, z.b. enum Antwort Ja,Nein; Wenn nicht explixit angegeben, hat der erste Name den Wert 0, der nächste 1 usw. Ja=0, Nein=1 Wenn einem Namen kein Wert zugeordnet ist, so hat er den Wert des vorangehenden Namens+1. enum Wochentage Sonntag=1, Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag; Montag=2, Dienstag=3, usw.

24 24 Beispiel #include <iostream> using namespace std; enum SpielausgangSIEG, NIEDERLAGE, UNENTSCHIEDEN, AUFGABE; int main() Spielausgang Ausgang, Verletzung = AUFGABE; int Spiel_Nr; for (Spiel_Nr=0; Spiel_Nr<=3; Spiel_Nr++) Ausgang = (Spielausgang)Spiel_Nr; if (Ausgang == Verletzung)

25 25 cout << "Das Spiel " << Spiel_Nr << " wurde abgebrochen.\n"; else cout << "Das Spiel " << Spiel_Nr << " wurde ausgetragen"; switch (Ausgang) case SIEG: cout << ", und wir haben gewonnen! (-:\n"; break; case NIEDERLAGE: cout << ", und wir haben verloren. )-:\n"; break; case UNENTSCHIEDEN: cout << " und ging " << "unentschieden aus. -:\n";

26 26 return 0;

27 27 Führt man dieses Programm aus, so erhält man folgende Ausgabe auf dem Bildschirm: Das Spiel 0 wurde ausgetragen, und wir haben gewonnen! (-: Das Spiel 1 wurde ausgetragen, und wir haben verloren. )-: Das Spiel 2 wurde ausgetragen und ging unentschieden aus. -: Das Spiel 3 wurde abgebrochen.

28 28 Beispiel: Anhalteweg 3 /* Name : anhalt3 Zweck : Berechnung Anhaltewegs eines Autos und Erstellung einer Tabelle Autor : Lieschen Eifrig Stand : , Uhr */ #include <iostream> #include <iomanip> // zur Formatierung der Ausgabe using namespace std; int main() double Verzoegerung, // Verzoegerung [m/(s*s)] ReaktionsZeit, // Reaktionszeit [s] v0; // Geschwindigkeit [m/s] bool Nochmal = 0; // mehrfache Ausfuehrung? char Eingabe_Code; // fuer Abfrage

29 29 do cout << "Beschaffenheit der Strasse" << " E(is) S(chnee) N(ass) T(rocken): "; cin >> Eingabe_Code; cout << "Anhaltweg auf "; switch ( Eingabe_Code ) case E : case e : cout << "eisiger Strasse:" << endl; Verzoegerung = 0.5; break; // <=== wichtig!! case S : case s : cout << "verschneiter Strasse:" << endl; Verzoegerung = 0.38; break; case N : case n : cout << "nasser Strasse:" << endl; Verzoegerung = 1.9;

30 30 break; case T : case t : cout << "trockener Strasse:" << endl; Verzoegerung = 2.5; break; default : cerr << "Ungueltige Beschaffenheit " << "der Strasse" << endl; return 1; // Ende der Switch-Anweisung // cout << setiosflags(ios::showpoint) << setiosflags(ios::fixed) << setiosflags(ios::right) << setprecision(2); // auch Nullen am Ende zeigen, Festkomma-Format, // rechtsbuendige Ausgabe, 2 Stellen hinter dem Punkt

31 31 cout << endl; cout << " Anf.Geschw. Anhalteweg [m] " << endl; cout << " [m/s] Frisch Muede Betrunken" << endl; cout << "==============================================" << endl; for (v0=1; v0<=60; v0+=3) cout << setw(8) << v0 << " "; for (int i=0; i<3; i++) switch ( i ) case 0: // Zustand = Frisch; ReaktionsZeit = 0.2; break; case 1: // Zustand = Muede;

32 32 ReaktionsZeit = 0.8; break; case 2: // Zustand = Betrunken; ReaktionsZeit = 2; break; // Ende der Switch-Anweisung cout << setw(11) << v0*reaktionszeit + 0.5*v0*v0/Verzoegerung; if (i==2) cout << endl; // for i // for v0 cout << endl << "Neue Berechnung [j/n]: "; cin >> Eingabe_Code; if ( Eingabe_Code == j ) Nochmal = 1; else if ( Eingabe_Code == n ) Nochmal = 0;

33 33 else cerr << "Falsche Eingabe. Abbruch." << endl; return 1; while (Nochmal); // do-while return 0;

34 34 Bei einem Programmlauf wird dabei z.b. folgende Tabelle erzeugt: Anhaltweg auf eisiger Strasse: Anf.Geschw. Anhalteweg [m] [m/s] Frisch Muede Betrunken ==============================================

35

36 36 Funktionen Programmteile werden zu Unterprogrammen zusammengefaßt. logische Untergliederung eins Programmes leichtere Verständlichkeit und Fehlersuche Arbeitsersparnis Top-Down-Entwurf: Das Problem wird solange in einfachere Probleme zerlegt, bis nur noch elementare Aufgaben zu lösen sind. Bottom-Up-Entwurf: Einfache und bereits vorhandene Bausteine werden zu leistungsfähigeren Unterprogrammen zusammengesetzt. In der Praxis werden beide Strategien gemischt.

37 37 Beispiel: Verwendung von Funktionen #include <iostream> using namespace std; double Anhalteweg(double a, double reakt, double v0) if( a <= 0 ) cerr << "Die Verzoegerung muss positiv sein!" << endl; cerr << "Unsinnige Eingabe!" << endl; return (-1); // Verlaesst die Funktion und gibt -1 zurueck. return v0*reakt + 0.5*v0*v0/a;

38 38 int main() double Verzoegerung, // Verzoegerung [m/(s*s)] ReaktionsZeit, // Reaktionszeit [s] v0; // Geschwindigkeit [m/s] cout << "Verzoegerung [m/s^2] (>0): "; cin >> Verzoegerung; cout << "Reaktionszeit [s] : "; cin >> ReaktionsZeit; cout << "Geschwindigkeit [m/s] : "; cin >> v0; cout << "... ergibt einen Anhalteweg von " << Anhalteweg(Verzoegerung,ReaktionsZeit,v0) << " m" << endl; return 0;

39 39 Call by value #include <iostream> using namespace std; // y^k fuer k >= 0 und y!=0 double mypow(double y, int k) double result = 1; while( k-- ) result *= y; return result;

40 40 int main() double x = 3.0; int n = 4; double potenz = mypow(x, n); cout << x << "^" << n << " = " << potenz << endl; return 0; Die Ausgabe des Programmes ist: 3^4 = 81

41 41 Lokale und globale Variablen #include <cstdio> int global = 1000; //globale Variable //Gueltigkeitsbereich: gesamte Datei void func() // Programm enthaelt ausser main //noch eine weitere Funktion: func int lokal3 = 4000; // lokale Variable // Gueltltigkeitsbereich: func printf("\n\nfunc: Wert von global ist %d", global); printf("\nfunc: Wert von lokal3 ist %d", lokal3);

42 int main() // Anfang aeusserer Block main int lokal1 = 2000; // lokale Variable // Gueltigkeitsbereich: main printf("aeusserer Block main: Wert von global ist %d\n",global); printf("aeusserer Block main: Wert von lokal1 ist %d\n\n",lokal1); 42 // Anfang innerer Block main int lokal2 = 3000; // lokale Variable // Gueltigkeitsbereich: Block printf("innerer Block main: Wert von global ist %d\n",global); printf("innerer Block main: Wert von lokal1 ist %d\n",lokal1); printf("innerer Block main: Wert von lokal2 ist %d",lokal2); // Ende innerer Block main func(); // Funktionsaufruf func // Ende aeusserer Block main

43 43 erzeugt die Ausgabe aeusserer Block main: Wert von global ist 1000 aeusserer Block main: Wert von lokal1 ist 2000 Innerer Block main: Wert von global ist 1000 Innerer Block main: Wert von lokal1 ist 2000 Innerer Block main: Wert von lokal2 ist 3000 func: Wert von global ist 1000

44 44 Lokale und globale Variablen -2- #include <cstdio> int x = 1000; // globale Variable void func() int x = 4000; // lokale Variable printf("\nfunc: Wert von x ist %d", x); main() int x = 2000; //lokale Variable printf("aeusserer Block main: Wert von x ist %d", x); int x = 3000; //lokale Variable

45 45 printf("\ninnerer Block main: Wert von x ist %d", x); func(); //Funktionsaufruf erzeugt die Ausgabe aeusserer Block main: Wert von x ist 2000 Innerer Block main: Wert von x ist 3000 func: Wert von x ist 4000

46 46 Lokale und statische Variablen #include <iostream> using namespace std; int Zaehle1() int a = 0; a = a + 1; return a; int Zaehle2() static int a = 0; a = a + 1; return a;

47 47 int main() for(int i = 0; i < 5; i++) cout << Zaehle1() << ", " << Zaehle2() << endl; return 0; erzeugt die Ausgabe 1, 1 1, 2 1, 3 1, 4 1, 5

48 48 Rekursionen #include <iostream> using namespace std; int fakultaet(int n) if (0==n) return 1; // Abbruch else return n*fakultaet(n-1); // Rekursion int main() int n; cout << "Fakultaet von "; cin >> n; cout << n << "! = " << fakultaet(n) << endl; return 0;

49 49 Standardwerte für Parameter (nur C++) #include <iostream> #include <iomanip> using namespace std; // Funktionsdeklaration : int Volumen(int Laenge, int Breite = 2, int Hoehe = 3); int main() cout << "Eingangsdaten (L,B,H):" << setw(5) << Volumen(10, 12, 15) << endl; cout << "Eingangsdaten (L,B,H):" << setw(5) << Volumen(10, 12) << endl; cout << "Eingangsdaten (L,B,H):" << setw(5) << Volumen(10) << endl;

50 50 return 0; int Volumen(int Laenge, int Breite, int Hoehe) cout << setw(3) << Laenge << " " << setw(3) << Breite << " " << setw(3) << Hoehe << " ergibt ein Volumen von "; return Laenge * Breite * Hoehe;

51 51 Das Programm produziert folgenden Output: Eingangsdaten (L,B,H): ergibt ein Volumen von 1800 Eingangsdaten (L,B,H): ergibt ein Volumen von 360 Eingangsdaten (L,B,H): ergibt ein Volumen von 60 Default-Argumente können nur für hinten stehende Argumente benutzt werden: int Volumen(int Laenge, int Breite=10, int Hoehe=5); int Volumen(int Laenge, int Breite=10, int Hoehe); // OK // Fehler

52 52 Funktionsdeklarationen double sqrt(double); double x = sqrt(2); void g(int a, int b); bool first(); // implizite Typumwandlung void f(int p) /*...*/ return 1; void f(int p) /*...*/ return; void f(int p) /*...*/ return g(p,p); // Funktion ohne Rückgabewert // Funktion ohne Argumente // Fehler // OK // OK

53 53 Überladen von Funktionen (nur C++) int teile (int a, int b) cout << "Teile Integers" << endl; return a/b; double teile (double a, double b) cout << "Teile Doubles" << endl; return a/b; void main() cout << teile(1,4) << endl; cout << teile(1.0,4.0) << endl;

54 54 Beim Ausführen dieses Programms entsteht folgende Ausgabe: Teile Integers 0 Teile Doubles 0.25

Gestrige Themen. Benutzung des Compilers und Editors. Variablen. Ein- und Ausgabe mit cin, cout (C++) Verzweigungen. Schleifen

Gestrige Themen. Benutzung des Compilers und Editors. Variablen. Ein- und Ausgabe mit cin, cout (C++) Verzweigungen. Schleifen 1 Gestrige Themen Benutzung des Compilers und Editors Variablen Ein- und Ausgabe mit cin, cout (C++) Verzweigungen Schleifen Ausdrücke 2 Themen heute Elementare Datentypen Zusatz zu Kontrollstrukturen

Mehr

Vorlesungsprüfung Programmiersprache 1

Vorlesungsprüfung Programmiersprache 1 Vorlesungsprüfung Programmiersprache 1 Termin der Prüfung: 1) Di 20.03.2018 16:15 17:00 HSB 3 2) Di 15.05.2018 16:15 17:00 HSB 3 3) Di 12.06.2018 16:15 17:00 HSB 3 Stoffgebiete: 1) Ganzzahltypen: char,

Mehr

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22 C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven

Mehr

Einführung in die Programmierung Wintersemester 2011/12

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

Mehr

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

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf  Seite 1 von 29 Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente

Mehr

Grundlagen der Informatik 2. Typen

Grundlagen der Informatik 2. Typen Grundlagen der Informatik 2. Typen Speicher, Speicherbedarf Ein-/Ausgabe Grundlagen der Informatik (Alex Rempel) 1 Wiederholung // root calculation #include #include using namespace

Mehr

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

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

Mehr

Funktionales C++ zum Ersten

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

Mehr

Einführung in den Einsatz von Objekt-Orientierung mit C++ I

Einfü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

Mehr

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

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

Mehr

Welche Informatik-Kenntnisse bringen Sie mit?

Welche Informatik-Kenntnisse bringen Sie mit? Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt

Mehr

Grundlagen der Informatik 4. Kontrollstrukturen I

Grundlagen der Informatik 4. Kontrollstrukturen I 4. Kontrollstrukturen I Anweisungen und Blöcke Grundlagen der Informatik (Alex Rempel) 1 Anweisungen und Blöcke Anweisungen ("statements") Immer mit Semikolon abzuschließen "Leere" Anweisung besteht aus

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

Auswahlen (Selektionen)

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

Mehr

Klausur: Informatik I am 06. Februar 2009 Gruppe: D Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: Informatik I am 06. Februar 2009 Gruppe: D Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte: Seite 1 von 10 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 ( / 12 Pkt.) Was liefert

Mehr

5. Elementare Befehle und Struktogramme

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

Mehr

Grundlagen der Informatik 5. Kontrollstrukturen II

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

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert

Mehr

Klausur: Grundlagen der Informatik I, am 06. Februar 2009 Gruppe: A Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Klausur: Grundlagen der Informatik I, am 06. Februar 2009 Gruppe: A Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr. Seite 1 von 9 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 ( / 12 Pkt.) Was liefert

Mehr

4.2 Programmiersprache C

4.2 Programmiersprache C 4.2.1. Elementare Datentypen (signed) int, unsigned int, (signed) short (int), unsigned short (int), (signed) long (int), unsigned long (int) Elementare Datentypen für ganze Zahlen mit oder ohne Vorzeichen.

Mehr

C++ Teil 4. Sven Groß. 30. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 16

C++ Teil 4. Sven Groß. 30. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 16 C++ Teil 4 Sven Groß IGPM, RWTH Aachen 30. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 4 30. Apr 2015 1 / 16 Themen der letzten Vorlesung Funktionen: Definition und Aufruf Wert- und Referenzparameter,

Mehr

Algorithmen zur Datenanalyse in C++

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

Mehr

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung

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

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

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

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

Mehr

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

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

Mehr

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

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

Grundlagen der Programmierung

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

Mehr

Verwendung Vereinbarung Wert einer Funktion Aufruf einer Funktion Parameter Rekursion. Programmieren in C

Verwendung Vereinbarung Wert einer Funktion Aufruf einer Funktion Parameter Rekursion. Programmieren in C Übersicht Funktionen Verwendung Vereinbarung Wert einer Funktion Aufruf einer Funktion Parameter Rekursion Sinn von Funktionen Wiederverwendung häufig verwendeter nicht banaler Programmteile Wiederverwendung

Mehr

C-Crashkurs. Praktikum Systemmanagement und Sicherheit

C-Crashkurs. Praktikum Systemmanagement und Sicherheit C-Crashkurs Praktikum Systemmanagement und Sicherheit ZIELE DIESES KURSES 15.04.2014 Dipl.-Inf. M. Bohr C_Crashkurs 2 Compiler gcc verwenden geläufigste Datentypen in C kennen Fehlerbehandlung (ohne Ausnahmeklassen)

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

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

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

Mehr

Einstieg in die Informatik mit Java

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

Mehr

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

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

Mehr

Unterlagen. CPP-Uebungen-08/

Unterlagen.  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

Mehr

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) 1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollstrukturen - 1 - Anweisung Anweisung Zuweisung Methodenaufruf

Mehr

einlesen n > 0? Ausgabe Negative Zahl

einlesen n > 0? Ausgabe Negative Zahl 1 Lösungen Kapitel 1 Aufgabe 1.1: Nassi-Shneiderman-Diagramm quadratzahlen Vervollständigen Sie das unten angegebene Nassi-Shneiderman-Diagramm für ein Programm, welches in einer (äußeren) Schleife Integer-Zahlen

Mehr

Grundlagen der Programmierung

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

Mehr

Java: Eine kurze Einführung an Beispielen

Java: 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

Mehr

BKTM - Programmieren leicht gemacht.

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

Mehr

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

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

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

RO-Tutorien 15 und 16

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

Mehr

Programmieren in C/C++ und MATLAB

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

Mehr

C++ vs. Java. Hello world! Java C++ class HelloWorld { static public void main(string args) { System.out.println("Hello World!

C++ vs. Java. Hello world! Java C++ class HelloWorld { static public void main(string args) { System.out.println(Hello World! Hello world! Java class HelloWorld { static public void main(string args) { System.out.println("Hello World!"); } } C #include main() { printf("hello World!\n"); } C++ #include using

Mehr

RO-Tutorien 3 / 6 / 12

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

Mehr

C++ - 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 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

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere

Mehr

Kontrollstrukturen -- Schleifen und Wiederholungen

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

Mehr

Einführung in die Programmiersprache C

Einführung in die Programmiersprache C Einführung in die Programmiersprache C Marcel Arndt arndt@ins.uni-bonn.de Institut für Numerische Simulation Universität Bonn Der Anfang Ein einfaches Programm, das Hello World! ausgibt: #include

Mehr

Klausur: Grundlagen der Informatik I, am 06. Februar 2009 Gruppe: B Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Klausur: Grundlagen der Informatik I, am 06. Februar 2009 Gruppe: B Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr. 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 ( / 12 Pkt.) Was liefert

Mehr

3. Anweisungen und Kontrollstrukturen

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

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form

Mehr

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

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

Mehr

Pseudo-Programmiersprache

Pseudo-Programmiersprache 1 Erste Schritte in C++ 4 Beschreibungsmöglichkeiten für Algorithmen Struktogramm Das gezeigte Struktogramm enthält die elementaren Grundstrukturen Folge, Auswahl und Schleife. Diese werden in einem der

Mehr

Kurzeinführung in C/C++ Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ Einleitung

Kurzeinführung in C/C++ Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ Einleitung Informationsquellen: - Webseite zur Vorlesung, Abschnitt Informationen zu C und C++ 1 Einleitung Vorteile von Java: gut strukturiert mit hohem Funktionsumfang (mächtige Standardbibliothek) weitestgehend

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

Programmierkurs C++ Lösungen zum Übungsblatt 3. Nils Eissfeldt und Jürgen Gräfe. 2. November Aufgabe 5

Programmierkurs C++ Lösungen zum Übungsblatt 3. Nils Eissfeldt und Jürgen Gräfe. 2. November Aufgabe 5 Zentrum für Angewandte Informatik Köln Arbeitsgruppe Faigle / Schrader Universität zu Köln Lösungen zum Übungsblatt 3 Programmierkurs C++ Nils Eissfeldt und Jürgen Gräfe. November 001 Aufgabe 5 Innerhalb

Mehr

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15

Inhalt. 1 Einstieg in die Welt von C Erste Schritte in C 31. Vorwort... 15 Vorwort... 15 1 Einstieg in die Welt von C 17 1.1 Die Sprache C... 17 1.2 Die C-Standardbibliothek... 18 1.3 Die nötigen Werkzeuge für C... 21 1.4 Übersetzen mit der Entwicklungsumgebung... 23 1.5 Übersetzen

Mehr

Themen. Formatierte und unformatierte Eingabe Bedingungsoperator Namespaces Kommandozeilenargumente

Themen. Formatierte und unformatierte Eingabe Bedingungsoperator Namespaces Kommandozeilenargumente Themen Formatierte und unformatierte Eingabe Bedingungsoperator Namespaces Kommandozeilenargumente Formatierte Eingabe mit cin Die Formatierung der Eingabe ist der Ausgabe sehr ähnlich: Die Flags werden

Mehr

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

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

Mehr

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

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 7. Funktionen Einleitung Nach dem Prinzip Divide and Conquer bietet es sich an, größere Aufgaben in kleinere Teile zu unterteilen. Anweisungsblöcke,

Mehr

C++ Teil 1. Sven Groß. 9. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil 1 9. Apr / 19

C++ Teil 1. Sven Groß. 9. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil 1 9. Apr / 19 C++ Teil 1 Sven Groß IGPM, RWTH Aachen 9. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 1 9. Apr 2015 1 / 19 Organisatorisches Anmeldung zu Vorlesung und Praktikum über CampusOffice heute! Zugang zu

Mehr

3 Grundstrukturen eines C++ Programms anhand eines Beispiels

3 Grundstrukturen eines C++ Programms anhand eines Beispiels 3 Grundstrukturen eines C++ Programms anhand eines Beispiels 3.1 Einige Grundbegriffe Mit Hilfe eines Programmes wird dem Computer mitgeteilt, wie er eine bestimmte Aufgabe bearbeiten soll. Es besteht

Mehr

Entwickeln Sie ein C/C++-Programm für die Verwaltung einer Artikeldatei gemäß folgender Vorgaben!

Entwickeln Sie ein C/C++-Programm für die Verwaltung einer Artikeldatei gemäß folgender Vorgaben! Projekt: Artikelverwaltung Seite 1 von 5 Entwickeln Sie ein C/C++-Programm für die Verwaltung einer Artikeldatei gemäß folgender Vorgaben! Legen Sie global einen benutzerdefinierten Datentyp artikel an:

Mehr

Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke

Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke Grundlagen der Informatik Ergänzungen WS 2007/2008 Prof. Dr. Rainer Lütticke 1 Links Stellenwertsysteme mit Links zu Zahlensysteme: http://de.wikipedia.org/wiki/stellenwertsystem ASCII-Code: http://de.wikipedia.org/wiki/ascii

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,

Mehr

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only

Methoden. von Objekten definiert werden, Methoden,, Zugriffsmethoden und Read-Only Methoden Wie Konstruktoren und Destruktoren zum Auf- und Abbau von Objekten definiert werden, Wie inline-methoden Methoden,, Zugriffsmethoden und Read-Only Only- Methoden einzusetzen sind, Der this-pointer

Mehr

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

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

Mehr

Ein kleiner Blick auf die generische Programmierung

Ein kleiner Blick auf die generische Programmierung TgZero Technik.Blosbasis.net June 3, 2013 1 Inhaltsverzeichnis 1 Vorwort 3 2 Ein kleines Beispiel 3 3 Templates 3 4 Verschiedene Datentypen 4 5 Variadic Templates 5 6 Unterschied zwischen den Programmiersprachen

Mehr

RO-Tutorien 17 und 18

RO-Tutorien 17 und 18 RO-Tutorien 17 und 18 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery TUTORIENWOCHE 2 AM 10.05.2012 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der

Mehr

Programmierung und Angewandte Mathematik

Programmierung und Angewandte Mathematik Programmierung und Angewandte Mathematik C++ /Scilab Programmierung und Einführung in das Konzept der objektorientierten Anwendungen zu wissenschaftlichen Rechnens SS 2012 Ablauf Was sind Funktionen/Methoden

Mehr

Hydroinformatik I: Hello World

Hydroinformatik I: Hello World Hydroinformatik I: Hello World Prof. Dr.-Ing. habil. Olaf Kolditz 1 Helmholtz Centre for Environmental Research UFZ, Leipzig 2 Technische Universität Dresden TUD, Dresden Dresden, 28. Oktober 2016 1/15

Mehr

Programmiersprachen Einführung in C

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

Mehr

Grundlagen der Programmierung

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

Mehr

Klausur Informatik I WS 2006/2007

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

Mehr

Klausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: 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

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 18.4.07, Vordefinierte Datentypen Übersicht 1 Ganzzahlige Typen 2 Boolscher Typ 3 Gleitkommatypen 4 Referenztypen 5 void Typ 6 Implizite und explizite Typumwandlungen Ganzzahlige Typen Die

Mehr

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

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

Mehr

Einführung in C. EDV1-04C-Einführung 1

Einführung in C. EDV1-04C-Einführung 1 Einführung in C 1 Helmut Erlenkötter C Programmieren von Anfang an Rowohlt Taschenbuch Verlag ISBN 3-4993 499-60074-9 19,90 DM http://www.erlenkoetter.de Walter Herglotz Das Einsteigerseminar C++ bhv Verlags

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

Tutorium Rechnerorganisation

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

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8 Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling

Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling Input / Output in C, C++ Inhalt Streams Eingabe / Ausgbe in C Dateizugriff in C Eingabe / Ausgabe in C++ Dateizugriff in C++ Error Handling Page 1 Ausgaben in C,C++ - generell Fuer C basierte Ausgaben:

Mehr

Java - Programmierung - Prozedurale Programmierung 1

Java - Programmierung - Prozedurale Programmierung 1 Java - Programmierung - Prozedurale Programmierung 1 // elementare Datentypen public class el_dt public static void main(string args []) byte b = 127; short s = 32767; int i = 2147483647; long l = 9223372036854775807L,

Mehr

Klausur Informatik WS 2012/13

Klausur Informatik WS 2012/13 Klausur Informatik WS 2012/13 Name Gruppe 1 Vorname Dauer 90 min Matrikelnummer Hilfsmittel keine Die Klausur ist mit 50 Punkten sicher bestanden. Hinweies: Voraussetzung für die Teilnahme ist das Bestehen

Mehr

4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C

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

Mehr

C-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi

C-Grundlagen. zur Programmierung des MicroControllersystems MiCoWi 1. Datentypen C-Grundlagen zur Programmierung des MicroControllersystems MiCoWi Die Grafiken und Beispiele wurden dem Buch C von A bis z von Jürgen Wolf entnommen. Es werden hier die ANSI-Festlegungen

Mehr

C++ - Einführung in die Programmiersprache Schleifen

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

Mehr

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

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

Mehr

2.5 Programmstrukturen Entscheidung / Alternative

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

Mehr

FH München, FB 03 FA WS 06/07. Ingenieurinformatik. Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz

FH München, FB 03 FA WS 06/07. Ingenieurinformatik. Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz FH München, FB 03 FA WS 06/07 Ingenieurinformatik Name Vorname Matrikelnummer Sem.Gr.: Hörsaal Platz Zulassung geprüft vom Aufgabensteller: Teil I Aufg. 2 Aufg. 3 Aufg. 4 Aufg. 5 Summe Note Aufgabensteller:

Mehr

Ein und Ausgabe Grundlagen C++ E/A System operiert über streams streams sind logische Geräte, die Informationen produzieren bzw. verbrauchen streams

Ein und Ausgabe Grundlagen C++ E/A System operiert über streams streams sind logische Geräte, die Informationen produzieren bzw. verbrauchen streams Ein und Ausgabe Grundlagen C++ E/A System operiert über streams streams sind logische Geräte, die Informationen produzieren bzw. verbrauchen streams sind durch das E/A System mit physikalischen Geräten

Mehr

PVK Informatik I 1.Teil. Grundlagen Variablen Operatoren Fallunterscheidung Schleifen Kurzschreibweise Pointer Array Dynamische Strukturen Funktionen

PVK Informatik I 1.Teil. Grundlagen Variablen Operatoren Fallunterscheidung Schleifen Kurzschreibweise Pointer Array Dynamische Strukturen Funktionen PVK Informatik I 1.Teil Grundlagen Variablen Operatoren Fallunterscheidung Schleifen Kurzschreibweise Pointer Array Dynamische Strukturen Funktionen 1 Grundlagen #include #include using

Mehr

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) 1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollsttukturen - 1 - 3. Anweisungen und Kontrollstrukturen

Mehr

Einführung Programmierpraktikum C Michael Zwick

Einführung Programmierpraktikum C Michael Zwick Einführung Programmierpraktikum C Michael Zwick Vorlesung, Übung & Fragestunde Dr.-Ing. Michael Zwick Raum Z945 zwick@tum.de (089) 289 23609 Tutorium Ab Dienstag: Auswahl Tutoriumsplatz auf www.ldv.ei.tum.de/lehre/computertechnik

Mehr