Brückenkurs Programmieren

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

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

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

Java Einführung Operatoren Kapitel 2 und 3

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

2.5 Programmstrukturen Entscheidung / Alternative

Die Programmiersprache C Eine Einführung

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

Webbasierte Programmierung

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

Algorithmen und ihre Programmierung

Entwurf von Algorithmen - Kontrollstrukturen

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

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

Tutorium für Fortgeschrittene

Objektorientierte Programmierung

Programmieren in C/C++ und MATLAB

Primitive Datentypen

Hello World. Javakurs 2014, 1. Vorlesung. Sebastian Schuck. basierend auf der Vorlage von Arne Kappen. wiki.freitagsrunde.org. 3.

Erwin Grüner

PHP 5.4 ISBN Stephan Heller, Andreas Dittfurth 1. Ausgabe, September Grundlagen zur Erstellung dynamischer Webseiten GPHP54

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

Grundlagen der Programmierung

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

Übung zur Vorlesung Multimedia im Netz

Programmiertechnik Operatoren, Kommentare, Ein-/Ausgabe

2. Programmierung in C

Einführung in die Programmierung

Diana Lange. Generative Gestaltung Operatoren

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = Euro ergeben.

Fallunterscheidung: if-statement

Kontrollstrukturen MySQL Funktionen. MySQL 4, 5. Kapitel 20a: PHP Teil 2. Marcel Noe

DBSP. Prof. Dr. rer. nat. Nane Kratzke. Vorlesung. Praktische Informatik und betriebliche Informationssysteme

Kapitel 2: Programmfluss steuern

Grundlegende Programmierkonzepte: Abläufe mit Wiederholungen (Schleifen)

Python Programmierung. Dipl.-Ing.(FH) Volker Schepper

Grundlagen der Programmierung

PHP 5.6. Grundlagen zur Erstellung dynamischer Webseiten. Stephan Heller. 1. Ausgabe, März 2015 ISBN: GPHP56

Programmieren in C. Felder, Schleifen und Fließkommaarithmetik. Prof. Dr. Nikolaus Wulff

Es ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.

Syntax von LOOP-Programmen

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

Logische Verknüpfungen. while-schleifen. Zahlendarstellung auf dem Computer. Formatierung von Zahlen in MATLAB.

Datentypen. Agenda für heute, 4. März, Pascal ist eine streng typisierte Programmiersprache

Objektorientierte Programmierung OOP Programmieren mit Java

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

Gk Informatik Arbeitsblatt 1 Gr

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

Java Einführung ABLAUFSTEUERUNG Kapitel 3 und 4

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

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

Einführung in die C++ Programmierung für Ingenieure

Großübung zu Einführung in die Programmierung

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!

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

Datenbanksysteme SS 2007

Tutorium Rechnerorganisation

Objektorientierte Programmierung OOP Programmieren mit Java

Erste Schritte. Niels Lohmann Stefanie Behrens. Lutz Hellmig Karsten Wolf

Einführung Datentypen Verzweigung Schleifen Funktionen Dynamische Datenstrukturen. Java Crashkurs. Kim-Manuel Klein

Webbasierte Programmierung

Steuern des GSR-Interface mit QBasic

Arbeiten mit JavaKara

Programmieren mit der Windows PowerShell. von. Nils Gutsche. (aka Vellas)

4.Grundsätzliche Programmentwicklungsmethoden

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

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean

Python Programmieren. Variablen, Ausdrücke und Anweisungen

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

Kapitel 5: Abstrakte Algorithmen und Sprachkonzepte. Elementare Schritte

Flussdiagramm / Programmablaufplan (PAP)

1.8 Kontrollstrukturen 73. default : ziffer = 0; if (ziffer > 0) { cout << "Ziffer = " << ziffer; else { cout << "keine römische Ziffer!

Programmieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen

Modul 122 VBA Scribt.docx

Übersicht Programmablaufsteuerung

Access 2010 Programmierung Schleifen

1. LPC - Lehmanns Programmier Contest - Lehmanns Logo

Objektorientierte Programmierung

Sin-Funktion vgl. Cos-Funktion

Programmierung in C. Grundlagen. Stefan Kallerhoff

Einstieg in die Informatik mit Java

Grundlagen der C++ - Programmierung für das MiniBoard von qfix 1

Gliederung Programmiersprachen. Programmiersprachen Einführung in C. Kontrollstrukturen. Verzweigung mit IF. Beispiel: Zahlenklassifizieren

Java Kurs für Anfänger Einheit 2 Datentypen und Operationen

IT-Zertifikat: Allgemeine Informationstechnologien II PHP

2 Einfache Rechnungen

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

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Softwareentwicklung Allgemeines und prozedurale Konstrukte

Erster Kontakt mit Java und Pseudocode

Einführung in die Informatik für Hörer aller Fakultäten II. Andreas Podelski Stephan Diehl Uwe Waldmann

Steuerung von Programmabläufen. Vorlesung Computergestützte Mathematik zur Linearen Algebra. Lehrstuhl für Angewandte Mathematik Sommersemester 2009

VBA-Programmierung: Zusammenfassung

Programmierkurs Java

Transkript:

Brückenkurs Programmieren Verzweigungen, Operatoren, Schleifen, Arrays Christopher Schölzel Technische Hochschule Mittelhessen 01.10.2013 Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 1 / 39

Inhalt 1 Wiederholung 2 Verzweigungen If-Abfrage Ternärer Operator 3 Operatoren Logische Ausdrücke Logische Operatoren Arithmetische Operatoren 4 Schleifen While For 5 Arrays 6 Zusammenfassung Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 2 / 39

Inhalt Wiederholung 1 Wiederholung 2 Verzweigungen If-Abfrage Ternärer Operator 3 Operatoren Logische Ausdrücke Logische Operatoren Arithmetische Operatoren 4 Schleifen While For 5 Arrays 6 Zusammenfassung Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 3 / 39

Wiederholung Wiederholung Hardware vs Software Werkzeuge Variablen Compiler, Interpreter, IDE Variable ˆ= Schublade Denition: var x = 1; Schreibtischtest Algorithmus Algorithmus ˆ= Kochrezept Pseudocode If-Abfrage Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 4 / 39

Variablen Wiederholung Variablen verweisen auf eine bestimmte Stelle im (Arbeits-) Speicher. Sie funktionieren wie Behälter für bestimmte Gegenstände. Javascript var x = 1; var harrie = "Harrie"; var switch = true; var PI = 3.1415; Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 5 / 39

Zuweisungen Wiederholung Javascript var x = 1; x = x + 1; Eine Zuweisung ist ein Befehl der das Gleichzeichen verwendet. Er weist einer Speicherstelle auf der linken Seite einen Wert zu, der auf der rechten Seite steht. Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 6 / 39

Wiederholung Zuweisungen: L-Werte, R-Werte Variablen haben unterschiedliche Bedeutung in einer Zuweisung, je nach dem ob sie links (L-Wert) oder rechts vom Gleichzeichen (R-Wert) stehen. L-Wert: Verweis auf Speicherstelle x var x = 1; x = x + 41; R-Wert: Inhalt von Speicher an Stelle x Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 7 / 39

Anweisungen Wiederholung Eine Anweisung (engl. statement) stellt einen Befehl an den Computer dar. Anweisungen werden durch Semikolon voneinander getrennt. Javascript var x = 1; x = x + 1; var y = 10; y = x + y; x = -10; 3+x; //wird ausgerechnet, hat aber keinen Effekt Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 8 / 39

Inhalt Verzweigungen 1 Wiederholung 2 Verzweigungen If-Abfrage Ternärer Operator 3 Operatoren Logische Ausdrücke Logische Operatoren Arithmetische Operatoren 4 Schleifen While For 5 Arrays 6 Zusammenfassung Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 9 / 39

Verzweigungen: If Verzweigungen If-Abfrage Javascript if (ziel == "Frankfurt") { abbiegen = true; } Was ist eine If-Abfrage? If-Abfrage ˆ= Weiche Bedingte Ausführung von Befehlen Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 10 / 39

If-Abfrage: Syntax Verzweigungen If-Abfrage Syntax if (<Bedingung>) { <Anweisungsblock> } else { <Anweisungsblock> } Javascript if (x == 0) { println("kernschmelze eingeleitet, das hast du jetzt davon!"); } else { println("4 geteilt durch "+x+" ist "+(4/x)); } Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 11 / 39

Verzweigungen If-Abfrage If-Abfrage mit mehr als 2 Fällen Syntax if (<Bedingung>) { <Anweisungsblock> } else if (<Bedingung>) { <Anweisungsblock> }... } else (<Bedingung>) { <Anweisungsblock> } Javascript if (pqrad == 0) { println("eine Lösung"); } else if (pqrad > 0) { println("zwei Lösungen"); } else { //pqrad ist negativ println("keine Lösung"); } Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 12 / 39

Ternärer Operator Verzweigungen Ternärer Operator Aufgabe: Bestimme den Betrag der Variable x. Javascript if (x < 0) { betrag = -x; } else { betrag = x; } Fünf Zeilen und so viele Klammern... das geht doch auch einfacher! Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 13 / 39

Verzweigungen Ternärer Operator: Syntax Ternärer Operator Gewünschte Aussage "Die Variable betrag hat den Wert -x falls x kleiner als 0 ist und ansonsten den Wert x." Syntax <Bedingung>? <Wert> : <Wert>; Javascript betrag = x < 0? -x : x; Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 14 / 39

Inhalt Operatoren 1 Wiederholung 2 Verzweigungen If-Abfrage Ternärer Operator 3 Operatoren Logische Ausdrücke Logische Operatoren Arithmetische Operatoren 4 Schleifen While For 5 Arrays 6 Zusammenfassung Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 15 / 39

Operatoren Logische Ausdrücke Bedingungen / Logische Ausdrücke Was ist eigentlich alles eine Bedingung? Bedingungen sind logische Ausdrücke, das heiÿt Anweisungen die einen Wahrheitswert liefern (true oder false). Beispiele: true 3 < 4 4 <= 4 1 == 1 2+1!= 4 Beispiele: false 3 > 4 5 <= 4 1 == 2 2+1!= 4-1 Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 16 / 39

Operatoren Logische Ausdrücke Logische Ausdrücke: Stolperfallen Vorsicht! Computer macht Rundungsfehler Vergleich von Flieÿkommazahlen ist nie exakt Javascript var a = 0.0000000001; var b = a+a+a+a+a+a+a+a+a+a; var c = 10*a; println(b == c); //Ausgabe: false println(math.abs(b-c) < 0.00000000000000001); //Ausgabe: true Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 17 / 39

Logische Operatoren Operatoren Logische Operatoren Ein Operator ist ein durch ein Symbol dargestelltes Werkzeug um grundlegende Rechenanweisungen auszuführen. Logische Operatoren errechnen einen Wahrheitswert aus anderen Werten (und bilden damit logische Ausdrücke). Name Syntax Beispiel Bemerkungen gleich <Zahl> == <Zahl> 1 == 1 Achtung Flieÿkomma! gleich <String> == <String> 'Ja' == 'Ja' nicht in allen Sprachen! ungleich <Zahl>!= <Zahl> 1!= 1 Achtung Flieÿkomma! ungleich <String>!= <String> 'Ja'!= 'Ja' nicht in allen Sprachen! gröÿer <Zahl> > <Zahl> 1 > 0.5 gröÿer-gleich <Zahl> >= <Zahl> 4 >= 1 kleiner <Zahl> < <Zahl> 1 < 0.5 kleiner-gleich <Zahl> <= <Zahl> 4 <= 5 Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 18 / 39

Operatoren Logische Operatoren Logische Operatoren: Verknüpfungen Logischer Ausdruck Der Wert von x liegt zwischen 0 und 10. Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 19 / 39

Operatoren Logische Operatoren Logische Operatoren: Verknüpfungen Logischer Ausdruck Der Wert von x ist gröÿer als 0 und kleiner als 10. Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 19 / 39

Operatoren Logische Operatoren Logische Operatoren: Verknüpfungen Logischer Ausdruck Der Wert von x ist gröÿer als 0 und kleiner als 10. Um kompliziertere Bedingungen auszudrücken gibt es auch Operatoren, die logische Ausdrücke negieren oder miteinander verknüpfen können: Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 19 / 39

Operatoren Logische Operatoren Logische Operatoren: Verknüpfungen Logischer Ausdruck Der Wert von x ist gröÿer als 0 und kleiner als 10. Um kompliziertere Bedingungen auszudrücken gibt es auch Operatoren, die logische Ausdrücke negieren oder miteinander verknüpfen können: Name Syntax Beispiel Bemerkungen und <Ausdruck> && <Ausdruck> x > 0 && x < 10 oder <Ausdruck> <Ausdruck> x < 0 x > 10 nicht!<ausdruck>!(x < 10) Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 19 / 39

Operatoren Arithmetische Operatoren Arithmetische Operatoren Arithmetische Operatoren ermitteln das Ergebnis einer Rechnung (i.d.r ein Zahlenwert). Name Syntax Beispiel Bemerkungen Negation -<Zahl> -10 Addition <Zahl> + <Zahl> x + 10 Konkatenation <Str.> + <Str.> 'J'+'a' Subtraktion <Zahl> - <Zahl> 4-5.3 Multiplikation <Zahl> * <Zahl> 10 * 4 Division <Zahl> / <Zahl> 10 / 3 Ganzzahl- vs Flieÿkommadivision Modulo <Zahl> % <Zahl> x % 3 Rest der Ganzzahldivision (7 % 3 = 1) Inkrement <Variable>++ x++ erhöht Inhalt und gibt ihn zurück Dekrement <Variable>-- y-- senkt Inhalt und gibt ihn zurück Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 20 / 39

Inhalt Schleifen 1 Wiederholung 2 Verzweigungen If-Abfrage Ternärer Operator 3 Operatoren Logische Ausdrücke Logische Operatoren Arithmetische Operatoren 4 Schleifen While For 5 Arrays 6 Zusammenfassung Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 21 / 39

Schleifen Schleifen While Aufgabe Bilde die Summe aller ganzen Zahlen von 1 bis 100. Bisher: Eine Programmzeile pro Rechenoperation. Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 22 / 39

Schleifen Schleifen While Aufgabe Bilde die Summe aller ganzen Zahlen von 1 bis 100. Bisher: Eine Programmzeile pro Rechenoperation. var zahl = 1; var sum = 1; sum = sum + zahl zahl; = zahl + 1; sum = sum zahl + zahl; = zahl + 1; zahl sum = zahl sum + 1; zahl; zahl = zahl sum + = 1; sum + zahl; zahl = zahl + sum 1; = sum + zahl; = zahl + sum 1; = sum + zahl; zahl = zahl + sum 1; = sum + zahl; zahl = zahl zahl = zahl + sum + 1; 1; = sum + zahl; zahl = zahl + sum = sum zahl + zahl; = zahl + 1; zahl 1; = zahl + 1; sum = sum + zahl = zahl + sum 1; = sum + zahl; sum zahl; = sum + zahl; zahl = zahl + sum 1; = sum + zahl; zahl = zahl sum + = 1; sum + zahl; sum zahl = sum zahl + zahl; 1; sum = sum zahl + = zahl; zahl + sum 1; = sum + zahl; zahl = zahl zahl + 1; = zahl + 1; sum = sum zahl + = zahl; zahl + 1; sum = sum sum = sum sum + zahl; = sum + zahl; zahl + zahl; = zahl + 1; zahl = zahl + sum 1; = sum + zahl; zahl = zahl + sum 1; = sum + zahl; sum = sum zahl + = zahl; + 1; zahl sum = = zahl sum + + 1; zahl; = zahl + 1; zahl = zahl sum + 1; = sum + zahl; zahl = zahl zahl + 1; = zahl + sum 1; = sum + zahl; sum = sum sum + zahl; = sum + zahl; zahl = zahl zahl + 1; = zahl + 1; sum = sum sum + zahl; = sum = zahl + zahl; + 1; zahl = zahl zahl + 1; = zahl + 1; sum = sum sum + = zahl; sum + zahl; sum = sum + zahl zahl; = zahl + 1; println(sum); Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 22 / 39

Schleifen: While Schleifen While Eine Schleife (engl. Loop) erlaubt die wiederholte Ausführung eines Anweisungsblocks bis eine Abbruchbedingung erfüllt ist. Syntax while (<Bedingung>) { <Anweisungsblock> } Javascript var summe = 0; var zahl = 1; while (zahl <= 100) { summe = summe + zahl; zahl++; } Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 23 / 39

Schleifen While While: Anschauliches Beispiel ;) Beispiel aus dem (studentischen) Leben: Solange du dich noch nicht am Boden festhalten musst, trinke ein weiteres Bier. Javascript var gleichgewichtok = true; var alkoholpegel = 0; while (gleichgewichtok) { alkoholpegel = alkoholpegel + 1; if (alkoholpegel > 10) { gleichgewichtok = false; } } Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 24 / 39

While: Endlosschleife Schleifen While Frage: Was passiert, wenn die Abbruchbedingung nie erfüllt wird? Javascript var gleichgewichtok = true; var alkoholpegel = 0; while (gleichgewichtok) { alkoholpegel = alkoholpegel + 1; } Javascript var summe = 0; var zahl = 1; while (zahl <= 100) { summe = summe + zahl; } Antwort: Der Computer hört nie auf zu rechnen! Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 25 / 39

Schleifen: For Schleifen For Oft möchte man in einer Schleife einen Zähler verwenden und man weiÿ von Anfang an schon wie oft die Anweisungen in der Schleife ausgeführt werden sollen. Bauen wir doch einen Zähler direkt in das Schleifenkonstrukt ein! Syntax for (<Initialisierung>; <Bedingung>; <Schrittanweisung>) { <Anweisungsblock> } Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 26 / 39

For: Beispiel Schleifen For Javascript var summe = 0; for (var zahl=1; zahl <= 100; zahl++) { summe += zahl; } Weiterer Vorteil: Schleifenkopf zeigt Anzahl der Durchläufe Endlosschleife sofort erkennbar Aber: Zählvariable könnte in Schleife verändert werden Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 27 / 39

Schleifenkontrolle Schleifen For Was passiert, wenn in der Schleife ein Fehler passiert, oder man manche Werte überspringen möchte? Befehle zur Schleifenkontrolle: continue; springt sofort zur nächsten Schleifenausführung break; beendet die Schleife sofort Javascript var summe = 0; for (var zahl=1; zahl <= 100; zahl++) { if (zahl % 2 == 0) {continue;} //überspringe gerade Zahlen if (summe > 100) {break;} summe += zahl; } Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 28 / 39

Inhalt Arrays 1 Wiederholung 2 Verzweigungen If-Abfrage Ternärer Operator 3 Operatoren Logische Ausdrücke Logische Operatoren Arithmetische Operatoren 4 Schleifen While For 5 Arrays 6 Zusammenfassung Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 29 / 39

Arrays Arrays Was macht man, wenn ein Programm viele Werte speichern muss? viele Werte speichern viele Variablen denieren genauso unpraktikabel wie Schleifen auszuschreiben Anzahl benötigter Variablen evtl. zu Beginn unbekannt Variable von variabler Gröÿe benötigt Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 30 / 39

Arrays Arrays: Denition, Zuweisung, Zugri Ein Array ist eine Variable, die mehrere Werte gleichzeitig enthalten kann. Javascript: Denition var a = []; var b = [1,2,4]; Javascript: Zuweisung a[0] = 1; a[1] = "zwei"; a[1+1] = 3.4; Javascript: Zugri var x = a[0]; println(a[x+1]); Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 31 / 39

Array als Schrank Arrays Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 32 / 39

Arrays Arrays: Methoden und Eigenschaften Weitere Methoden und Eigenschaften von Arrays var i = a.indexof(1); speichert die (erste) Stelle von a an der der Wert 1 steht in i (-1 falls der Wert nicht im Array vorkommt) var l = a.length; speichert die aktuelle Länge von a in l a.push(5); hängt den Wert 5 hinten an das Array an var last = a.pop(); entfernt den hintersten Wert von a und speichert ihn in last Hinweis In vielen Sprachen (z.b. Java, C++) haben Arrays strengere Regeln. Zum Beispiel ist dort die Gröÿe eines Arrays nach der Erstellung unveränderlich. Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 33 / 39

Arrays Arrays: Strings Wir haben schon eine Art von Arrays kennengelernt: Ein String entspricht einem Array von einzelnen Zeichen, das nicht verändert werden kann. Javascript var s = "Deine Butter ist ranzig"; var ls = s.length; var i = s.indexof("b"); var i2 = s.indexof("ranzig"); s[5] = "M"; //hat keinen Effekt s.pop(); //Fehler! s.push("!"); //Fehler! Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 34 / 39

Arrays Arrays: Beispielaufgabe Aufgabe Deniere ein Array mit den Werten 1,2,3,4,5 und gebe jeden Wert des Arrays in einer eigenen Zeile aus. Benutze dazu eine for-schleife. Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 35 / 39

Arrays Arrays: Beispielaufgabe Aufgabe Deniere ein Array mit den Werten 1,2,3,4,5 und gebe jeden Wert des Arrays in einer eigenen Zeile aus. Benutze dazu eine for-schleife. Javascript a = [1,2,3,4,5]; for (var i = 0; i < a.length; i++) { println(a[i]); } Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 35 / 39

Arrays Iteration über Arrays: For-in Es kommt häug vor, dass man irgendeine Anweisung für alle Elemente in einem Array durchführen will. Die for-in-schleife vereinfacht das schreiben solcher Programme. Syntax for (<Variable> in <Array>) { <Anweisungsblock> } Javascript var a = [1,2,3,4,5]; for (var i in a) { println(a[i]); } Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 36 / 39

Inhalt Zusammenfassung 1 Wiederholung 2 Verzweigungen If-Abfrage Ternärer Operator 3 Operatoren Logische Ausdrücke Logische Operatoren Arithmetische Operatoren 4 Schleifen While For 5 Arrays 6 Zusammenfassung Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 37 / 39

Zusammenfassung Zusammenfassung Verzweigungen If ˆ= Weiche Ternärer Operator Operatoren Logische Operatoren Arithmetische Operatoren Schleifen Arrays While For, For-in Schleifenkontrolle, Endlosschleife speichert mehrere Werte gleichzeitig Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 38 / 39

Danke für Ihre Aufmerksamkeit... noch Fragen? Christopher Schölzel (THM) Brückenkurs Programmieren 01.10.2013 39 / 39