Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Programmieren in C Einführung

Ähnliche Präsentationen


Präsentation zum Thema: "Programmieren in C Einführung"—  Präsentation transkript:

1 Programmieren in C Einführung
Hochschule Fulda – FB ET Sommersemester 2014 Peter Klingebiel, HS Fulda, DVZ

2 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

3 Zur Vorlesung Peter Klingebiel Webseite der Vorlesung
Dipl. Ing. Maschinenbau Leiter DVZ HS Fulda Raum E318 Telefon 0661/ Webseite der Vorlesung Folien, Aufgaben, Demoprogramme, Links usw. Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

4 Programmieren in C 1 Quelle: Eines Tages - Spiegel Online
Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

5 Programmieren in C 2 Quelle: Eines Tages - Spiegel Online
Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

6 Programmieren in C 3 Chaplin: Moderne Zeiten - Trailer (auf youtube)
Chaplin: Moderne Zeiten (auf youtube) Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

7 Programmieren ??? Programmieren in C 4 in C
Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

8 C ??? Programmieren in C 5 Programmieren in
Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

9 Programmieren ??? Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

10 Programmieren Wikipedia: http://de.wikipedia.org/wiki/Programmierung
Definition: „Programmieren ist eine Tätigkeit, bei der versucht wird, durch systematischen Einsatz einer gegebenen Programmiersprache ein gestelltes Problem zu lösen.“ aus: H. Balzert, Lehrbuch Grundlagen der Informatik, 1999 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

11 Programm Wikipedia: http://de.wikipedia.org/wiki/Computerprogramm
Definition: „Algorithmen, die von einem automatischen Prozessor abgearbeitet werden, bezeichnet man als Programme. Ein Programm stellt die Realisierung eines Algorithmus dar. Im Gegensatz zu einem Algorithmus ist ein Programm konkreter und eingeschränkter.“ aus: Balzert, Lehrbuch ... Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

12 Algorithmus Wikipedia: http://de.wikipedia.org/wiki/Algorithmus
Definition: „Algorithmus (Plural: Algorithmen), Problemlösungsbeschreibung, die festlegt, wie ein Problem gelöst werden soll.“ aus: Balzert, Lehrbuch ... Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

13 Euklidischer Algorithmus 1
Wikipedia: „Wenn CD aber AB nicht misst, und man nimmt bei AB, CD abwechselnd immer das kleinere vom größeren weg, dann muss (schließlich) eine Zahl übrig bleiben, die die vorangehende misst.“ aus: Euklid, Die Elemente, hrg. v. C. Thaer Algorithmus zur Bestimmung des größten gemeinsamen Teilers (ggT) Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

14 Euklidischer Algorithmus 2
Alter Algorithmus, iterativ, Pseudocode euklid(a, b) wenn a = dann liefere b sonst solange b ≠ wenn a > b dann a = a – b sonst b = b – a liefere a Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

15 Euklidischer Algorithmus 3
Start Programm ... Start Schleife Wenn nicht eingeschaltet Schleife verlassen Temperatur messen Wenn Temperatur >= Solltemperatur Heizen aus / Kontakt öffnen Sonst Heizen ein / Kontakt schließen Ende Schleife Ende Programm Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

16 Euklidischer Algorithmus 4
Alter Algorithmus, rekursiv, Pseudocode euklid(a, b) wenn b = dann liefere a sonst wenn a = dann liefere b sonst wenn a > b dann liefere euklid(a-b, b) sonst liefere euklid(a, b-a) Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

17 Euklidischer Algorithmus 5
Start Programm ... Start Schleife Wenn nicht eingeschaltet Schleife verlassen Temperatur messen Wenn Temperatur >= Solltemperatur Heizen aus / Kontakt öffnen Sonst Heizen ein / Kontakt schließen Ende Schleife Ende Programm Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

18 Euklidischer Algorithmus 6
Neuer Algorithmus, iterativ, Pseudocode euklid(a, b) solange b ≠ h = a modulo b a = b b = h liefere a Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

19 Euklidischer Algorithmus 7
Start Programm ... Start Schleife Wenn nicht eingeschaltet Schleife verlassen Temperatur messen Wenn Temperatur >= Solltemperatur Heizen aus / Kontakt öffnen Sonst Heizen ein / Kontakt schließen Ende Schleife Ende Programm Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

20 Euklidischer Algorithmus 8
Neuer Algorithmus, rekursiv, Pseudocode euklid(a, b) wenn b = dann liefere a sonst liefere euklid(b, a modulo b) Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

21 Euklidischer Algorithmus 9
Start Programm ... Start Schleife Wenn nicht eingeschaltet Schleife verlassen Temperatur messen Wenn Temperatur >= Solltemperatur Heizen aus / Kontakt öffnen Sonst Heizen ein / Kontakt schließen Ende Schleife Ende Programm Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

22 Kochrezept 1 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

23 Kochrezept 2 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

24 Montageanleitung Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

25 Kaffee kochen 1 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

26 Kaffee kochen 2 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

27 Kaffee kochen 3 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

28 Temperaturregelung Bügeleisen 1
Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

29 Temperaturregelung Bügeleisen 2
Schematischer Aufbau Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

30 Temperaturregelung Bügeleisen 3
Wirkungsplan / Regelkreis Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

31 Temperaturregelung Bügeleisen 4
Temperaturverlauf Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

32 Algorithmus Temperaturregelung ???
Start Programm ... Start Schleife Wenn nicht eingeschaltet Schleife verlassen Temperatur messen Wenn Temperatur >= Solltemperatur Heizen aus / Kontakt öffnen Sonst Heizen ein / Kontakt schließen Ende Schleife Ende Programm Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

33 Temperaturregelung in Assembler
Start Programm ... Start Schleife Wenn nicht eingeschaltet Schleife verlassen Temperatur messen Wenn Temperatur >= Solltemperatur Heizen aus / Kontakt öffnen Sonst Heizen ein / Kontakt schließen Ende Schleife Ende Programm Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

34 Temperaturregelung in C
Start Programm ... Start Schleife Wenn nicht eingeschaltet Schleife verlassen Temperatur messen Wenn Temperatur >= Solltemperatur Heizen aus / Kontakt öffnen Sonst Heizen ein / Kontakt schließen Ende Schleife Ende Programm Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

35 Programmiersprachen 1 Wikipedia: Definition: „Um Problemlösungen in einem Formalismus niederschreiben zu können, legt man Programmiersprachen fest.“ aus: Balzert, Lehrbuch ... Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

36 Programmiersprachen 2 Eine Programmiersprache ist eine formale Sprache (im Gegensatz z.B. zur Umgangs-sprache) Programmiersprachen haben ein exakt de-finiertes Alphabet (i.d.R. Buchstaben, Ziffern und Sonderzeichen) Programmiersprachen haben einen meist sehr kleinen Wortschatz (C etwa kennt nur 32 Worte!) Programmiersprachen haben i.d.R. eine exakt einzuhaltende Syntax Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

37 Hardware / Rechner / CPU
Programmiersprachen 3 Problemstellung Hochsprachen (z.B. Fortran, Pascal, C, C++, Java, SQL, PHP) Assemblersprachen (für reale oder virtuelle Maschine / CPU) Maschinensprachen (Bitcode, Bytecode, Microcode) Hardware / Rechner / CPU Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

38 Programmiersprachen 4 Skriptsprachen werden während der Ausführung vom Sprachinterpreter in Maschinencode übersetzt. Beispiele: Shell, Perl, PHP, SQL, Basic Compilersprachen müssen vor der Ausführung von einem Übersetzersystem (Compiler, Linker) in Maschinencode übersetzt werden. Beispiele: Pascal, C, C++, C#, Java Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

39 Programmiersprachen 5 Skriptsprachen Compilersprachen
Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

40 Programmiersprachen 6 Paradigmata Typisierung
Imperative Sprachen (Fortran, Pascal, C, Ada) Deklarative Sprachen (SQL, Lisp) Objektorientierte Sprachen (Java, C++) Nebenläufige Sprachen (Ada, Java, Par C) Typisierung Typenlose Sprachen (JavaScript, PHP) Stark typisierte Sprachen (Ada) Schwach typisierte Sprachen (C, C++) Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

41 Beispiele Typisierung
Programmiersprachen 7 Beispiele Typisierung Stammbaum Programmiersprachen (Wikipedia) Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

42 Programmentwicklung 1 Problem analysieren Modell entwerfen Algorithmus entwickeln Programm kodieren Programm übersetzen (bis syntaktisch fehlerfrei) Programm testen (bis semantisch fehlerfrei ?) Programm produktiv Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

43 Programmentwicklung 2 Friedemann Weise: Doppelkaffeetasse (auf youtube) Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

44 Programmentwicklung 3 Beispiel: Entwicklungsumgebungen für C
Kommandozeile mit Systemtools Unix / Linux / Windows / iOS: Editor, Systemcompiler (gcc), Debugger, usw. GCC (http://gcc.gnu.org/) Integrierte Entwicklungsumgebung (IDE) NetBeans (https://netbeans.org/) z.B. mit Cygwin (http://www.cygwin.com/) Code::Blocks (http://www.codeblocks.org/) z.B. mit MinGW (http://www.mingw.org/) u.v.a.m. Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

45 Rasperry Pi 1 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

46 Rasperry Pi 2 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

47 Rasperry Pi 3 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

48 Computer auf SD-Karte 1 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

49 Computer auf SD-Karte 2 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

50 Computer auf SD-Karte 3 Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

51 Auf dem Weg zum autonomen Auto
Programmieren in C - Peter Klingebiel - HS Fulda - DVZ

52 Programmiersprache C Was kennen wir schon von C?
Programmieren in C - Peter Klingebiel - HS Fulda - DVZ


Herunterladen ppt "Programmieren in C Einführung"

Ähnliche Präsentationen


Google-Anzeigen