Propädeutikum. Dipl.-Inf. Frank Güttler

Größe: px
Ab Seite anzeigen:

Download "Propädeutikum. Dipl.-Inf. Frank Güttler"

Transkript

1 Propädeutikum 2015

2 Vorbereitungskurs Informatikstudium Erfolgreich Studieren Programmieren (C-Kurs) Universität Leipzig Institut für Informatik Technische Informatik 2

3 Überblick Kapitel 18 Zeitmanagement und Persönlichkeit Kapitel 19 Zeiger (Pointer) 3

4 Kapitel 18 Zeitmanagement und Persönlichkeit 4

5 Kapitel 18 Zeitmanagement und Persönlichkeit Zeitmanagement und Persönlichkeit Wie nutze ich meine Zeit? 5

6 Zeitplanung - Kernfragen Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich? Prioritäten setzen Entscheidung, welche Aufgaben nicht erledigt werden Was tue ich wann? Konkrete Zeitplanung Was tue ich wie? Mit Arbeitsweisen Zeit sparen Motivation Was Du heute kannst besorgen 6

7 Was tue ich? Der Stellenwert des Studiums Kapitel 18 Zeitmanagement und Persönlichkeit Was will ich mit meinem Leben anfangen? Warum eigentlich studieren? Was genau damit erreichen? Notwendig für bestimmten Beruf? Interesse am Thema? Nichts besseres eingefallen? Erwartung der Eltern? Sich vor jemandem profilieren? Grundlage für Motivation, wie ich studiere! 7

8 Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich? Prioritäten setzen Was ist mir wichtig? Familie Studium Freunde Hobbies Sport Job 8

9 nicht wichtig wichtig Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich? Prioritäten setzen im Alltag Wichtig oder dringend? Typische Aufschiebeaufgaben Oberste Priorität nicht dringend dringend unterbewusste Aufgaben Typische vorgeschobene Aufgaben 9

10 nicht wichtig wichtig Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich? Prioritäten setzen im Alltag Wichtig oder dringend? Typische Aufschiebeaufgaben Oberste Priorität nicht dringend dringend unterbewusste Aufgaben Typische vorgeschobene Aufgaben 10

11 Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich wann? Zeitplanung Generelles Zeitplanungssystem muss für mich passen Pufferzeiten für Unerwartetes Eigenen Rhythmus der verplanten Zeit beachten Physiologische Leistungskurve Phasen im Semester Persönliche Ereignisse 11

12 Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich wann? Zeitplanung Kanban-Tafel Was muss ich noch tun? Woran arbeite ich gerade? Was habe ich schon geschafft? Übungen Linare Algebra Lernplan DBs 1 aufstellen Übungen Technische Informatik 2 Hardware- Praktikum vorbereiten mit Sven zum AGRA- Flohmarkt Vorlesung MuP 2 nachbereiten Themenübersicht AuD 1+2 Klettern mit Sara und Tim Ein ganz neues Leben lesen Kino mit Jens: StarWars 12

13 Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich wann? Zeitplanung - Mindmaps 13

14 Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich wann? Zeitplanung Tagesplanung (am Vorabend) Markierung auf Mindmap oder Kanban-Tafel Prioritäten setzen Wochenplanung Stundenplan mit fixen Terminen als Basis Kiesel -Prinzip: von groß nach klein Pufferzeit nicht vergessen 14

15 Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich wann? Zeitplanung - Wochenplanung 15

16 Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich wann? Zeitplanung - Wochenplanung 16

17 Kapitel 18 Zeitmanagement und Persönlichkeit Was tue ich wann? Zeitplanung - Wochenplanung 17

18 Kapitel 19 Zeiger (Pointer) 18

19 Zeiger Definition engl. pointer Datentyp der Adressen von Speicherplätzen verwaltet Zeiger selbst ist ganz normale Variable, der Zahl (Speicheradresse) hält Ermöglicht Manipulation von Inhalten über Speicheradressen Pointer belegt nur so viel Platz, dass er eine Adresse speichern kann 32-Bit Betriebssystem = 4 Byte 64-Bit Betriebssystem = 8 Byte Neben int und float drittes Grundobjekt von C Nützlich um Speicherkopien zu vermeiden (Strukturen, etc.) 19

20 Zeiger Überblick 1. Zeiger int * i; 2. Zeiger auf Zeiger int ** k = &i; 3. Zeigerarithmetik int * j = i + 3; 4. Zeiger und Felder i+1 entspricht i[1]; 5. Dynamischer Speicher malloc(), free() 20

21 Zeiger Typische Verwendung 1. Nutzung u. Änderung von Variableninhalten in Unterfunktionen (Call-by-Reference) Veränderung sonst nicht anders möglich, denn Parameter werden bei C-Funktionsaufruf nur kopiert (Call-By-Value) 2. Dynamische Speicherallokation Bereitstellung von Speicherplatz zur Laufzeit Gegensatz zur statischen Speicherallokation zur Compilezeit 21

22 Einfache Zeiger Beispiel int main(void) { int i = 5; // int-variable, mit 5 initialisiert. int * ptr_i; // Zeiger auf eine int-variable, nicht // initialisiert. Solche Zeiger dürfen // nicht verwendet werden, sie zeigen auf // auf einen zufälligen Speicherbereich! int* ptr_j; // Das gleiche wie oben. int *ptr_k; // Das gleiche wie oben. int * ptr_l, ptr_m; // Achtung: ptr_m ist jetzt kein Zeiger! int * ptr_n, *ptr_o; // ptr_o ist jetzt auch ein Zeiger. } ptr_i = &i; // Mit dem Adressoperator & holen wir uns die // Speicheradresse von i und speichern sie im // Zeiger ptr_i. return 0; 22

23 Einfache Zeiger Beispiel #include <stdlib.h> int main(void) { int * ptr_i = NULL; // Zeiger auf eine int-variable, mit NULL // initialisiert. Solche Zeiger dürfen // nicht verwendet werden, sie zeigen auf // auf einen ungültigen Speicherbereich! // Zeigern die nicht verwendet werden, sollte // immer NULL oder 0 zugewiesen werden. So lässt // sich prüfen, ob sie auf einen gültigen // Speicherbereich verweisen. int * ptr_j = 0; // Auch ok. int const * ptr_k; // Zeiger auf eine konstante int-variable. int * const ptr_l; // Konstanter Zeiger auf eine int-variable. int const * const ptr_m;// Konstanter Zeiger auf eine konstante int- // Variable. return 0; } 23

24 Einfache Zeiger Syntax Datentyp * Variablenname; Semantik Pointer zeigt auf Speicherplatz vom angegebene Datentyp char, int, struct... Pointertyp bestimmt also Interpretation beim Zugriff auf Speicherplatz Pointer verhält sich wie normale Variable z.b. lokal (nur in einem Block) oder auch global gültig Hinweise Speicherplatz auf den Pointer zeigt, kann irgendwo sein Speicherplatz kann unterschiedliche Lebensdauer haben 24

25 Einfache Zeiger Beispiel int main(void) { int i = 5; // int-variable, mit 5 initialisiert. int * ptr_i = &i; // Zeiger ptr_i hält Adresse von i return 0; } i ptr_i Speicher?? sizeof(int) sizeof(int) sizeof(int *) Adresse & heißt Adress-/Referenzierungsoperator 25

26 Einfache Zeiger Beispiel int main(void) { int i = 5; // int-variable, mit 5 initialisiert. int * ptr_i = &i; // Zeiger ptr_i hält Adresse von i *ptr_i = 6; // Speichere indirekt (über Zeiger) 6 in i. return 0; } i ptr_i Speicher?? sizeof(int) sizeof(int) sizeof(int *) Adresse & heißt Adress-/Referenzierungsoperator * heißt Dereferenzierungsoperator 26

27 Einfache Zeiger Beispiel int main(void) { int i = 5, j = 7; // int-variablen, mit 5 und 7 initialisiert. int * ptr_i = &i; // Zeiger ptr_i hält Adresse von i *ptr_i = j; // Speichere indirekt (über Zeiger) j in i. return 0; } j i ptr_i Speicher? sizeof(int) sizeof(int) sizeof(int *) Adresse & heißt Adress-/Referenzierungsoperator * heißt Dereferenzierungsoperator 27

28 Einfache Zeiger Beispiel int main(void) { int i = 5, j = 7; // int-variablen, mit 5 und 7 initialisiert. int * ptr_i = &i; // Zeiger ptr_i hält Adresse von i j = *ptr_i; // Speichere indirekt (über Zeiger) i in j. return 0; } j i ptr_i Speicher? sizeof(int) sizeof(int) sizeof(int *) Adresse & heißt Adress-/Referenzierungsoperator * heißt Dereferenzierungsoperator 28

29 Einfache Zeiger Beispiel int main(void) { int i = 5, j = 7; // int-variablen, mit 5 und 7 initialisiert. int * ptr_i = &i; // Zeiger ptr_i hält Adresse von i j = *ptr_i; // Speichere indirekt (über Zeiger) i in j. ptr_i = &j; // Weise ptr_i die Adresse von j zu. return 0; } Speicher j? i ptr_i 1... sizeof(int) sizeof(int) sizeof(int *) Adresse & heißt Adress-/Referenzierungsoperator * heißt Dereferenzierungsoperator 29

30 call-by-value Beispiel Ausgabe: 0 0 // call-by-value #include <stdio.h> void function(int i); int { main(void) int i = 0; // int-variable i, mit 0 initialisiert printf( %d, i); // Wert von i ausgeben function(i); // i an function übergeben printf( %d, i); // Wert von i ausgeben function hat i nicht verändert, da sie lediglich mit einer Kopie arbeitet. } return 0; void function(int i) { i = 1; } 30

31 call-by-value Beispiel int main(void) { int i = 0; } return 0; Speicher???...?... Adresse

32 call-by-value Beispiel int main(void) { int i = 0; printf( %d, i); } return 0; Speicher??? Adresse

33 call-by-value Beispiel int main(void) { int i = 0; printf( %d, i); function(i); } return 0; Speicher Kopie?? Adresse

34 call-by-value Beispiel int main(void) { int i = 0; printf( %d, i); function(i); } return 0; Speicher Kopie?? Adresse

35 call-by-value Beispiel int main(void) { int i = 0; printf( %d, i); function(i); printf( %d, i); return 0; } Speicher Kopie?? Adresse

36 call-by-reference Beispiel Ausgabe: 0 1 // call-by-reference #include <stdio.h> void function(int * i); function hat i verändert, da sie mit dem Original arbeitet. int { main(void) int i = 0; // int-variable i, mit 0 initialisiert printf( %d, i); // Wert von i ausgeben function(&i); // Adresse von i an function übergeben printf( %d, i); // Wert von i ausgeben } return 0; void function(int * i) { *i = 1; // i dereferenzieren und neuen Wert speichern } 36

37 call-by-reference Beispiel int main(void) { int i = 0; } return 0; Speicher???...?... Adresse

38 call-by-reference Beispiel int main(void) { int i = 0; printf( %d, i); } return 0; Speicher??? Adresse

39 call-by-reference Beispiel int main(void) { int i = 0; printf( %d, i); function(&i); } return 0; Speicher??? Adresse

40 call-by-reference Beispiel int main(void) { int i = 0; printf( %d, i); function(&i); } return 0; Speicher??? Adresse

41 call-by-reference Beispiel int main(void) { int i = 0; printf( %d, i); function(&i); printf( %d, i); return 0; } Speicher??? Adresse

42 Zeiger auf Zeiger Syntax Datentyp ** Variablenname; Semantik Zeiger verweist auf Speicherplatz eines Zeigers vom angegebene Datentyp Manipulation von referenzierten Zeigern möglich Theoretisch keine Grenze: *, **, ***,... 42

43 Zeiger auf Zeiger Beispiel int main(void) { int i = 5; // int-variable, mit 5 initialisiert. int * ptr_i = &i; // Zeiger ptr_i hält Adresse von i int ** ptr_ptr_i = &ptr_i; // Zeiger ptr_ptr_i hält Adresse von ptr_i return 0; } i ptr_i ptr_ptr_i Speicher?? sizeof(int) sizeof(int *) sizeof(int **) Adresse Hinweis: sizeof(int *) == sizeof(int **) Pointer haben immer dieselbe Größe 43

44 Zeiger auf Zeiger Beispiel int main(void) { int i = 5; // int-variable, mit 5 initialisiert. int * ptr_i = &i; // Zeiger auf eine int-variable, mit der // Adresse von i initialisiert. int ** ptr_ptr_i = &ptr_i; // Zeiger auf Zeiger auf eine int-variable // mit der Adresse von ptr_i initialisiert. i = 7; // Weise i den Wert 7 zu. *ptr_i = 7; // Weise i den Wert 7 zu. **ptr_ptr_i = 7; // Weise i den Wert 7 zu. } return 0; 44

45 Zeigerarithmetik Zeigerarithmetik auch: Pointerarithmetik, Adressarithmetik Addition (Subtraktion) von int-werten zu der im Zeiger gespeicherten Adressen Wichtigstes Sprachmittel im Umgang mit dynamischen Speicher Fehleranfällig Prüfung der Grenzen unterliegt Programmierer Verzicht von Pointern in vielen Programmiersprachen (Java, Pascal) 45

46 Zeigerarithmetik Syntax Zeigervariable++; Zeigervariable--; Zeigervariable = Zeigervariable + int_wert; Zeigervariable = Zeigervariable - int_wert; Zeigervariable += int_wert; Zeigervariable -= int_wert; Semantik Erhöhung (bzw. Verringerung) der Adresse um n-byte * int_wert n-byte ist Größe des Grunddatentyps (char, int, struct...) Größenermittlung mit sizeof(grunddatentyp) 46

47 Zeigerarithmetik Beispiel int main(void) { char i = 0; char * ptr_i = &i; ptr_i++; ptr_i -= 2; return 0; } -2*sizeof(char) +1*sizeof(char) Speicher?? 0?... Adresse

48 Zeiger und Felder Feldnamen Sind auch nur Zeiger, jedoch konstant Zeigen immer auf erstes Elemen des Feldes Bei int liste[10] ist liste vom Typ int * const Äquivalenzen [] wird Indexoperator genannt Felder werden intern in Zeiger umgewandelt v[0] entspricht *v v[i] entspricht *(v + i) &v[0] entspricht v &v[i] entspricht v + i 48

49 Dynamischer Speicher Dynamischer Speicher Von C-Bibliothek bereitgestellter Speicher zur Laufzeit Allokieren: malloc(), calloc(), realloc() Freigeben: free() Typischer Einsatz von Zeigern Probleme Speicherlecks, falls Zeiger geändert wird Speicherlecks, falls keine Freigabe nach Benutzung Fehlverweise, falls Zeiger auf ungültigen Speicherbereich verweist 49

50 Dynamischer Speicher Beispiel // speicher.c #include <stdio.h> #include <stdlib.h> int main(void) { // Fordere Speicher zur Laufzeit an. int * ptr = (int *) malloc(10 * sizeof(int)); // Prüfe den Erfolg unserer Speicheranforderung. if (ptr == NULL) puts( Konnte keinen Speicher reservieren! ); else { } puts( Erfolgreich free(ptr); Speicher reserviert! ); } return 0; 50

51 Noch nicht genug? Funktionsnamen Sind auch nur Zeiger, jedoch konstant Zeigen immer auf erstes Elemen des Feldes Bei void func(void) ist func vom Typ void (*)(void) Exotische Beispiele Zeiger auf Funktion, die nichts zurückgibt und int übernimmt void (* ptr_func)(int) ptr_func ist jetzt die Zeigervariable Zeiger auf erstes Element eines int-array der Größe [10][5] int (* ptr_array)[5] ptr_array ist jetzt die Zeigervariable Array mit 10 Funktionszeigern, die nichts zurückliefern und einen int-zeiger übernehmen void (* ptr_func_array[10])(int *) ptr_func_array ist jetzt der Arrayname 51

52 Die Vorlesungen am Freitag (Info, Mathe) finden im Augustusplatz, Paulinum Felix-Klein-Hörsaal (5. Etage) statt 52

53 Viel Erfolg! Propädeutikum Bis morgen! 2015

Deklarationen in C. Prof. Dr. Margarita Esponda

Deklarationen in C. Prof. Dr. Margarita Esponda Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.

Mehr

PROGRAMMIEREN MIT C. }, wird kompiliert mit dem Befehl. (-o steht für output) und ausgeführt mit dem Befehl

PROGRAMMIEREN MIT C. }, wird kompiliert mit dem Befehl. (-o steht für output) und ausgeführt mit dem Befehl PROGRAMMIEREN MIT C Allgemeine hinweise Alles was hier beschrieben wird, soll auch ausprobiert werden. Warum C? Weil die coolen Dinge mit C am einfachsten gehen. Das werden wir in den folgenden Übungen

Mehr

C kompakt für Java-Programmierer

C kompakt für Java-Programmierer C kompakt für Java-Programmierer Prof. Dr. Carsten Vogt, FH Köln, Institut für Nachrichtentechnik, www.nt.fh-koeln.de/vogt/ Stand: Februar 2012 In der Übung und im Praktikum "Betriebssysteme und verteilte

Mehr

Propädeutikum. Dipl.-Inf. Frank Güttler

Propädeutikum. Dipl.-Inf. Frank Güttler Propädeutikum 2015 Vorbereitungskurs Informatikstudium Erfolgreich Studieren Programmieren (C-Kurs) guettler@informatik.uni-leipzig.de Universität Leipzig Institut für Informatik Technische Informatik

Mehr

5. Unterprogrammtechnik/Module

5. Unterprogrammtechnik/Module 5. Unterprogrammtechnik/Module Unterprogramm/Modul: separate Programmeinheit, mit Anweisungen, die eine bestimmte Aufgabe erfüllen bekommt i.a. Argumente (Werte, Informationen) vom aufrufenden Programm

Mehr

Zusammenfassung des Handzettels für Programmieren in C

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

Mehr

Einführung in die Programmierung Arrays, Zeiger, Strings. Arvid Terzibaschian

Einführung in die Programmierung Arrays, Zeiger, Strings. Arvid Terzibaschian Einführung in die Programmierung Arvid Terzibaschian 1 Arrays 2 Arrays: Motivation Gegeben: monatliche Durchschnittstemperaturen der letzten 5 Jahre Gesucht: Mittelwerte für Jahre, Monate, Jahreszeiten,

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {

Mehr

Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012

Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012 WS 2011/2012 Fakultät Angewandte Informatik Lehrprofessur für Informatik 23.01.2012 Prof. Dr. Robert Lorenz Musterlösung zur Vorlesung Informatik I, Extrablatt zu komplexen Datenstrukturen Aufgabe 45 **

Mehr

Übersicht. C Funktionen. Funktion main. Funktionen. Funktionsdefinition und und Funktionsaufruf Deklaration von Funktionen

Übersicht. C Funktionen. Funktion main. Funktionen. Funktionsdefinition und und Funktionsaufruf Deklaration von Funktionen Übersicht Funktionsdefinition und und Funktionsaufruf Deklaration von Funktionen C Funktionen Gültigkeitsbereich und Speicherklasse Parameterübergabe Rückgabe des Funktionsresultats Mehr zu Funktionen

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 11 Dynamische Feldvereinbarung... 11-2 11.1 Dynamische Vereinbarung von Vektoren... 11-3 11.2 Dynamische Vereinbarung von Matrizen... 11-5 11.3 Die Kommandozeile... 11-8 Propädeutikum 11-1/8 11

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

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 5 Referenzdatentypen - Felder... 5-2 5.1 Eindimensionale Felder - Vektoren... 5-3 5.1.1 Vereinbarung... 5-3 5.1.2 Referenzen sind keine Felder... 5-4 5.1.3 Kopieren eindimensionaler Felder... 5-6

Mehr

Kurzeinführung in C. Johannes J. Schneider 27.10.2004

Kurzeinführung in C. Johannes J. Schneider 27.10.2004 Kurzeinführung in C Johannes J. Schneider 27.10.2004 1 Einleitung C ist eine in vielen Bereichen sehr häufig verwendete Programmiersprache, die von der Betriebssystemprogrammierung bis hin zur Programmierung

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

Einheit Variablen in der Programmiersprache C Variablen-Modell, Variablen-Vereinbarungen

Einheit Variablen in der Programmiersprache C Variablen-Modell, Variablen-Vereinbarungen Einheit Variablen in der Programmiersprache C Variablen-Modell, Variablen-Vereinbarungen Kurs C/C++ Programmierung, WS 2008/2009 Dipl.Inform. R. Spurk Arbeitsgruppe Programmierung FR 6.2 Informatik R.

Mehr

Übung zur Vorlesung Programmieren in C

Übung zur Vorlesung Programmieren in C Übung zur Vorlesung Programmieren in C 6 Pointers Marvin Gülker Ruhruniversität Bochum Wintersemester 2015/2016 Marvin Gülker (Ruhruniversität Bochum) 6 Pointers Wintersemester 2015/2016 1 / 29 Gliederung

Mehr

Programmieren in C++ Arrays, Strings und Zeigerarithmetik

Programmieren in C++ Arrays, Strings und Zeigerarithmetik Programmieren in C++ Arrays, Strings und Zeigerarithmetik Inhalt Eindimensionale C-Arrays C-Strings und Strings (Mehrdimensionale C-Arrays) Arrays und Vektoren (C++) Unique Pointers (C++11) Zeigerarithmetik

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

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

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

C allgemein. C wurde unter und für Unix entwickelt. Vorläufer sind BCPL und B.

C allgemein. C wurde unter und für Unix entwickelt. Vorläufer sind BCPL und B. C-Crash-Kurs Eine kurze, keinesfalls erschöpfende Einführung in die Sprache C für Studierende, die eine strukturierte imperative Programmiersprache beherrschen. Die Vorstellung erfolgt am Beispiel von

Mehr

Propädeutikum. Dipl.-Inf. Frank Güttler

Propädeutikum. Dipl.-Inf. Frank Güttler Propädeutikum 2015 Vorbereitungskurs Informatikstudium Erfolgreich Studieren Programmieren (C-Kurs) guettler@informatik.uni-leipzig.de Universität Leipzig Institut für Informatik Technische Informatik

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

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

Unterprogramme, Pointer und die Übergabe von Arrays

Unterprogramme, Pointer und die Übergabe von Arrays Unterprogramme, Pointer und die Übergabe von Arrays Unterprogramme Wie schon im Abschnitt über Funktionen erwähnt, versteht man unter einem Unterprogramm im engeren Sinn eine Prozedur, welche die Werte

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

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

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

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

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)

Mehr

Einführung in die Informatik 1

Einführung in die Informatik 1 Einführung in die Informatik 1 Datenorganisation und Datenstrukturen Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00

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

C/C++ Programmierung

C/C++ Programmierung 1 C/C++ Programmierung Verbunde, Reihungen, Zeiger Sebastian Hack Christoph Mallon (hack mallon)@cs.uni-sb.de Fachbereich Informatik Universität des Saarlandes Wintersemester 2009/2010 2 Typen 6.2.5 Primitive

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.

Mehr

Technische Infor matik 2 C/C++-Kurs. Pointer und Arrays. 2007 AG Rechner netze 2.1

Technische Infor matik 2 C/C++-Kurs. Pointer und Arrays. 2007 AG Rechner netze 2.1 Technische Infor matik 2 C/C++-Kurs Pointer und Arrays 2007 AG Rechner netze 2.1 Pointer in C Pointer (Zeiger) Wichtiges Konzept in C/C++ InJava versteckt Umdenken erforder lich AmAnfang durchaus schwierig

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

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

Lösungsvorschlag zur 9. Übung

Lösungsvorschlag zur 9. Übung Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zur 9. Übung 1 Präsenzübungen 1.1 Schnelltest a) Welche der folgenden Aussagen über

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

Strukturierte Datentypen und Funktionszeiger

Strukturierte Datentypen und Funktionszeiger Zusammengehörige Daten Anstatt logisch zusammengehörende Daten in mehreren unabhängigen Variablen zu speichern, kann man für sie einen eigenen Datentyp ( Verbund, Record ) definieren, der diesen Zusammenhang

Mehr

Karlsruher Institut für Technologie

Karlsruher Institut für Technologie Karlsruher Institut für Technologie Lehrstuhl für Programmierparadigmen Sprachtechnologie und Compiler WS 2010/2011 Dozent: Prof. Dr.-Ing. G. Snelting Übungsleiter: Matthias Braun Lösung zu Übungsblatt

Mehr

Felder, Rückblick Mehrdimensionale Felder. Programmieren in C

Felder, Rückblick Mehrdimensionale Felder. Programmieren in C Übersicht Felder, Rückblick Mehrdimensionale Felder Rückblick Vereinbarung von Feldern: typ name [anzahl]; typ name = {e1, e2, e3,..., en} Die Adressierung von Feldelementen beginnt bei 0 Die korrekte

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. Die C-Standardbibliothek. Prof. Dr. Nikolaus Wulff

Programmieren in C. Die C-Standardbibliothek. Prof. Dr. Nikolaus Wulff Programmieren in C Die C-Standardbibliothek Prof. Dr. Nikolaus Wulff Die C-Standard Bibliothek Mit dem C Compiler werden viel fertige Bibliotheksfunktionen ausgeliefert. Eine genaue Kenntnis dieser Funktionen

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

Übersicht. Einführung in die Programmierung. main. main. main. main. Speicherverwaltung. Definition nach ANSI C:

Übersicht. Einführung in die Programmierung. main. main. main. main. Speicherverwaltung. Definition nach ANSI C: Übersicht Einführung in die Programmierung Bachelor of Science die -Funktion Prof. Dr. Rethmann Fachbereich Elektrotechnik und Informatik Hochschule Niederrhein WS 009/0 Einführung in die Programmierung

Mehr

Grundlagen der Programmiersprache C für Studierende der Naturwissenschaften

Grundlagen der Programmiersprache C für Studierende der Naturwissenschaften Grundlagen der Programmiersprache C für Studierende der Naturwissenschaften Teil 10: Eigene Bibliotheken Patrick Schreier Abteilung für Angewandte Mathematik Vorlesung vom 14. Juli 2014 Gliederung eigene

Mehr

Übung 9 - Lösungsvorschlag

Übung 9 - Lösungsvorschlag Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle Besprechung: 15.12.2008 Einführung in die Informatik Übung 9 - Lösungsvorschlag Aufgabe

Mehr

Programmierung mit C Felder; Array

Programmierung mit C Felder; Array Programmierung mit C Felder; Array Arrays (Felder, Vektoren)... sind zusammengesetzte Datenstrukturen.... bestehen aus mehreren Elementen, die vom selben Datentyp sind.... bestehen aus mehreren Elementen,

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

Java Virtual Machine (JVM) Bytecode

Java Virtual Machine (JVM) Bytecode Java Virtual Machine (JVM) durch Java-Interpreter (java) realisiert abstrakte Maschine = Softwareschicht zwischen Anwendung und Betriebssystem verantwortlich für Laden von Klassen, Ausführen des Bytecodes,

Mehr

Übungspaket 31 Entwicklung eines einfachen Kellerspeiches (Stacks)

Übungspaket 31 Entwicklung eines einfachen Kellerspeiches (Stacks) Übungspaket 31 Entwicklung eines einfachen Kellerspeiches (Stacks) Übungsziele: Skript: 1. Definieren einer dynamischen Datenstruktur 2. Dynamische Speicher Speicherallokation 3. Implementierung eines

Mehr

b) Gegeben sei folgende Enumeration: enum SPRACHE {Deutsch, Englisch, Russisch};

b) Gegeben sei folgende Enumeration: enum SPRACHE {Deutsch, Englisch, Russisch}; Aufgabe 1: (15 Punkte) Bei den Multiple-Choice-Fragen ist jeweils nur eine richtige Antwort eindeutig anzukreuzen. Auf die richtige Antwort gibt es die angegebene Punktzahl. Wollen Sie eine Multiple-Choice-Antwort

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

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

3. Arrays und Pointer

3. Arrays und Pointer C und C++ (CPP) 3. Arrays und Pointer Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte Wissenschaften marc.rennhard@zhaw.ch Marc Rennhard,

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

Blöcke und Grand Central Dispatch

Blöcke und Grand Central Dispatch Blöcke und Grand Central Dispatch Multithreading ist ein Thema, mit dem sich alle Programmierer bei der modernen Anwendungsentwicklung beschäftigen müssen. Selbst wenn Sie glauben, dass Ihre Anwendung

Mehr

Einführung in die Programmierung Konstanten, dynamische Datenstrukturen. Arvid Terzibaschian

Einführung in die Programmierung Konstanten, dynamische Datenstrukturen. Arvid Terzibaschian Einführung in die Programmierung Arvid Terzibaschian 1 Konstanten 2 Motivation Unveränderliche, wichtige Werte mathematische Konstanten z.b. PI String-Konstanten wie z.b. häufige statische Meldungen mögliche

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

J.5 Die Java Virtual Machine

J.5 Die Java Virtual Machine Java Virtual Machine Die Java Virtual Machine 22 Prof. Dr. Rainer Manthey Informatik II Java-Compiler und Java Virtual Machine Quellcode-Datei class C... javac D.java Java-Compiler - Dateien class class

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 02: Klassen & Objekte Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Klassen Grundstruktur einer Java-Klasse Eigenschaften (Attribute) Variablen

Mehr

Übungspaket 19 Programmieren eigener Funktionen

Übungspaket 19 Programmieren eigener Funktionen Übungspaket 19 Programmieren eigener Funktionen Übungsziele: Skript: 1. Implementierung und Kodierung eigener Funktionen 2. Rekapitulation des Stack-Frames 3. Parameterübergabe mittels Stack und Stack-Frame

Mehr

MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG. LV-Nr. 439.026 SS2007 1 INSTITUT FÜR ELEKTRONIK BIT

MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG. LV-Nr. 439.026 SS2007 1 INSTITUT FÜR ELEKTRONIK BIT MIKROPROZESSOR PROGRAMMIERUNG 8. VORLESUNG BIT LV-Nr. 439.026 SS2007 1 Datendefinitionen b) Unterteilung nach Typen: (Teil 2) void leer Pointer 2/4 Bytes Adresse von Objekten Arrays bei allen Datentypen

Mehr

1Schnelleinstieg 14. 2Wie aus einer einfachen Textdatei. 3 Wie man eigene Programme erstellt 30. Inhaltsverzeichnis. ein Programm wird 20

1Schnelleinstieg 14. 2Wie aus einer einfachen Textdatei. 3 Wie man eigene Programme erstellt 30. Inhaltsverzeichnis. ein Programm wird 20 Inhaltsverzeichnis Liebe Leserin, lieber Leser!...13 1Schnelleinstieg 14 Welche Vorkenntnisse benötigen Sie für dieses Buch?...16 An wen richtet sich dieses Buch?...16 Was benötigen Sie, um die Programmiersprache

Mehr

Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu)

Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu) HMExcel Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu) Inhalt 1. Einleitung...1 2. Beispiele...2 2.1. Daten in ein Tabellenblatt schreiben...2

Mehr

17.1.2014 Einführung in die Programmierung Laborübung bei Korcan Y. Kirkici. 12.Übung 13.1. bis 17.1.2014

17.1.2014 Einführung in die Programmierung Laborübung bei Korcan Y. Kirkici. 12.Übung 13.1. bis 17.1.2014 17.1.2014 Einführung in die Programmierung Laborübung bei Korcan Y. Kirkici 12.Übung 13.1. bis 17.1.2014 1 BEFRAGUNG http://1.bp.blogspot.com/- waaowrew9gc/tuhgqro4u_i/aaaaaaaaaey/3xhl 4Va2SOQ/s1600/crying%2Bmeme.png

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

(allgemeine) OOP in C++ Klassen und header-files Konstruktorn / Destruktoren Speicherverwaltung C++ Standard Library / SLT

(allgemeine) OOP in C++ Klassen und header-files Konstruktorn / Destruktoren Speicherverwaltung C++ Standard Library / SLT Architektur Übersicht (allgemeine) OOP in C++ Polymorphie Virtuelle Funktionen Kompilieren Linken dynamische/statische Bibliotheken Tutorial: vs2008+ogre+(campus modell) Architektur (allgemeine) OOP in

Mehr

Objektbasierte Entwicklung

Objektbasierte Entwicklung Embedded Software Objektbasierte Entwicklung Objektorientierung in C? Prof. Dr. Nikolaus Wulff Objektbasiert entwickeln Ohne C++ wird meist C im alten Stil programmiert. => Ein endlose while-schleife mit

Mehr

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik-

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. michael.roth@h-da.de. Hochschule Darmstadt -Fachbereich Informatik- Informatik Studiengang Chemische Technologie Michael Roth michael.roth@h-da.de Hochschule Darmstadt -Fachbereich Informatik- WS 2012/2013 Inhalt Teil VII Einstieg in Java I Michael Roth (h_da) Informatik

Mehr

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

Systemnahe Programmierung in C/C++

Systemnahe Programmierung in C/C++ Systemnahe Programmierung in C/C++ Compiler, Zeiger, Speicherverwaltung, Macros Knut Stolze stolze@informatik.uni-jena.de Lehrstuhl für Datenbanken und Informationssysteme Fakultät für Mathematik und Informatik

Mehr

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales

Mehr

4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen

4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen 4 Objektorientierte Programmierung mit Java 4.1 Java-Grundlagen Highlights: objektorientierte Sprache Plattformunabhängigkeit bei Hardware und Betriebssystem optimale Einbindung im Internet und Intranet

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Wirtschaftsinformatik I

Wirtschaftsinformatik I Wirtschaftsinformatik I - Tutorium 6/ 7 (April 2010) Zusatzinformationen - Lösungsvorschläge Wirtschaftsinformatik I Tutorium Jochen Daum (4.Semester BWL) Universität Mannheim Rechtshinweis: Diese Präsentation

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

C Überlebenstraining

C Überlebenstraining C Überlebenstraining Dies ist nur ein Schnellkurs in C, der genug Einstiegswissen vermitteln soll, daß weiterführende Literatur schnell benutzt werden kann. Dies ist kein vollständiger Programmier oder

Mehr

1 Vom Problem zum Programm

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

Mehr

Einführung in die Programmiersprachen C und C++.

Einführung in die Programmiersprachen C und C++. Einführung in die Programmiersprachen C und C++. Dieses Tutorial soll den Studenten in der Veranstaltung Parallelverarbeitung der Fachgruppe Betriebssysteme und verteilte Systeme der Universität Siegen

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

1 Polymorphie (Vielgestaltigkeit)

1 Polymorphie (Vielgestaltigkeit) 1 Polymorphie (Vielgestaltigkeit) Problem: Unsere Datenstrukturen List, Stack und Queue können einzig und allein int-werte aufnehmen. Wollen wir String-Objekte, andere Arten von Zahlen oder andere Objekttypen

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

Vorlesung C-Kurs 9:15-10:45 Mathe 11:15-12:45 1. Woche Hörsaal 1 2. Woche Hörsaal 7

Vorlesung C-Kurs 9:15-10:45 Mathe 11:15-12:45 1. Woche Hörsaal 1 2. Woche Hörsaal 7 Vorlesung C-Kurs 9:15-10:45 Mathe 11:15-12:45 1. Woche Hörsaal 1 2. Woche Hörsaal 7 Seminare / Praktikum M1/C1 : Mathe 13:15-14:45, C-Kurs 15:15-16:45h M2/C2 : C-Kurs 13:15-14:45, Mathe 15:15-16:45h M*

Mehr

"Einführung in die Programmierung" Krefeld, den 24. September 2013

Einführung in die Programmierung Krefeld, den 24. September 2013 Einführung in die Programmierung Matrikelnummer: Klausur zur Vorlesung "Einführung in die Programmierung" Krefeld, den 24. September 2013 Hinweise: Übertragen Sie bitte Name und Matrikelnummer deutlich

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

Hello world. Sebastian Dyroff. 21. September 2009

Hello world. Sebastian Dyroff. 21. September 2009 Hello world Sebastian Dyroff 21. September 2009 1 / 35 Inhaltsverzeichnis Organisatorisches Hello World Typen und Operatoren Programmfluss Weitere Konstrukte Nützliche Tipps 2 / 35 Inhalte dieser Veranstaltung

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

Funktionen und Parameter

Funktionen und Parameter Funktionen in C++ Funktionen und Parameter Wie in Java: Parameter sind lokale Variablen Argumente werden bei Aufruf zugewiesen Extras: Zeiger-Parameter für alle Typen: als Rückgabewerte um große Kopien

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

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 Arrays Wiederholung (1/5) Array = GEORDNETE

Mehr

Tutorium Informatik 1. Aufgabe 2: Formatierte Ein- und Ausgabe

Tutorium Informatik 1. Aufgabe 2: Formatierte Ein- und Ausgabe Tutorium Informatik 1 Aufgabe 2: Formatierte Ein- und Ausgabe Fachbereich: Elektrotechnik Inhaltsverzeichnis 1 Aufgabe 1 2 Benötigte Funktionen und Schlüsselwörter 2 Robert Halas / FH Regensburg - 2003

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Vorlesungsteil 5 Funktionen selbst programmieren und Module bauen PD Dr. Brandenburgische Technische Universität Cottbus Senftenberg Institut für Informatik, Informations- und Medientechnik Wintersemester

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

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

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