Grundlagen der Programmierung

Ähnliche Dokumente
Grundlagen der Programmierung

Grundlagen der Programmierung

Grundlagen der Programmierung

Grundlagen der Programmierung

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

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

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

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

Kontrollstrukturen -- Schleifen und Wiederholungen

Einstieg in die Informatik mit Java

Fachhochschule Südwestfalen Wir geben Impulse. Kontrollstrukturen und Schleifen in Octave

2.5 Programmstrukturen Entscheidung / Alternative

4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

System.out.println("TEXT");

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

5. Elementare Befehle und Struktogramme

Programmieren in C/C++ und MATLAB

Schleifen in C/C++/Java

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

Einführung in die Programmierung Wintersemester 2011/12

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

Arbeitsblätter für Algorithmierung und Strukturierung C #

1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

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

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

Einstieg in die Informatik mit Java

Welche Informatik-Kenntnisse bringen Sie mit?

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt

3. Anweisungen und Kontrollstrukturen

C++ - Einführung in die Programmiersprache Schleifen

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

Primitive Datentypen

float: Fließkommazahl nach IEEE 754 Standard mit 32 bit

4 Formelsammlung C/C++

C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen

Schleifen in C/C++/Java

Dr. Monika Meiler. Inhalt

Java - Programmierung - Prozedurale Programmierung 1

Entwurf von Algorithmen - Kontrollstrukturen

Javakurs für Anfänger

Algorithmen zur Datenanalyse in C++

BKTM - Programmieren leicht gemacht.

Operatoren für elementare Datentypen Bedingte Anweisungen Schleifen. Programmieren I. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011

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

1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH

2. Programmierung in C

Unterlagen. CPP-Uebungen-08/

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

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

Die for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben

Programmieren in C (Übungsblatt 1)

Informatik für Ingenieure (InfIng)

Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme

Schachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A

Schleifenanweisungen

Informatik I - Einstiegskurs

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

GI Vektoren

Programmieren in C (Übungsblatt 1)

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

Klassen und Objekte. Klassen sind Vorlagen für Objekte. Objekte haben. Attribute. Konstruktoren. Methoden. Merkblatt

2 Teil 2: Nassi-Schneiderman

6. Grundlagen der Programmierung

Schleifen: Immer wieder dasselbe tun

4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan)

Grundlagen von C# - 2

5. Tutorium zu Programmieren

Steueranweisungen. Eike Schallehn Grundlagen der Informatik für Ingenieure Wintersemester 08/

Grundlagen der Informatik 5. Kontrollstrukturen II

Labor Software-Entwicklung 1

FB Informatik. Fehler. Testplan

C++ Programmierkurs. Variablen. Wintersemester 04 / 05. Christian Hagemeier. mittwochs 17 18:30 Uhr Hörsaal II der Physikalischen Institute

Übungsblatt 2. Java Vorkurs (WS 2017)

3 Grundstrukturen eines C++ Programms anhand eines Beispiels

Informatik. Studiengang Chemische Technologie. Michael Roth WS 2012/2013. Hochschule Darmstadt -Fachbereich Informatik-

einlesen n > 0? Ausgabe Negative Zahl

Programmierkurs Java

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

Anweisungen zur Ablaufsteuerung

Einführung in die Programmierung II. 3. Kontrollstrukturen

Sprachkonstrukte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Kontrollstrukturen

Programmiertechnik Kontrollstrukturen

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung

Webbasierte Programmierung

Intensivübung zu Algorithmen und Datenstrukturen

Eine kleine Befehlssammlung für Java Teil1

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

Zyklen: break und continue

Transkript:

Grundlagen der Programmierung 4. Vorlesung 07.11.2017 1

Konzepte Imperative Programmierung neue Befehle erstellen Prozedurale Programmierung: Top/Down Programmierung Wiederholungen vermeiden (DRY-Prinzip: Don t repeat yourself) Parameter 2

Konzepte Operatoren Kontrollstrukturen Bibliotheksfunktionen Ausdrücke Bedingungen 3

Variablen sind Platzhalter für Werte haben: Namen Wert (Datentyp) stehen für Werte Zuweisung 4

Matlab https://de.mathworks.com/ Kostenpflichtig (Campuslizenz) Installieren oder Online Registrieren: https://de.mathworks.com/login Anmelden mit HTW-Emailadresse! Activation Key von http://serviceportal.f1.htw-berlin.de/matlabcampus-lizenz.html 5

MATLAB Programm erstellen 1 2 3 Ausgabe 6

MATLAB Programm erstellen 1. New -> Script oder Ctrl.-N oder + klicken 2. Programm in Editor eingeben dabei: Befehle mit Semikolon ; abschließen Kommentarzeilen beginnen mit % 3. Pfeil bei RUN drücken 7

Beispiel: R = U/I (Matlab) Wert zuweisen Wert von Tastatur einlesen u = input('spannung: '); i = input('strom: '); fprintf('widerstand: %f Ohm\n', u/i ); Platzhalter Wert für Platzhalter Ergebnis berechnen und ausgeben 8

Nicht schön... In C: Absturz 9

Abhilfe Fehlerhafte Eingabe Fehlerhafte Eingabe abfangen Korrekte Eingabe erzwingen 10

In C #include <stdio.h> int main() { int u,i; printf("spannung: "); scanf("%d", &u); do { printf("strom: "); scanf("%d", &i); } while ( i == 0 ); printf("widerstand: %f", u/i); return 0; } In Matlab nicht ganz so einfach :( 11

Schleifen in C: do...while do block while ( bedingung ); block: eine Anweisung oder Anweisungen in { } block bed JA NEIN 12

Schleifen in C: while... while ( bedingung ) block bed JA NEIN block 13

Kontrollstrukturen: Schleifen while Kopfgesteuert: Bedingung wird vor dem Schleifenblock überprüft Schleifenblock wird evtl. nie durchlaufen do... while Fußgesteuert: Bedingung wird nach dem Schleifenblock überprüft Schleifenblock wird mindestens einmal durchlaufen 14

Schleifen in Matlab Kopfgesteuert: while bedingung anweisungen end Fußgesteuert L 15

do... while Schleife in Matlab Methode 1: Schleifeneintritt erzwingen setze bedingung auf wahr Beispiel: while bedingung anweisungen end Test auf Gleichheit I = 0; while I == 0 I = input('strom:'); end 16

do... while Schleife in Matlab Methode 2: Schleife mit boolscher Variable steuern Beispiel: ok = false; while ~ok anweisungen ok = endebedingung erfüllt end ok = false; while ~ok I = input('strom:'); ok = ( I ~= 0 ); end log. NICHT ungleich 17

do... while Schleife in Matlab Methode 3: Schleife abbrechen while true anweisungen if endebedingung erfüllt break; end end Beispiel: while true I = input('strom:'); if I ~= 0 break; end end Endlosschleife! 18

Gesamtes Programm U = input('spannung: '); ok = false; while ~ok I = input('strom: '); ok = (I ~= 0); end fprintf('widerstand: %f Ohm\n\n', U/I); 19

Aufgabe Lies ganze Zahlen von der Tastatur ein und summiere diese, bis 0 eingegeben wurde. Dann gib die Summe aus. 20

Aufgabe summe = 0; eingabe = 1; while eingabe ~= 0 eingabe = input('zahl: '); summe = summe + eingabe; end fprintf("summe: %d", summe); 21

Variablen, Datentypen, Ausdrücke 22

Bezeichner Für Namen von Variablen, Funktionen,... Beginnen mit Buchstaben Nur Buchstaben, Zahlen und '_' erlaubt Keine reservierten Worte von Matlab Erlaubt: x x1 eingabe summe bloeder_langer_name Nicht erlaubt: 12 2x end while bloeder_#@&%!!_name Case sensitive (halloduda ungleich HalloDuDa ) 23

Reservierte Wörter break case catch classdef continue else elseif end for function global if otherwise parfor persistent return spmd switch try while Test: ist Zeichenkette ein reserviertes Wort? Test: ist Zeichenkette eine Funktion? 24

Variablen Initialisierung/Zuweisung summe = 0; 1x1 double Variablen sind in Matlab grundsätzlich Felder Standard Datentyp: double 25

Numerische Datentypen 26

Zahlendarstellungen 27

Speicherinhalte: Bits Hardware Spannung Ladung Magnetisierung Codierung 0V ungeladen unmagnetisiert 0 5V geladen magnetisiert 1 1 Bit entspricht der Information 0 oder 1 28

Zahlendarstellung Zählen mit Bits: 0 1 10 11 100 101 110 Zahlen werden als Bitfolgen gespeichert 29

Binärzahlen Binärzahl b n...b 2 b 1 b 0,b i {0, 1} Umrechnung in Dezimalsystem n i=0 b i 2 i Beispiel: 1010102 = 1 2 5 + 0 2 4 +1 2 3 + 0 2 2 + 1 2 1 + 0 2 0 = 32 + 8 + 2 = 42 30