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

Größe: px
Ab Seite anzeigen:

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

Transkript

1 . 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 s { 1, 1}, m Q, 1 m <, e Z. s ist das Vorzeichen, m ist die Mantisse und e der Exponent. Im Computer werden Gleitkommazahlen durch diese drei Komponenten repräsentiert. Es werden drei Typen von Gleitkommazahlen in C++ definiert: float, double und long double. Wie bei den ganzzahligen Typen unterscheiden sie sich durch die Anzahl der Bits, welche sich in der Genauigkeit und der Größe des Wertebereiches wiederspiegeln. Der Speicherbedarf (in Bits) ist üblicherweise Bezeichner Vorzeichen Mantisse Exponent float double long double Dementsprechende Wertebereiche und Genauigkeiten: Typ Bereich Gen. float ±3. 3 ± double ± ± long double ±3. 93 ± Vorteile von Gleitkommazahlen Nicht nur ganzzahlige Werte können dargestellt Der abgedeckte Zahlenbereich ist größer. Nachteile von Gleitkommazahlen Es entstehen in der Regel Rundungsfehler. Rechenoperationen sind in der Regel erheblich aufwendiger. WS 001/0 Programmierkurs C++ Seite WS 001/0 Programmierkurs C++ Seite 3 Notation für Gleitkommazahlen Gleitkommazahlen können im Quelltext in folgender Form angegeben werden: 1. Vorzeichen. Vorkommastellen 3. Dezimalpunkt. Nachkommastellen 5. e bzw. E gefolgt von eimen ganzzahligen Exponenten 6. Suffix f,f oder l,l Wegfallen dürfen bei fehlendem Bedarf hierbei entweder Vor- oder Nachkommastelle (nicht beide) entweder Dezimalpunkt oder e (bzw. E) mit Exponent (nicht beide) Vorzeichen und Suffix Ohne Suffix wird von einem double-wert ausgegangen, ansonsten steht F für float und L für long double. Beispiele -7.11e7f -.7E Operatoren für Gleitkommazahlen Es können die gleichen Operatoren wie für ganzzahlige Datentypen verwendet Es gelten die gleichen Reglen bezüglich der Rangfolgen. Operatoren können auch auf unterschiedliche Datentypen angewendet Vorsicht! Durch Rundungsfehler sollte das Prüfen auf Gleichheit bzw. Ungleichheit unterlassen Gegeben sei folgendes Gesucht sind alle Vielfachen von 0.15 im Intervall [0... 3]. Formaler Ablauf: 1. Setze Variable zahl auf 0.. Wenn zahl gleich 3.0 dann sind wir fertig. 3. Gebe zahl aus.. Erhöhe zahl um Gehe zu Punkt. Wir erwarten folgende Ausgabe: 0, 0.15,...,.5, 3 WS 001/0 Programmierkurs C++ Seite WS 001/0 Programmierkurs C++ Seite 5

2 Die Umsetzung in C++ lautet: 7 f l o a t z a h l = 0. 0 ; 9 while ( z a h l! = 3. 0 ) { 11 c o u t < < z a h l < < ", " ; 1 z a h l + = ; 13 } 1 } An der Ausgabe 0, 0.15,...,.5, 3, 3.15,... sehen wir, daß das Programm nicht wie gewünscht die 3 als letzte Zahl ausgibt sondern immer weiterläuft. Wir ändern das Programm um, indem wir in Zeile 7 den Vergleich zahl!= 3.0 durch zahl <= 3.0 ersetzen. Die Ausgabe lautet diesmal 0, 0.15,...,.5. Die 3 wurde nicht mit ausgegeben. Rundungsfehler sollten also bei der Verwendung von Kontrollstrukturen beachtet In unserem Beispiel können wir den entsprechenden Vergleich in der Form zahl <= 3.01 schreiben indem wir eine Ungenauigkeit von 0.01 einplanen..3 Logische Datentypen C++ besitzt den Datentyp bool, der die Werte true und false annehmen kann. Die wichtigsten Operatoren für logische Variablen sind Operator Beispiel Bedeutung!!a logische Negation && a && b logisches UND a b logisches ODER = a =!b Zuweisung Auch die schon vorgestellten Vergleichsoperatoren liefern einen Wert vom Typ bool zurück. So setzt z.b. die Anweisung a = (zahl > ) die Variable a auf true wenn zahl größer als ist, ansonsten auf false. Bei Bedarf werden Objekte vom Typ bool in int Objekte umgewandelt. Hierbei gilt false entspricht 0 true entspricht 1 Analog können Zahlen in logische Werte überführt werden indem alles ungleich Null dem Wert true entspricht und die Null in false überführt wird. WS 001/0 Programmierkurs C++ Seite 6 WS 001/0 Programmierkurs C++ Seite 7 7 bool K l e i n e r A l s Z e h n ; bool GleichZehn ; 9 bool GroesserAlsZehn ; 11 i n t z a h l ; 1 13 c i n > > z a h l ; 1 15 K l e i n e r A l s Z ehn = z a h l < = 1 0 ; 16 GleichZehn = z a h l = = 1 0 ; 17 GroesserAlsZehn = z a h l > = 1 0 ; 1 19 cout < < z a h l < < " <= : " << KleinerAlsZehn < < endl ; 0 c o u t < < z a h l < < " == : " << GleichZehn < < e n d l ; 1 cout < < z a h l < < " >= : " << GroesserAlsZehn < < endl ; } liefert bei Eingabe von die Ausgabe <= : 0 == : 0 >= : 1. Gültigkeitsbereich von Variablen Variablen können überall im Programmtext deklariert Eine Variable ist nur in dem Block bekannt, in dem sie deklariert wurde, sowie in den eingeschlossenen Blöcken. Beim Verlassen eines Blocks wird der für die Variablen reservierte Speicherplatz wieder freigegeben. Eine Variable kann erst nach ihrer Deklaration verwendet Durch Verwenden gleicher Namen in verschachtelten Blöcken kann die Sichtbarkeit von Variablen eingeschränkt Variablen, die außerhalb von Funktionen deklariert werden, heißen global. Sie sind im ganzen Programm bekannt. Andere Variablen heißen lokal. WS 001/0 Programmierkurs C++ Seite WS 001/0 Programmierkurs C++ Seite 9

3 Beispiel (Sichtbarkeit von Variablen): 1 i n t z a h l = 1 ; 3 void Sub ( ) { 5 c o u t < < " Sub : " << z a h l < < e n d l ; 6 z a h l = ; 7 i n t z a h l = 5 ; c o u t < < " Sub : " << z a h l < < e n d l ; 9 } 11 i n t main ( ) 1 { 13 c o u t < < " main : " << z a h l < < e n d l ; 1 i n t z a h l = ; 15 c o u t < < " main : " << z a h l < < e n d l ; 1 17 i n t z a h l = 3 ; 1 c o u t < < " b l o c k : " << z a h l < < e n d l ; 19 } 0 c o u t < < " main : " << z a h l < < e n d l ; 1 Sub ( ) ; } Dieses Programm liefert die Ausgabe main: 1 main: block: 3 main: Sub: 1 Sub: 5.5 Konstanten In C++ kann man Variablen, deren Wert sich im Laufe des Programms nicht ändert, als konstant deklarieren. Dies geschieht durch das Voranstellen des Schlüsselwortes const bei der Deklaration: const <type> <name> = <wert> Konstanten müssen bei der Deklaration initialisiert Jede Änderung des Wertes wird vom Compiler durch eine Fehlermeldung angezeigt. Unveränderliche Größen sollten stets als const deklariert werden, um mögliche Fehlerquellen auszuschließen. 1 i n t main ( ) { 3 c o n s t f l o a t Pi = ; 5 / / F o l g e n d e s i s t F a l s c h und f u e h r t zu einem 6 / / F e h l e r beim C o m p i l i e r e n 7 Pi = ; 9 return 0 ; } WS 001/0 Programmierkurs C++ Seite 50 WS 001/0 Programmierkurs C++ Seite 51 Hinweise zur Typumwandlung.6 Typumwandlungen Bei allen C++ Operatoren müssen die Operanden vom gleichen Typ sein. Das gleiche gilt für die Parameter von Funktionen. Bei Bedarf kann man den Wert eines Ausdrucks explizit in einen anderen Typ umwandeln (type cast). Der Programmierer muß sicherstellen, daß der Ausdruck im neuen Datentyp sinnvoll darstellbar ist. static_cast<typ>(ausdruck) 1 i n t main ( ) { 3 f l o a t f ; i n t i ; 5 6 / /... 7 i = s t a t i c _ c a s t < i n t >( f ) ; 9 f =. 5 s t a t i c _ c a s t < f l o a t >( i ) ; } WS 001/0 Programmierkurs C++ Seite 5 Manche Typumwandlungen sind erlaubt, führen aber u.u. zu falschen Ergebnissen (z.b. signed in unsigned) Bei Gleitkommazahlen werden beim Umwandeln in ganzzahlige Typen die Nachkommastellen abgeschnitten. Es wird nicht gerundet:.5.5 Bei den Standardoperatoren mit Operanden verschiedenen Typs kommt es automatisch zu einer impliziten Typumwandlung. Sind beide Operanden von ganzzahligem Typ, so wird der Operand kleineren Typs angepasst. Sind beide Operatoren Gleitkommazahlen, so wird der Operand kleineren Typs angepasst. Ist einer der Operanden vom Gleitkommatyp, so wird der ganzzahlige Wert zuerst in eine Gleitkommazahl umgewandelt. Bei Wertzuweisungen wird die rechte Seite automatisch dem Typ der linken Seite angepaßt. WS 001/0 Programmierkurs C++ Seite 53

4 7 f l o a t f ; i n t i, j ; 9 / / i m p l i z i t e Typenumwandlungen 11 i = 1. 1 ; 1 j = ; 13 c o u t < < i < < ", " << j < < e n d l ; / / Ausgabe : 1, / / Berechne z u e r s t und t e i l e dann durch 16 i = / ; 17 cout < < i < < endl ; / / Ausgabe : / / Berechne / und m u l t i p l i z i e r e dann mit 0 i = ( / ) ; 1 cout < < i < < endl ; / / Ausgabe : 0 3 / / Berchne auch h i e r z u e r s t /, j e d o c h d i e s m a l mit / / Gleitkommazahlen 5 i = (. 0 / ) ; 6 cout < < i < < endl ; / / Ausgabe : 1 7 / / Wie v o r h e r i g e s B e i s p i e l, d i e s m a l mit e i n e r 9 / / Typumwandlung 30 i = ( s t a t i c _ c a s t < f l o a t > ( ) / ) ; 31 cout < < i < < endl ; / / Ausgabe : / / Typumwandlung an d e r f a l s c h e n S t e l l e 3 i = s t a t i c _ c a s t < f l o a t > ( / ) ; 35 cout < < i < < endl ; / / Ausgabe : 0 36 } 5 Weitere Kontrollstrukturen 5.1 do-while Die bisher eingeführte Schleife prüft die Bedingung am Anfang des auszuführenden Blockes. Einlesen und Ausgeben von Zahlen über die Tastatur bis eine negative Zahl eingegeben wurde: 9 c o u t < < " Eingabe : " ; c i n > > z a h l ; 11 1 while ( z a h l > = 0 ) 13 { 1 c o u t < < " Ausgabe : " << z a h l < < e n d l ; 15 c o u t < < " Eingabe : " ; 16 c i n > > z a h l ; 17 } 1 return 0 ; 19 } Problem: Eingabe findet an zwei Stellen im Quelltext statt. WS 001/0 Programmierkurs C++ Seite 5 WS 001/0 Programmierkurs C++ Seite 55 Besser: Überpüfen der Eingabe nach dem ersten Durchlauf. Hierfür gibt es die do-while-schleife. do { Folge von Anweisungen } while ( Bedingung ); Der einzige Unterschied zu der while-schleife liegt darin, daß die Bedingung nach dem Durchlaufen des Blocks geprüft und somit mindestens einmal durchlaufen wird. Das gerade vorgestellte Beispiel läßt sich mit diesem neuen Konstrukt nun wesentlich einfacher schreiben: 9 do { 11 c o u t < < " Eingabe : " ; 1 c i n > > z a h l ; 13 c o u t < < " Ausgabe : " << z a h l < < e n d l ; 1 } 15 while ( z a h l > = 0 ) ; return 0 ; 1 } 5. Zählschleifen Häufig soll eine Folge von Anweisungen mehrfach durchlaufen werden, wobei ein Index hochgezält werden soll. for( Anfangsbefehl ; Bedingung ; Iteration ) { Folge von Anweisungen } Bedeutung (Ablauf der Schleife): 1. Der Anfangsbefehl wird ausgeführt. Die Bedingung wird geprüft. Ist sie falsch, endet die Schleife 3. Die Folge von Anweisungen wird ausgeführt. Der Befehl Iteration wird ausgeführt 5. Das Programm wird bei. fortgesetzt WS 001/0 Programmierkurs C++ Seite 56 WS 001/0 Programmierkurs C++ Seite 57

5 Bemerkungen Fakultät Berechnen der Fakultät n! = 1 n. Man multipliziert nacheinander die ersten n natürlichen Zahlen. 7 i n t n ; long e r g e b n i s = 1 ; 9 c i n > > n ; 11 1 f o r ( i n t i = 1 ; i < = n ; i ++) 13 e r g e b n i s = i ; 1 15 c o u t < < n < < "! = " << e r g e b n i s < < e n d l ; 16 } Das gleiche Ergebnis hätte man auch mit einer while-schleife lösen können. Die hier vorgestellte Variante ist aber im Allgemeinen verständlicher und weniger Fehleranfällig. Die Folge von Schleifenanweisungen kann natürlich auch leer sein. Daher Vorsicht! Die Schleife for (int i = 0; i <= n ; i++); ergebnis *= i; führt keinen Befehl aus. Ist die Bedingung zu Anfang falsch, wird die Schleife nicht durchlaufen. Einzelne Elemente innerhalb der for-klammer können leer bleiben. Dabei ist eine leere Bedingung immer wahr. Die folgende Schleife stoppt nie: for (;;) {... } Man kann einen Schleifenindex im Anfangsbefehl deklarieren, aber auch früher. Wird er im Anfangsbefehl deklariert, so ist er nur in der Schleife sichtbar. Die Iteration wird einmal nach jeder Schleifenanweisung ausgeführt. Nach dem Ende der Schleife hat der Index also den Wert für den die Bedingung erstmals falsch war. for-schleifen können geschachtelt WS 001/0 Programmierkurs C++ Seite 5 WS 001/0 Programmierkurs C++ Seite Vorzeitiges Beenden von Schleifen Manchmal besteht die Notwendigkeit, Schleifen abzubrechen bevor die Folge Anweisungen komplett abgearbeitet wurde. Der Befehl break beendet eine Schleife vorzeitig und fährt mit der ersten Anweisung nach der Schleife fort. Mit dem Befehl continue wird an das Ende einer Schleife gesprungen. Im Falle der for-schleife wird also zum Iterationsbefehl gegangen, im Fall von while und do-while-schleifen zum Prüfen der Endbedingung. Das folgende Programm liefert alle ungeraden Zahlen zwischen 1 und : 7 f o r ( i n t i = 1 ; i < ; i ++) { 9 i f ( i > 1 0 ) break ; i f ( i % = = 0 ) continue ; 11 c o u t < < i < < ", " ; 1 } 13 } 5. Bedingte Anweisungen Abhängig von einem logischen Wert sollen verschiedene Programmteile abgearbeitet if ( Bedingung ) Block oder if ( Bedingung ) Block 1 else Block Im ersten Fall wird der Block nur ausgeführt, wenn die Bedingung den Wert true hat. Im zweiten Fall wird Block 1 ausgeführt wenn die Bedungung true ist, ansonsten Block. WS 001/0 Programmierkurs C++ Seite 60 WS 001/0 Programmierkurs C++ Seite 61

6 Beispiel (Maximum zweier Zahlen): Von zwei eingegebenen Zahlen soll das Maximum ermittelt 7 i n t z a h l 1, z a h l, max ; 9 c i n > > z a h l 1 ; c i n > > z a h l ; 11 1 i f ( z a h l 1 > z a h l ) 13 max = z a h l 1 ; 1 e l s e 15 max = z a h l ; cout < < "Maximum : " << max < < endl ; 1 } if-anweisungen können verschachtelt Hierbei ist zu beachten, daß eine else-anweisung immer zu der letzten if-anweisung im gleichen Block gehört. 5.5 Die switch-anweisung Oft hat man die Notwendigkeit an einer Stelle einen von einer Vielzahl von möglichen Programmteilen zu durchlaufen. Es soll eine Zahl eingegeben Ist diese gleich eins, zwei oder drei, so soll sie in Schriftform ausgegeben 9 c i n > > z a h l ; 11 i f ( z a h l = = 1 ) 1 c o u t < < " e i n s " << e n d l ; 13 e l s e i f ( z a h l = = ) 1 cout < < " zwei " << endl ; 15 e l s e i f ( z a h l = = 3 ) 16 c o u t < < " d r e i " << e n d l ; 17 e l s e 1 c o u t < < " d i e Zahl kenne i c h n i c h t " << e n d l ; 19 } WS 001/0 Programmierkurs C++ Seite 6 WS 001/0 Programmierkurs C++ Seite 63 Dies wird oft sehr unübersichtlich. Besser ist die Verwendung einer switch-anweisung: switch( Ausdruck ) { case Konstante 1 : Block 1 ; break; case Konstante : Block ; break; default: Default-Block ; } Bedeutung: Bei der switch-anweisung wird der Ausdruck der Reihe nach mit den Konstanten in den case-marken verglichen. Stimmen diese überein, so wird der Programmablauf an dieser Stelle fortgesetzt. Stimmt keine case-marke überein, so wird der Probrammablauf bei default fortgesetzt. Die Bearbeitung eines Blockes endet nicht bei der nächsten Marke. Deshalb muß jeder Block mit break beendet Die default-marke kann mit dem entsprechenden Block weggelassen Im letzten Block ist kein break notwendig. WS 001/0 Programmierkurs C++ Seite 6 WS 001/0 Programmierkurs C++ Seite 65

7 Mit Hilfe der switch-anweisung können wir das vorherige Beispiel in folgender Form umschreiben: 9 c i n > > z a h l ; 11 switch ( z a h l ) 1 { 13 case 1 : 1 c o u t < < " e i n s " << e n d l ; 15 break ; 16 case : 17 cout < < " zwei " << endl ; 1 break ; 19 case 3 : 0 c o u t < < " d r e i " << e n d l ; 1 break ; d e f a u l t : 3 c o u t < < " d i e Zahl kenne i c h n i c h t " << e n d l ; } 5 } WS 001/0 Programmierkurs C++ Seite 66

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08 Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für

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 Anweisungen und Ablaufsteuerung

Java Anweisungen und Ablaufsteuerung Informatik 1 für Nebenfachstudierende Grundmodul Java Anweisungen und Ablaufsteuerung Kai-Steffen Hielscher Folienversion: 24. Januar 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht

Mehr

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp

Kapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Datentypen und Operatoren Ganzzahlige Numerische Datentypen Logischer Datentyp ZAIK Universität zu Köln WS 07/08 1 / 6 Datentypen Arten von Datentypen

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 41 Einstieg in die Informatik mit Java Weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick 2 Verbundanweisung 3 Bedingte Anweisung 4 Auswahlanweisung

Mehr

Schleifen in C/C++/Java

Schleifen in C/C++/Java Schleifen in C/C++/Java Alle 3 Sprachen stellen mindestens die folgenden 3 Schleifenkonstruktionen zur Verfügung. In C gibt es auch keine weiteren, C++, Java und C# haben noch weitere nützliche Varianten.

Mehr

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

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

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

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

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie

Mehr

Vorkurs Informatik WiSe 16/17

Vorkurs Informatik WiSe 16/17 Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 05.10.2016 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2016

Mehr

Vorkurs Informatik WiSe 17/18

Vorkurs Informatik WiSe 17/18 Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 05.10.2017 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2017

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 34 Einstieg in die Informatik mit Java weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 34 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung

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

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

Kapitel 5. Programmierkurs. Kontrollstrukturen. Arten von Kontrollstrukturen. Kontrollstrukturen Die if-anweisung Die switch-anweisung

Kapitel 5. Programmierkurs. Kontrollstrukturen. Arten von Kontrollstrukturen. Kontrollstrukturen Die if-anweisung Die switch-anweisung Kapitel 5 Programmierkurs Birgit Engels, Anna Schulze ZAIK Universität zu Köln Kontrollstrukturen Die if-anweisung Die switch-anweisung Die for-schleife Die while-schleife Die do-schleife WS 7/8 /55 Kontrollstrukturen

Mehr

Einführung in die Programmierung

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

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

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

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

Schleifen in C/C++/Java

Schleifen in C/C++/Java Schleifen in C/C++/Java Alle 3 Sprachen stellen mindestens die folgenden 3 Schleifenkonstruktionen zur Verfügung. In C gibt es auch keine weiteren, C++, Java und C# haben noch weitere nützliche Varianten.

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

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

2 Programmieren in Java I noch ohne Nachbearbeitung

2 Programmieren in Java I noch ohne Nachbearbeitung 1 2 Programmieren in Java I noch ohne Nachbearbeitung 2.1 Was sind Programme? Eingabe = Verarbeitung = Ausgabe Die Eingabe kann sein Konstanten im Quelltext; Kommandozeilenparameter oder interaktive Eingabe

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

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Daher ist y = x + 5.6; keine Gleichung, sondern die Anweisung den Wert

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 06: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von

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

Java I Vorlesung Imperatives Programmieren

Java I Vorlesung Imperatives Programmieren Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.

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

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

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2 Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 2 SS 2016

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

Ü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

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

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

Hello World! Eine Einführung in das Programmieren Variablen

Hello World! Eine Einführung in das Programmieren Variablen Hello World! Eine Einführung in das Programmieren Variablen Görschwin Fey Institute of Embedded Systems Hamburg University of Technology Slide 2 Wie werden Daten in Programmen gespeichert und manipuliert?

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

Kontrollstrukturen (1)

Kontrollstrukturen (1) Kontrollstrukturen (1) Selektionen, if ermöglicht das alternative Ausführen von Programteilen in Abhängigkeit einer Bedingung if (Bedingung) Block 1 else Block 2 Ist die Bedingung wahr, also ungleich 0,

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

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

2 Teil 2: Nassi-Schneiderman

2 Teil 2: Nassi-Schneiderman 2 Teil 2: Nassi-Schneiderman Wie kann man Nassi-Schneiderman in einer objektorientierten Sprache verwenden? Jedes Objekt besitzt Methoden, welche die Attribute des Objektes verändern. Das Verhalten der

Mehr

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr. 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 ( / 6 Pkt.) a) Erklären

Mehr

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 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 ( / 4 Pkt.) Gegeben

Mehr

Java Ablaufsteuerung (Beispiele)

Java Ablaufsteuerung (Beispiele) Informatik 1 für Nebenfachstudierende Grundmodul Java Ablaufsteuerung (Beispiele) Kai-Steffen Hielscher Folienversion: 16. Januar 2018 Informatik 7 Rechnernetze und Kommunikationssysteme Blöcke Anweisungen

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

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 4. November 2015 Administratives Zur Abgabe von Übungsaufgaben Nein, wir

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

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

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

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

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

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der

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

6. Kontrollanweisungen II

6. Kontrollanweisungen II Sichtbarkeit 6. Kontrollanweisungen II Sichtbarkeit, Lokale Variablen, While-Anweisung, Do-Anweisung, Sprunganweisungen main block Deklaration in einem Block ist ausserhalb des Blocks nicht sichtbar. int

Mehr

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff. Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit

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

5. Kontrollanweisungen II

5. Kontrollanweisungen II Sichtbarkeit 5. Kontrollanweisungen II Sichtbarkeit, Lokale Variablen, While-Anweisung, Do-Anweisung, Sprunganweisungen main block Deklaration in einem Block ist ausserhalb des Blocks nicht sichtbar. int

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Anweisungen mit Variablen Wiederholung Deklaration

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von

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

S. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then"

S. d. I.: Programieren in C Folie 4-1. im Gegensatz zu Pascal gibt es in C kein Schlüsselwort then S. d. I.: Programieren in C Folie 4-1 4 Anweisungen 4.1 if-anweisung 1) if (Ausdruck) 2) if (Ausdruck) } else im Gegensatz zu Pascal gibt es in C kein Schlüsselwort "then" es wird nur der numerische Wert

Mehr

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden Javaprogrammierung mit NetBeans Variablen, Datentypen, Methoden Programmieren 2 Java Bezeichner Bezeichner: Buchstabe _ $ Buchstabe _ $ Ziffer Groß- und Kleinbuchstaben werden strikt unterschieden. Schlüsselwörter

Mehr

Intensivübung zu Algorithmen und Datenstrukturen

Intensivübung zu Algorithmen und Datenstrukturen Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 29 Einstieg in die Informatik mit Java Weitere Ausdrücke Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 29 1 Überblick 2 Kombinierte Zuweisungsoperatoren 3 Vergleichsoperatoren

Mehr

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser

Mehr

Operatoren (1) Operatoren (2)

Operatoren (1) Operatoren (2) Operatoren (1) Binäre Operatoren + - * / % < = > & ^ > && Addition Subtraktion Multiplikation Division Divisionsrest Vergl. auf kleiner Vergl. auf kleiner oder gleich Vergl. auf gleich Vergl.

Mehr

if ( Logischer Operator ) { } else { Anweisungen false

if ( Logischer Operator ) { } else { Anweisungen false if ( Logischer Operator ) { Anweisungen true else { Anweisungen false Bedingte Anweisungen Operatoren verknüpfen Variable zu neuen Ausdrücken, wir unterscheiden Arithmetische Operatoren Berechnung von

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

Abschnitt 5. Grundlagen der funktionalen & imperativen Programmierung

Abschnitt 5. Grundlagen der funktionalen & imperativen Programmierung Übersicht Abschnitt 5. Grundlagen der funktionalen & imperativen Programmierung Einführung in die Programmierung 5. Grundlagen der funktionalen & imperativen Programmierung 1 Übersicht 5.1 Sorten und Abstrakte

Mehr

Herzlich willkommen!

Herzlich willkommen! Programmiertechnik 1 Herzlich willkommen! Dozent: Dipl.-Ing. Jürgen Wemheuer Teil 6: Zusammenfassung und Beispiele Mail: wemheuer@ewla.de Online: http://cpp.ewla.de/ Zusammenfassung (1) 2 1. Programm in

Mehr

C++ Teil 5. Sven Groß. 12. Nov IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Nov / 16

C++ Teil 5. Sven Groß. 12. Nov IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Nov / 16 C++ Teil 5 Sven Groß IGPM, RWTH Aachen 12. Nov 2014 Sven Groß (IGPM, RWTH Aachen) C++ Teil 5 12. Nov 2014 1 / 16 Themen der letzten Vorlesung Eingabestrom, Verhalten von cin Namensräume Live Programming

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der Java-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 3: Kontrollstrukturen Einfache Anweisungen Anweisungsblöcke Steuerung

Mehr

Programmiertechnik Kontrollstrukturen

Programmiertechnik Kontrollstrukturen Programmiertechnik Kontrollstrukturen Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Kontrollstrukturen? Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,

Mehr

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

float: Fließkommazahl nach IEEE 754 Standard mit 32 bit Primitive Datentypen Fließkommazahlen float: Fließkommazahl nach IEEE 754 Standard mit 32 bit Vorzeichen Exponent 8 bit Mantisse 23 bit double: Fließkommazahl nach IEEE 754 Standard mit 64 bit Vorzeichen

Mehr

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

4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan) 4. Ablaufsteuerung (Kontrollstrukturen) 4.1 Anweisungen 4.2 Selektion (bedingte Anweisung) 4.3 Iteration 4.4 Flussdiagramm (Programmablaufplan) 4. Ablaufsteuerung 4-1 4.1 Anweisungen Ein Programm besteht

Mehr

Einführung in die Programmierung II. 3. Kontrollstrukturen

Einführung in die Programmierung II. 3. Kontrollstrukturen Einführung in die Programmierung II 3. Kontrollstrukturen Thomas Huckle, Stefan Zimmer 2.5.2007-1- Anweisungen: was bisher geschah Bisher kennen wir zwei Formen von Anweisungen Ein Ausdruck mit Semikolon

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

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

Schachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A 2.4.6. Kontrollstrukturen if-anweisung: Bedingte Ausführung (Verzweigung) 2 Varianten: if (Bedingung) Anweisung (Anweisung = einzelne Anweisung oder Block) Bedeutung: die Anweisung wird nur ausgeführt,

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 4 C-Anweisungen...4-2 4.1 Ausdrucksanweisungen...4-3 4.2 Zusammengesetzte Anweisungen (Anweisungsblöcke)...4-3 4.3 Schleifenanweisungen...4-4 4.3.1 while - Schleife...4-4 4.3.2 do - Schleife...4-5

Mehr

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1 Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur

Mehr

Repetitorium Programmieren I + II

Repetitorium Programmieren I + II Repetitorium Programmieren I + II Stephan Gimbel Johanna Mensik Michael Roth 6. März 2012 Agenda 1 Operatoren 2 Datentypen Gleitpunkt Zahl Typkonvertierung 3 Strommanipulatoren 4 Bedingungen if-else switch-case

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 3 C-Ausdrücke...3-2 3.1 Arithmetische Ausdrücke...3-3 3.2 Wertzuweisungen...3-5 3.3 Inkrementieren und Dekrementieren...3-6 3.4 Logische Ausdrücke (Bedingungen)...3-7 3.5 Bedingte Ausdrücke...3-8

Mehr

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

Sprachkonstrukte. Einführung in Java. Folie 1 von Mai Ivo Kronenberg Sprachkonstrukte Einführung in Java Folie 1 von 20 12. Mai 2011 Ivo Kronenberg Inhalt Kommentare Identifier (Bezeichner) Variablen Numerische Ausdrücke und Typen Kontrollstrukturen Verzweigungen Bedingungen

Mehr

Arbeitsblätter für Algorithmierung und Strukturierung C #

Arbeitsblätter für Algorithmierung und Strukturierung C # Prof. Dr.- Ing. Ch. Wahmkow Fachbereich Maschinenbau Fachhochschule Stralsund Arbeitsblätter für Algorithmierung und Strukturierung C # Inhalt : Struktogramme, Beispiele und Erläuterungen - Sequenz - vollständige

Mehr

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration Selektion Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if

Mehr

6. Kontrollanweisungen II

6. Kontrollanweisungen II Sichtbarkeit Deklaration in einem Block ist ausserhalb des Blocks nicht sichtbar. 6. Kontrollanweisungen II Sichtbarkeit, Lokale Variablen, While-Anweisung, Do-Anweisung, Sprunganweisungen main block int

Mehr

Tag 3 Repetitorium Informatik (Java)

Tag 3 Repetitorium Informatik (Java) Tag 3 Repetitorium Informatik (Java) Dozent: Marius Kamp Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Typkonvertierung

Mehr

PROCESSING EINE ZUSAMMENFASSUNG. Created by Michael Kirsch & Beat Rossmy

PROCESSING EINE ZUSAMMENFASSUNG. Created by Michael Kirsch & Beat Rossmy PROCESSING EINE ZUSAMMENFASSUNG Created by Michael Kirsch & Beat Rossmy INHALT 1. Typen und Operatoren 1. Datentypen 3. Klassen und Objekte 1. Klassen und Objekte 2. Operatoren 2. Konstruktor 3. Typkonversion

Mehr

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

Die for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben 18.11.5 1 HEUTE 18.11.5 3 Schleifen Arrays while, do reichen aus, um alle iterativen Algorithmen zu beschreiben Nachteil: Steuermechanismus ist verteilt Übersicht nicht immer leicht dazu gibt es for (

Mehr