5. Ausdrücke und Anweisungen (Expressions und Statements)

Größe: px
Ab Seite anzeigen:

Download "5. Ausdrücke und Anweisungen (Expressions und Statements)"

Transkript

1 5. Ausdrücke und Anweisungen (Expressions und Statements) Formeln und Ausdrücke Evaluation von Ausdrücken Typanpassung Einfache Anweisungen Deklarationen Verzweigungen Schleifen und Algorithmen

2 Primitive Typen und Operatoren Die primitiven Typen sind in der Sprache vordefiniert: Zahlen 1024, , -2e-6 logische Werte true, false Zeichen 'a', 'A', '&', '#' Bytes (als ganze Zahlen interpretiert) Zur Operation auf primitiven Typen gibt es vordefinierte Operatoren: arithmetische Operatoren +, -, *, /, % Vergleichsoperatoren >,<, ==,!= >=,<= logische Operatoren &,, ^,!, &&, Speicheroperatoren >>, << (c) schmiedecke 04 Pr1-6: Statements 2

3 Formeln und Prioritäten Mithilfe der Operatoren kann man Formeln schreiben: (laenge 100)* 0,9 jung & schoen alt & reich gehalt miete <= festekosten Die mathematischen Regeln sind auf Operator-Prioritäten abgebildet Punktrechnung vor Strichrechnung & bindet stärker als Klammern haben Vorrang... (c) schmiedecke 04 Pr1-6: Statements 3

4 Postfix-Operatoren Operator-Prioritäten (in absteigender Folge) []. (params) expr++ expr-- Unäre Operatoren ++expr --expr +expr -expr ~! Objekterzeugung und Typanpassung Punktrechnung * / % Strichrechnung + - new (type)expr Bitoperatoren << >> >>> Vergleichsoperatoren Gleichheit ==!= (bitweises) UND (bitweises) exklusiv-oder (bitweises) ODER logisches UND logisches ODER < > <= >= instanceof Konditional-Operator? : = += -= *= /= %= &= ^= = <<= >>= Zuweisung und kombiniertezuweisung >>>= & ^ && Im Zweifel Klammern setzen!! (c) schmiedecke 04 Pr1-6: Statements 4

5 Ausdrücke (Expressions) Eine Formel ist programmiersprachlich ein Ausdruck (Expression) Ein Ausdruck hat einen Typ Ein Ausdruck wird zur Laufzeit evaluiert (ausgewertet) und liefert einen Wert Ein Ausdruck kann überall stehen, wo ein Wert benötigt wird, z.b: idealgewicht = (laenge 100)* 0.9; (c) schmiedecke 04 Pr1-6: Statements 5

6 Ausdrücke Ein Ausdruck kann sein: ein Literal: 123,56 true -12e-6 eine Variable: alter, annalinks eine Formel aus Operatoren und Operanden (wobei jeder Operand ein Ausdruck ist): (laenge 100)* 0,9 ein Funktionsaufruf (kommt später) (c) schmiedecke 04 Pr1-6: Statements 6

7 Auswertung von Ausdrücken Semantik = Bedeutung: Was bedeutet der Text für den Ausführer? Semantik der Ausdrücke: Auswertung (Evaluation) Die Auswertungsregel für Ausdrücke ist ganz einfach: Die Zuweisung wird von rechts nach links ausgewertet (evaluiert) alle anderen Ausdrücke von links nach rechts (unter Berücksichtigung von Klammern und Prioritäten) Jeder Ausdruck hat einen Typ (Programmtext Syntax). Die Auswertung ergibt einen Wert dieses Typs (Laufzeit Semantik) (c) schmiedecke 04 Pr1-6: Statements 7

8 Typanpassungen Welchen Typ hat die Formel (laenge 100)* 0.9? Die Operatoren und * sind zwischen Operatoren gleichen Typs definiert und liefern dann auch diesen Typ. Zuerst wird die Klammer evaluiert: Typ int * ist zwischen int und double nicht definiert Bei der Evaluation erfolgt eine implizite Typanpassung von int an double (c) schmiedecke 04 Pr1-6: Statements 8

9 Implizite und explizite Typanpassung int double Widening: kein Informationsverlust (200 ist gleichwertig mit 200.0), erfolgt ggf. implizit bei Bedarf double int Narrowing: Informationsverlust (Nachkommastellen und führende Ziffern einer zu großen Zahl werden abgeschnitten!), muss explizit gefordert werden: (int)3,14 3 Generell gilt: Alle Zahlentypen (nicht char!) sind aneinander anpassbar Narrowing geschieht implizit, Widenig muss explizit gefordert werden (c) schmiedecke 04 Pr1-6: Statements 9

10 Beispiele Typanpassung 01 int kundennummer = 144; 02 byte index = (byte) kundennummer; 03 // was ist, wenn an die Kundennummer "000" angehängt wird? float pi = ; // Typfehler! 06 double hight = 14; // erhält viele Kommastellen int pi = (int) ; 10 // Genauigkeitsverlust bei expliziter Typanpassung 11 Console.println((double)pi) // // Genauigkeit nicht wieder herstellbar Objekt objekt = "ABC"; 15 // String-Aspekt wird "ausgeblendet" 16 Console.println((String)objekt.toLowerCase()); // abc 17 // String-Aspekt wird wieder "eingeblendet" 18 // kein Informationsverlust (c) schmiedecke 04 Pr1-6: Statements 10

11 Anweisungen Anweisungen machen die Schritte eines Algorithmus aus. Sie werden vom Ausführer als Befehle verstanden. Anweisungen haben keinen Typ und liefern keinen Wert. Sie werden ausgeführt nicht evaluiert. Anweisungen müssen einen (Seiten-)Effekt haben, sonst sind sie sinnlos. Anweisungen enden mit einem Semikolon: Wertvernichter und Weiterschalter. (c) schmiedecke 04 Pr1-6: Statements 11

12 Einfache Anweisungen Zuweisung auto.wattzahl = 123; // Befehl, etwas zu speichern Methodenaufruf: Console.println("Dies ist ein Befehl!"); Grenzen der Wertvernichtung: Semikolon macht Ausdruck zur Anweisung wenn der Compiler feststellen kann, dass der Ausdruck keinen Seiteneffekt hat, ist die Umwandlung illegal: a = 17; // Seiteneffekt = gewünschter Effekt; // legal x+3; // kein Seiteneffekt; illegal! (c) schmiedecke 04 Pr1-6: Statements 12

13 Anweisungsfolgen: Sequenzen und Blöcke Semikolon bewirkt die Hintereinanderschaltung {TOASTPACKUNG.oeffnen(); toast toast = = TOASTPACKUNG.toastEntnehmen(); MESSER.ausstreichen(butter, } toast); MESSER.ausstreichen(marmelade, {MESSER.ausstreichen(butter, toast); MESSER.durchschneiden(toast); MESSER.ausstreichen(marmelade, toast); MESSER.durchschneiden(toast); } Blöcke bilden Gruppierungen: (c) schmiedecke 04 Pr1-6: Statements 13

14 Deklarationen und Definitionen Deklarationen "erfinden" Namen Syntax: Deklaration:: Typ, Name Name:: Identifier Beispiel: int i; Auto mazda; Sie haben keinen Typ und keinen Wert Anweisungen "Ketten" sind erlaubt: int i,j,k; Auto bmw, smart, mazda, peugeot. Definitionen setzen Initialwerte: int i=0, j=100, k=2; Auto bmw = new Auto(), smart = new Auto(); (c) schmiedecke 04 Pr1-6: Statements 14

15 Erinnerung: Scope Namen sind innerhalb des Blocks bekannt, in dem sie deklariert sind. Bei der Ausführung werden sie bei Verlassen des Blocks entsorgt. { TOASTPACKUNG.oeffnen(); } Toast toast = TOASTPACKUNG.toastEntnehmen(); { MESSER.ausstreichen(butter, toast); // unbekannt!!! } MESSER.ausstreichen(marmelade, toast); MESSER.durchschneiden(toast); Ausnahme: Attribut- und Methodennamen sind außerhalb der Klasse qualifiziert bekannt (sofern sie public deklariert sind). Ihre Lebensdauer ist die der Klasse (gilt für static) public class Auto { public static int wattzahl; } // irgendwo Auto.wattzahl = 20; (c) schmiedecke 04 Pr1-6: Statements 15

16 Kontrollflussanweisungen (Ablaufstrukturen) Bausteine für Algorithmen Grundfrage: Was passiert als nächstes? Grundlegende Ablaufstrukturen: Sequenz Fallunterscheidung, Verzweigung Wiederholung (mit / ohne Endebedingung) (c) schmiedecke 04 Pr1-6: Statements 16

17 Verzweigung: 1. Bedingte Anweisung: "Falls es kalt ist, Jacke mitnehmen." if (Bedingung) { Anweisungsblock } 2. Einfache Fallunterscheidung: "Wenn rechtzeitig, zu Fuß gehen, sonst Fahrrad nehmen." if (Bedingung) { Anweisungsblock1 } else { Anweisungsblock2 } 3. Geschachtelte Fallunterscheidung: "Wenn rechtzeitig, zu Fuß gehen, sonst wenn Fahrer vorhanden, bringen lassen, sonst Fahrrad nehmen." 4. Mehrfachverzweigung: "12 Min. Zeit: laufen; 8 min. Zeit: Fahrrad nehmen; 4 Min. Zeit: bringen lassen; sonst: aufgeben." if (Bedingung1) { Anweisungsblock1 } else if (Bedingung2) { Anweisungsblock2 } else { Anweisungsblock3 } switch (Variable) { case Wert:... case Wert :... case Wert : default: (c) schmiedecke 04 Pr1-6: Statements 17

18 Beispiel Fallunterscheidung if (Kontoverwaltung.pinKorrekt()) { Geldzaehler.geldEinnehmen(); Display.betragAnzeigen(); Kontoverwaltung.betragGutschreiben(); Display.textKarteEntnehmen(); Display.textAufWiedersehen(); } else { Display.textFalschePIN(); Nur 1 } Anweisung: Blockklammern nicht nötig (c) schmiedecke 04 Pr1-6: Statements 18

19 Ausprobieren! Sie wollen ein Auto mieten? Dann zeigen Sie bitte Ihre Mitgleidskarte: die Standardkaution beträgt 10*die Leistung des Autos Wenn Sie unter 25 sind, kommen 500 Euro dazu Wenn Sie Premium-Mitglied sind, entfällt die Kaution Wenn Sie unter 25 sind, erhalten Sie nur Wagen bis 45 kw. Nehmen Sie an, die folgenden Variablen enthalten die richtigen Werte: static int alter, leistung; static boolean premium; Drucken Sie als Ergbnis der Überprüfung z.b: "Tut uns leid, Sie sind zu jung für dieses Auto." "Gut, das macht dann 560 Euro Kaution." (c) schmiedecke 14 Pr1-6-Expressions und Statements 19

20 Formulierung von Bedingungen boolean schuldenfrei; if (Konto.saldo >= 0) { schuldenfrei = true; } if (Konto.saldo < 0) { schuldenfrei = false; } Mehrfache Auswertung; inzwischen geändert?? boolean positiv = Konto.saldo >= 0; if (positiv) { schuldenfrei = true; } if (!positiv){ schuldenfrei = false; } Einmalige Auswertun g if (Konto.saldo >= 0) { schuldenfrei = true; } else { schuldenfrei = false; } schuldenfrei = Konto.saldo >= 0; Elegant! (c) schmiedecke 04 Pr1-6: Statements 20

21 Grafische Repräsentation: Flussdiagramm if (B){ S } if (B) { S1 } B + - S else { S2 } S 2 - B + S 1 if (B1) { S1 } else if (B2) { S2 } else if (B3) { S3 } else { S4 } + - S 1 B 1 B 2 - B 3 S 2 S 3 S 4 (c) schmiedecke 04 Pr1-6: Statements 21

22 Mehrfachverzweigung switch (Ganzzahl) { case Wert1: S11; S12..; break; case Wert2: S21; S22;..;break; case Wert3: S31; S32;..;break; default: S100; } Hinweise: Als Typ des switch-ausdrucks kommen Ganzzahlen und char in Frage Die Anweisungsfolge Snn... kann leer sein. fehlt break, so wird in der Folgezeile fortgefahren default kann weggelassen werden. { case 'a': case 'b':...: case 'Z': buchstabe(); break; switch (System.in.read()) // Ausdruck vom Typ char case '1': case '2':...: case '0': ziffer(); break; default: sonderzeichen(); }(c) schmiedecke 04 Pr1-6: Statements 22

23 char auswahl = Console.read(); switch (auswahl) { case 'K': dialogkontostand(); break; case 'A': dialogbarauszahlung(); break; case 'E': dialogbareinzahlung(); break; default: dialogauswahlwiederholen(); } Beispiel Mehrfachverzweigung char auswahl = Console.read(); switch (auswahl) { case 'K': case 'k': dialogkontostand(); break; case 'A': case 'a': dialogbarauszahlung(); break; case 'E': case 'e': dialogbareinzahlung(); break; default: dialogauswahlwiederholen(); } (c) schmiedecke 04 Pr1-6: Statements 23

24 Schleifen 1. Kopfgesteuerte Schleife "Solange unter 20, stündlich Holz nachlegen." 2. Endgesteuerte Schleife: "Stündlich Holz nachlegen, bis 20 erreicht." 3. Endlosschleife: "Stündlich Holz nachlegen." 4. Zählschleife: "In den nächsten 6 Stunden stündlich Holz nachlegen." while (temp < 20) { HolzNachlegen(); } do {HolzNachlegen(); } while (temp < 20); while (true) { HolzNachlegen(); } for (int Stunden=0; Stunden < 6; Stunden++;) { HolzNachlegen(); } (c) schmiedecke 04 Pr1-6: Statements 24

25 Zählschleifen: for (int i=0; i<max; i++) Console.print(i+" "); int i = 0; for (i; i<max; i++ ) Console.print(i+" "); Grundform max Durchläufe for ( char zeichen = 'a'; zeichen <= 'z'; zeichen++) Console.print(zeichen+" "); for ( char zeichen = 'z'; zeichen >= 'a'; zeichen--) Console.print(zeichen+" "); (c) schmiedecke 04 Pr1-6: Statements 25

26 0 4 7 Beispiel Zählwerk Ausgabe: for (int i= 0; i<10; i++) for (int j= 0; j<10; j++) for (int k= 0; k<10; k++) System.out.println ( ""+ +""+ +""+ );??? (c) schmiedecke 04 Pr1-6: Statements 26

27 Schleifen und Algorithmen Mit Fallunterscheidungen, Verzweigungen und Schleifen haben wir das Rüstzeug für beliebig komplexe Algorithmen. Beispiel: Einlasskontrolle für ein Konzert Tipp: Top-Down-Entwurf Immer erst verbal formulieren. Nicht mehr als 5-8 Schritte. Aus den Schritten Prozeduren bilden. (c) schmiedecke 04 Pr1-6: Statements 27

28 Einlasskontrolle (verbal) while (schlange) { boolean VIP = false; personvorlassen(); ticketkontrollieren(); // setzt VIP sicherheitscheck(); richtungweisen(); if (VIP) } { warteplatzanweisen(); abholdienstanfordern(); } else richtungweisen(); } (c) schmiedecke 04 Pr1-6: Statements 28

29 Bruchzahl einlesen: kopfgesteuerte Bedingungsschleife float zahl; // Ergebnis-Variable String eingabe = ""; // Lese-Puffer char c = Console.read(); // 1 Zeichen lesen while (c!= '\n' & c!= '\r')// kein Zeilenende { eingabe += c; // Zeichen anfügen } c = Console.read(); // nächstes Zeichen Console.skip(); // Rest der Eingabe verwerfen (nur DOS) zahl = Float.parseFloat(eingabe); (c) schmiedecke 04 Pr1-6: Statements 29

30 Bruchzahl einlesen: endgesteuerte Bedingungsschleife float zahl; String eingabe = ""; // Lese-Puffer // Ergebnis-Variable do { char c = Console.read(); // 1 Zeichen lesen eingabe += c; // Zeichen anfügen } while (c!= '\n' & c!= '\r') char c = Console.read(); // Rest der Eingabe verwerfen (nur DOS) eingabe = // zuviel gelesenes Zeichen entfernen.. eingabe.substring(0,eingabe.length-2); zahl = Float.parseFloat(eingabe); (c) schmiedecke 04 Pr1-6: Statements 30

31 break und continue Wie kommt man aus einer Endlosschleife heraus? Durch "Ausbruch": break int i = 0; while (true) { i++; } 100 Durchläufe, 5 Ausgaben if (i>5) continue; if (i>100) break; Console.println("weiter geht's"); Man kann auch den einzelnen Schleifendurchlauf abkürzen: continue (c) schmiedecke 04 Pr1-6: Statements 31

32 Bruchzahl einlesen: rumpfgesteuerte Bedingungsschleife float zahl; String eingabe = ""; // Lese-Puffer // Ergebnis-Variable while (true) { char c = Console.read(); // 1 Zeichen lesen if (c == '\n' c == '\r') break; // Zeilenende? // Zeichen anfügen eingabe += c; } char c = Console.read(); // Rest der Eingabe verwerfen (nur DOS) zahl = Float.parseFloat(eingbe); (c) schmiedecke 04 Pr1-6: Statements 32

33 ... das reicht erst einmal Nächstes Mal verstecken wir die Komplexität der Algorithmen in Methoden.

34 Beispielaufgaben Hexazählwerk Kalenderzähler optimierte Münzausgabe Haufenspiel BubbleSort Begrüßungsformel nach Tageszeit Kautionsrechner Alter in Tagen (c) schmiedecke 04 Pr1-6: Statements 34

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

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

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

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

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren 3. Kontrollstrukturen 04.11.2015 Prof. Dr. Ralf H. Reussner Version 1.1 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD),

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

Programmieren I. Kapitel 5. Kontrollfluss

Programmieren I. Kapitel 5. Kontrollfluss Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,

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

ModProg 15-16, Vorl. 5

ModProg 15-16, Vorl. 5 ModProg 15-16, Vorl. 5 Richard Grzibovski Nov. 18, 2015 1 / 29 Übersicht Übersicht 1 Logische Operationen 2 Priorität 3 Verzweigungen 4 Schleifen 2 / 29 Logische Werte Hauptkonzept: Besitzt ein C-Ausdruck

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

RO-Tutorien 3 / 6 / 12

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

Mehr

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

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

Mehr

3. Algorithmenentwurf und JAVA. Informatik II für Verkehrsingenieure

3. Algorithmenentwurf und JAVA. Informatik II für Verkehrsingenieure 3. Algorithmenentwurf und JAVA Informatik II für Verkehrsingenieure Schwerpunkt 1 ALGORITHMEN UND UMSETZUNG Aufgabe Algorithmus Programm Eigentliche Entwicklung der Verfahrensidee Codierung Algorithmenentwurf

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

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2

Tutoraufgabe 1 (Zweierkomplement): Lösung: Programmierung WS16/17 Lösung - Übung 2 Prof. aa Dr. J. Giesl Programmierung WS16/17 F. Frohn, J. Hensel, D. Korzeniewski Tutoraufgabe 1 (Zweierkomplement): a) Sei x eine ganze Zahl. Wie unterscheiden sich die Zweierkomplement-Darstellungen

Mehr

Einstieg in die Informatik mit Java

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

Mehr

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7

Java 7. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Dezember 2011 JAV7 Java 7 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Dezember 2011 JAV7 5 Java 7 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

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

Präzedenz von Operatoren

Präzedenz von Operatoren Präzedenz von Operatoren SWE-30 Die Präzedenz von Operatoren bestimmt die Struktur von Ausdrücken. Ein Operator höherer Präzedenz bindet die Operanden stärker als ein Operator geringerer Präzedenz. Mit

Mehr

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen Heusch 8 Ratz Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen Neben der Aneinanderreihung von Anweisungen (Sequenz)

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

12 == 12 true 12 == 21 false 4 === 7 true 4 === "vier" false 4 === 4.0 false 12!= 13 true 12!== 12 false 12!== 12.0 true. 1 < 3 true 3 < 1 false

12 == 12 true 12 == 21 false 4 === 7 true 4 === vier false 4 === 4.0 false 12!= 13 true 12!== 12 false 12!== 12.0 true. 1 < 3 true 3 < 1 false Die if-anweisung if (Bedingung 1) { Code 1 else { Code 2 ; Anm.1: Das ; kann entfallen, da innerhalb { ein sog. Codeblock geschrieben wird. Anm.2: Es gibt noch andere Schreibweisen, aber wir wollen uns

Mehr

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik

Programmieren I. Kontrollstrukturen. Heusch 8 Ratz 4.5. www.kit.edu. Institut für Angewandte Informatik Programmieren I Kontrollstrukturen Heusch 8 Ratz 4.5 KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Arten von Kontrollstrukturen

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

Primitive Datentypen

Primitive Datentypen Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.

Mehr

Programmieren in C / C++ Grundlagen C 2

Programmieren in C / C++ Grundlagen C 2 Programmieren in C / C++ Grundlagen C 2 Hochschule Fulda FB AI Wintersemester 2016/17 http://c.rz.hs-fulda.de Peter Klingebiel, HS Fulda, FB AI Anweisung / Ausdruck 1 Programm setzt sich aus vielen Anweisungen

Mehr

VL5-Methoden: Void-Methoden und Funktionen

VL5-Methoden: Void-Methoden und Funktionen VL5-Methoden: Void-Methoden und Funktionen Void-Methoden und Funktionen Parameter Methoden-Überladung Nachrichten Wir erinnern uns: Komponenten kommunizieren miteinander durch Nachrichten Nachrichten sind

Mehr

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging.

Algorithmische Kernsprache. Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Algorithmische Kernsprache Zuweisung, einfache und bedingte Anweisung, Blöcke, Schleifen, return, debugging. Ausdrücke Anweisungen Ausdrücke bezeichnen einen Wert Kontext stellt Werte von Variablen Werte

Mehr

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff

Programmieren in C. C Syntax Datentypen, Operatoren und Kontrollstrukturen. Prof. Dr. Nikolaus Wulff Programmieren in C C Syntax Datentypen, Operatoren und Kontrollstrukturen Prof. Dr. Nikolaus Wulff Elementare Typen Imperative und objektorientierte Programmiersprachen bieten i.d.r. einen Satz elementarer

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

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

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

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

Mehr

Flussdiagramm / Programmablaufplan (PAP)

Flussdiagramm / Programmablaufplan (PAP) Flussdiagramm / Programmablaufplan (PAP) Basissysmbole Grenzstelle (Anfang, Zwischenhalt oder Ende des Programms/Algorithmus) Verbindung Zur Verdeutlichung der Ablaufrichtung werden Linien mit einer Pfeilspitze

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

Übersicht Programmablaufsteuerung

Übersicht Programmablaufsteuerung Übersicht Programmablaufsteuerung Konditionale Verzweigung: if - else switch-anweisung Schleifenkonstrukte: while, do - while for Schleife Sprung-Anweisungen: break, continue, goto, return Anweisungen

Mehr

JAVA-Datentypen und deren Wertebereich

JAVA-Datentypen und deren Wertebereich Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).

Mehr

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

Mehr

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

Kontrollstrukturen, Pseudocode und Modulo-Rechnung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 29.10.2012 CoMa-Übung III (TU Berlin) Kontrollstrukturen, Pseudocode und Modulo-Rechnung 29.10.2012 1 / 1 Themen der Übung 1

Mehr

4. Ablaufsteuerung (Kontrollstrukturen)

4. Ablaufsteuerung (Kontrollstrukturen) 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

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

Werkzeuge zur Programmentwicklung

Werkzeuge zur Programmentwicklung Werkzeuge zur Programmentwicklung B-15 Bibliothek Modulschnittstellen vorübersetzte Module Eingabe Editor Übersetzer (Compiler) Binder (Linker) Rechner mit Systemsoftware Quellmodul (Source) Zielmodul

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

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

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

Mehr

Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe

Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Operatoren? Ein Operator ist eine in die Programmiersprache eingebaute Funktion,

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

Sprachbeschreibung und Erweiterung

Sprachbeschreibung und Erweiterung Sprachbeschreibung und Erweiterung Worte, Sprachen, reguläre Ausdrücke, Automaten, BNF, Grammatik, Syntax- Diagramme, Spracherweiterungen do, for, break, switch Formale Beschreibung von Programmiersprachen

Mehr

PROGRAMMIERUNG IN JAVA

PROGRAMMIERUNG IN JAVA PROGRAMMIERUNG IN JAVA ZUWEISUNGEN (1) Deklaration nennt man die Ankündigung eines Platzhalters (Variablen) und Initialisierung die erste Wertvergabe bzw. die konkrete Erstellung des Platzhalters. In einem

Mehr

4. Einfache Programmstrukturen in C Einfache Programmstrukturen in C

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

Mehr

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

Algorithmen & Programmierung. Ausdrücke & Operatoren (1)

Algorithmen & Programmierung. Ausdrücke & Operatoren (1) Algorithmen & Programmierung Ausdrücke & Operatoren (1) Ausdrücke Was ist ein Ausdruck? Literal Variable Funktionsaufruf Ausdruck, der durch Anwendung eines einstelligen (unären) Operators auf einen Ausdruck

Mehr

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens Grundlagen von C Jonas Gresens Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität

Mehr

C- Kurs 04 Anweisungen

C- Kurs 04 Anweisungen C- Kurs 04 Anweisungen Dipl.- Inf. Jörn Hoffmann jhoffmann@informa@k.uni- leipzig.de Universität Leipzig Ins@tut für Informa@k Technische Informa@k Ausdrücke Institut für Informatik Anweisungen C-Programm

Mehr

2.5 Programmstrukturen Entscheidung / Alternative

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

Mehr

Webbasierte Programmierung

Webbasierte Programmierung Webbasierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der HTML5-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 6: JavaScript Kontrollstrukturen Verzweigungen Einseitig, zweiseitig,

Mehr

Kompaktkurs Einführung in die Programmierung. 3. Fundamentale Datentypen, Ausdrücke

Kompaktkurs Einführung in die Programmierung. 3. Fundamentale Datentypen, Ausdrücke Kompaktkurs Einführung in die Programmierung 3. Fundamentale Datentypen, Ausdrücke Stefan Zimmer 4.3.2009-1- Objekte im Speicher Ein Objekt ist für uns zunächst einfach ein fester Bereich im Speicher unseres

Mehr

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue Java - Zahlen, Wahrheitswerte und Zeichen Leibniz Universität IT Services Anja Aue Kommentare Hilfe für den Entwickler. Wer hat wann welche Änderung vorgenommen? Warum werden diese Anweisungen hier ausgeführt?

Mehr

Verzweigungen und Wiederholungen

Verzweigungen und Wiederholungen 3 Verzweigungen und Wiederholungen 3-1 Verzweigungen und Wiederholungen Inhalt if while do while for break, continue switch Beispiele Übungsaufgaben if Will man eine Anweisung nur unter einer Bedingung

Mehr

Objektorientierte Programmierung OOP Programmieren mit Java

Objektorientierte Programmierung OOP Programmieren mit Java Objektorientierte Programmierung OOP Programmieren mit Java 5.1 Elementare Anweisungen 5.1.1 Ausdrucksanweisung 5.1.2 Leere Anweisung 5.1.3 Blockanweisung 5.1.4 Variablendeklaration 5.2 Bedingungen 5.2.1

Mehr

Einführung in die Programmierung mit VBA

Einführung in die Programmierung mit VBA Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen

Mehr

Einführung in die Programmierung

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

Mehr

Einfache Rechenstrukturen und Kontrollfluss II

Einfache Rechenstrukturen und Kontrollfluss II Einfache Rechenstrukturen und Kontrollfluss II Martin Wirsing in Zusammenarbeit mit Moritz Hammer und Axel Rauschmayer http://www.pst.informatik.uni-muenchen.de/lehre/ss06/infoii/ SS 06 Ziele Lernen imperative

Mehr

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Einfache Programme: Programm-Argument, Bedingte Anweisungen, Switch, Enum Boolesche Werte und Ausdrücke Seite 1 Beispiel: Umrechnen

Mehr

JAVA - Methoden

JAVA - Methoden Übungen Informatik I JAVA - http://www.fbi-lkt.fh-karlsruhe.de/lab/info01/tutorial Übungen Informatik 1 Folie 1 sind eine Zusammenfassung von Deklarationen und Anweisungen haben einen Namen und können

Mehr

Welche Informatik-Kenntnisse bringen Sie mit?

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

Mehr

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

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

Kapitel 3: Variablen

Kapitel 3: Variablen Kapitel 3: Variablen Thema: Programmieren Seite: 1 Kapitel 3: Variablen Im letzten Kapitel haben wir gelernt, bestimmte Ereignisse zu wiederholen solange eine Bedingung erfüllt ist. Nun möchten wir aber

Mehr

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue

Java - Zahlen, Wahrheitswerte und Zeichen. Leibniz Universität IT Services Anja Aue Java - Zahlen, Wahrheitswerte und Zeichen Leibniz Universität Anja Aue Kommentare Hilfe für den Entwickler. Wer hat wann welche Änderung vorgenommen? Warum werden diese Anweisungen hier ausgeführt? Bei

Mehr

5 Grundlagen der Java-Syntax

5 Grundlagen der Java-Syntax 5 Grundlagen der Java-Syntax Es sollen nun einige Grundregeln besprechen, die in jeder Java-Programmdatei berücksichtigt werden müssen. 5.1 Grundsätzliches zur Syntax von Java Programmen Zunächst sollten

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

FH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Blöcke. Beispiel: Variablen in Blöcken

FH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Blöcke. Beispiel: Variablen in Blöcken 4 Objektorientierte Programmierung in Java Prof. Dr. Ing. André Stuhlsatz Blöcke Blöcke erweitern einzelne Anweisungen, etwa bei Kontrollstrukturen später Beispiel: Einzelne Anweisung: anweisung; Erweiterung

Mehr

6. Iteration (Schleifenanweisungen)

6. Iteration (Schleifenanweisungen) 6. Iteration (Schleifenanweisungen) Java-Beispiel: TemperatureTable.java K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 9. Nov. 2015 2 Schwerpunkte While-Anweisung: "abweisende"

Mehr

Vom Problem zum Programm

Vom Problem zum Programm Aussagenlogik Vom Problem zum Programm Kontrollstrukturen der prozeduralen Programmierung Grundprinzipien: Sequenz Alternative Iteration Beschreibungsformen Ablaufpläne Struktogramme Pseudocode Programmentwicklung

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

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

Grundlagen der Informatik I (Studiengang Medieninformatik)

Grundlagen der Informatik I (Studiengang Medieninformatik) Grundlagen der Informatik I (Studiengang Medieninformatik) Thema: 3. Datentypen, Datenstrukturen und imperative Programme Prof. Dr. S. Kühn Fachbereich Informatik/Mathematik Email: skuehn@informatik.htw-dresden.de

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

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

Grundlagen der Programmierung Prof. H. Mössenböck. 4. Schleifen

Grundlagen der Programmierung Prof. H. Mössenböck. 4. Schleifen Grundlagen der Programmierung Prof. H. Mössenböck 4. Schleifen While-Schleife Führt eine Anweisungsfolge aus, solange eine bestimmte Bedingung gilt i 1 sum 0 i n sum sum + i i i + 1 i = 1; sum = 0; while

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

Ein erstes Java-Programm

Ein erstes Java-Programm Ein erstes Java-Programm public class Rechnung { public static void main (String [] arguments) { int x, y; x = 10; y = -1 + 23 * 33 + 3 * 7 * (5 + 6); System.out.print ("Das Resultat ist "); System.out.println

Mehr

Programmieren für Wirtschaftswissenschaftler SS 2015

Programmieren für Wirtschaftswissenschaftler SS 2015 DEPARTMENT WIRTSCHAFTSINFORMATIK FACHBEREICH WIRTSCHAFTSWISSENSCHAFT Programmieren für Wirtschaftswissenschaftler SS 2015 Lucian Ionescu Blockveranstaltung 16.03 27.3.2015 3. Verzweigungen und Schleifen

Mehr

1 Bedingungen und der Typ bool. Informatik I: Einführung in die Programmierung 5. Bedingungen, bedingte Ausführung und Schleifen. Vergleichsoperatoren

1 Bedingungen und der Typ bool. Informatik I: Einführung in die Programmierung 5. Bedingungen, bedingte Ausführung und Schleifen. Vergleichsoperatoren 1 und der Informatik I: Einführung in die Programmierung 5., bedingte Ausführung und Albert-Ludwigs-Universität Freiburg Bernhard Nebel 27. Oktober 2015 27. Oktober 2015 B. Nebel Info I 3 / 21 Der Vergleichsoperatoren

Mehr

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler

Inhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler Inhaltsverzeichnis Grundbegriffe der C-Programmierung 1. Grundsätzliches... 2 1.1 Darstellung von Werten... 2 1.1.1 Dezimale Zahlendarstellung... 2 1.1.2 Binäre Zahlendarstellung... 3 1.1.3 Hexadezimale

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

Die Programmiersprache C Eine Einführung

Die Programmiersprache C Eine Einführung Die Programmiersprache C Eine Einführung Christian Gentsch Fakutltät IV Technische Universität Berlin Projektlabor 2. Mai 2014 Inhaltsverzeichnis 1 Einführung Entstehungsgeschichte Verwendung 2 Objektorientiert

Mehr

Java Einführung Operatoren Kapitel 2 und 3

Java Einführung Operatoren Kapitel 2 und 3 Java Einführung Operatoren Kapitel 2 und 3 Inhalt dieser Einheit Operatoren (unär, binär, ternär) Rangfolge der Operatoren Zuweisungsoperatoren Vergleichsoperatoren Logische Operatoren 2 Operatoren Abhängig

Mehr

Programmieren I + II Regeln der Code-Formatierung

Programmieren I + II Regeln der Code-Formatierung Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme WS 2016/2017, SS 2017 Programmieren I + II Regeln der Code-Formatierung In diesem Dokument finden

Mehr

1. Der Einstieg in Java. Was heißt Programmieren?

1. Der Einstieg in Java. Was heißt Programmieren? 1. Der Einstieg in Java Lernziele: Am Ende dieses Kapitels sollen Sie wissen, aus welchen Bestandteilen ein Java-Programm besteht, Java-Programme übersetzen und ausführen können, Möglichkeiten der Kommentierung

Mehr

Java I Vorlesung Objektorientiertes Programmieren

Java I Vorlesung Objektorientiertes Programmieren Java I Vorlesung 3 Objektorientiertes Programmieren 10.5.2004 Die restlichen Kontrollstrukturen Grundlagen des OOP Klassen und Objekte switch Syntax: switch ( expr ) { case const 1 : case const 2 :...

Mehr

Ab J2SE 5.0 Unterstützung formatierter Bildschirmausgaben. Mit den Operatoren und Klammern können Boolesche Ausdrücke gebildet werden Beispiel:

Ab J2SE 5.0 Unterstützung formatierter Bildschirmausgaben. Mit den Operatoren und Klammern können Boolesche Ausdrücke gebildet werden Beispiel: Die Funktionen print() und println() Die Funktion System.out.printf() Format eines Funktionsaufrufs funktionsname(); Innerhalb der Klammern können Argumente angegeben werden Die Funktion kann ein Ergebnis

Mehr

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein (kmk@informatik.uni-kiel.

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

Mehr

Das erste C++ Programm

Das erste C++ Programm Das erste C++ Programm // Program: power8.c // Raise a number to the eighth power. #include int main() { // input std::cout > a; // computation int

Mehr

C.3 Funktionen und Prozeduren

C.3 Funktionen und Prozeduren C3 - Funktionen und Prozeduren Funktionsdeklarationen in Pascal auch in Pascal kann man selbstdefinierte Funktionen einführen: Funktionen und Prozeduren THEN sign:= 0 Funktion zur Bestimmung des Vorzeichens

Mehr

Schleifenanweisungen

Schleifenanweisungen Schleifenanweisungen Bisher: sequentielle Abarbeitung von Befehlen (von oben nach unten) Nun: Befehle mehrfach ausführen (= Programmschleife): for-anweisung - wenn feststeht, wie oft z.b.: eine Berechnung

Mehr

1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen

1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen 1. Grundzüge der Objektorientierung 2. Methoden, Unterprogramme und Parameter 3. Datenabstraktion 4. Konstruktoren 5. Vordefinierte Klassen II.2.2 Methoden, Unterprogramme und Parameter - 1 - 2. Methoden

Mehr

Programmierung. Grundlagen. Tina Wegener, Ralph Steyer. 2. Ausgabe, 1. Aktualisierung, April 2014

Programmierung. Grundlagen. Tina Wegener, Ralph Steyer. 2. Ausgabe, 1. Aktualisierung, April 2014 Programmierung Tina Wegener, Ralph Steyer 2. Ausgabe, 1. Aktualisierung, April 2014 Grundlagen PG 6 Programmierung - Grundlagen 6 Grundlegende Sprachelemente In diesem Kapitel erfahren Sie was Syntax und

Mehr

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

Steueranweisungen. Eike Schallehn Grundlagen der Informatik für Ingenieure Wintersemester 08/09 2 32 Steueranweisungen Bisher Programme mit Funktionen als einfache Folge von Befehlen Ablauf von Programmen darüber hinaus steuerbar über Bedingte Ausführung: Ausführung von Programmteilen (Befehlen oder Programmblöcken)

Mehr