Greenfoot: Verzweigungen

Größe: px
Ab Seite anzeigen:

Download "Greenfoot: Verzweigungen"

Transkript

1 Greenfoot: Verzweigungen Nicolas Ruh und Dieter Koch Betrachten wir die act()-methode des Wombats aus dem Wombats-Szenario: Wie interpretieren Sie diesen Code? (einfach übersetzen) Falls der Wombat ein Blatt gefunden hat, so isst er es, ansonsten: falls er sich bewegen kann, so bewegt er sich, sonst dreht er sich nach links. 1. Bedingungen: if- else Mit Hilfe der Kontrollstruktur if() { else { können wir also zunächst überprüfen, ob etwas zutrifft (z.b. ob ein Blatt gefunden wurde) und je nach Ergebnis den ein oder anderen Code-Block (alles, was zwischen den geschweiften Klammern steht) ausführen lassen. Eigentlich ist das ein ziemlich grosser Schritt: wenn bspw. die > Act -Schaltfläche gedrückt wird, muss jetzt nicht mehr immer genau dasselbe passieren. Was passiert, d.h. welche Anweisungen ausgeführt werden, können wir jetzt z.b. vom momentanen Wert einer Variablen abhängig machen. Fügen wir nun in unserem Beispiel (Szenario ausgabe_in_konsole ) eine solche Verzweigung ein: Klicken Sie nun mehrfach auf die > Act -Schaltfläche. Können Sie sich die Ausgabe erklären?

2 Und was wird hier ausgegeben werden? Vergleiche kann man durchführen mit (Achtung, doppeltes Gleichheitszeichen) == (ist gleich),!= (ist ungleich), < (ist kleiner als), <= (ist kleiner oder gleich), > (ist grösser als) und mit >= (ist grösser oder gleich). Das funktioniert übrigens nicht nur mit Zahlen, sondern auch mit Strings. Solche Vergleiche kann man sich vorstellen wie eine einfache Ja/Nein-Frage, z.b.: meinezahl == 5; //ist meinezahl gleich 5? Der Computer beantwortet soche Vergleiche mit true (wahr, ja, stimmt) oder false (falsch, nein, stimmt nicht). Genau genommen ist diese Antwort ein Wert eines bestimmten Variablentyps, nämlich boolean (Wahrheitswert). Das zu wissen ist praktisch, weil man damit die Antwort wieder in eine Variable speichern kann, wenn man möchte: boolean antwort = meinezahl == 5; Nachdem diese Zeile abgearbeitet wurde, enthält die Variable antwort also einen der beiden Werte true oder false - je nachdem, welches Ergebnis der Vergleich erbracht hat. 2. Bedingungen verknüpfen: UND und ODER Müssen gleichzeitig mehrere Bedingungen erfüllt sein, also z.b. Bedingung1 UND Bedingung2, so verknüpft man diese mit dem &&-Operator. Beispiel: int meinezahl = 1; public void act() { if(meinezahl > 4 && meinezahl < 20) { else { meinezahl = meinezahl * 2; meinezahl = meinezahl + 1; System.out.println(meineZahl);

3 Soll von zwei Bedingungen mindestens eine erfüllt sein, also Bedingung1 ODER Bedingung2, so verknüpft man diese mit dem -Operator (zwei senkrechte Striche, Tastatur: AltGr + 7). Beispiel: int meinezahl = 1; public void act() { if(meinezahl < 4 meinezahl > 20) { else { meinezahl = meinezahl + 2; meinezahl = meinezahl + 7; System.out.println(meineZahl); Hinweis: Das ODER ergibt auch dann true, wenn beide Bedingungen erfüllt sind - es ist also ein einfaches ODER, nicht ein entweder-oder. 3. Aufgaben zu Verzweigungen 1) Ändern Sie den Code so ab, dass folgende Zahlenreihen ausgegeben werden: a) 1, 2, 3, 4, 6, 8, 10, 12, b) 20, 15, 10, 8, 6, 4, 2, 0, 0, 0, 0, c) 1, 2, 3, 4, 8, 12, 16, 17, 18, 19, 20, 2) Ausgehend von einer Startzahl soll abwechselnd verdoppelt und 1 addiert werden. Fügen Sie eine weitere Variable ein, mit Hilfe derer Sie jeweils wissen, ob Sie verdoppeln oder addieren müssen. (Tipp: Im Code zuerst die Zahl ausgeben und dann bereits für die nächste Ausgabe abändern.) Folgende Ausgaben sollten dann erreicht werden können: Startzahl 3: 3, 6, 7, 14, 15, 30, 31, Startzahl 5: 5, 10, 11, 22, 23, 46, 47, 3) Rauf- und runterzählen. (Tipp: Nutzen Sie eine zweite Variable.) a) 1, 2, 3, 4, 5, 4, 3, 2, 1, 2, 3, 4, 5, 4, 3, b) 1, 2, 3, 4, 5, 6, 7, 8, 9, 7, 5, 3, 1, 2, 3, 4, 5, 6, 7, 8, 9, 7, 5, 3, 1, 2, 3, 4, 5, 6, 7, 8, 9, 7, 5, 3, 1, 2, 3, c) schwieriger: 1, 2, 3, 4, 5, 6, 7, 8, 4, 2, 1, 2, 3, 4, 5, 6, 7, 8, 4, 2, 1, 2, 4) Collatz-Problem (auch (3n + 1)-Vermutung genannt). Beginnen Sie mit einer positiven, ganzen Zahl (z.b. 26). Geben Sie diese Zahl aus. Fahren Sie dann wie folgt fort: - Ist die Zahl gerade, so wird sie halbiert. - Ist die Zahl ungerade, so wird sie verdreifacht und noch 1 hinzuaddiert. Welche Zahlenfolge kommt heraus? Hinweis: Verwenden Sie eine integer-variable. Sie können mit dem Modulo-Operator % den Rest einer Ganzzahl-Division ermitteln: rest = dividend % divisor. Beispiele: 9%4 liefert dann den Wert 1, 14%3 den Wert 2 und 21%7 den Wert 0. Eine int-variable zahl hat also genau dann einen geraden Wert, wenn zahl%2 den Wert 0 ergibt.

4 4. Verzweigungen im wombats- Szenario Öffnen Sie Ihr wombats-szenario von vorletzter Woche (oder erstellen Sie eine neue Kopie des originalen Wombat-Szenarios). Ändern Sie die act()-methode nach folgendem Vorbild ab: Erklärung: Falls der Wombat sich geradeaus bewegen kann, so wird er dies in 3 von 4 Fällen tun (falls die Zufallszahl 0, 1 oder 2, aber nicht 3 ergibt). Ansonsten erhält er eine neue, zufällige Richtung. Wie Sie sehen wird im obigen Code der Befehl Greenfoot.getRandomNumber(4) verwendet. Das ist ein Aufruf einer Methode das erkennt man an den Klammern nach dem Namen. Diese Methode gehört zur Klasse Greenfoot das erkennt man daran, dass vor dem Methodennamen Greenfoot steht, abgetrennt durch einen Punkt. Falls Sie sich wundern, wie diese Methode funktioniert, oder woher man wissen sollte, dass es sie gibt, dann schauen Sie sich doch mal die Dokumentation der Klasse Greenfoot an (z.b. Help à Greenfoot Class Documentation) Setzen Sie eine grössere Anzahl Blätter in die Welt, fügen Sie einen Wombat hinzu und und lassen Sie ihn herumrennen Wir möchten nun, dass der Wombat jeweils 3 Schritte in die gleiche Richtung zu machen versucht. Um diese Schritte zählen zu können, brauchen wir eine Variable. Ergänzen Sie daher die Instanzvariablen des Wombats um eine weitere Variable: int anzschritteingleicherichtung=0; Ändern Sie danach die act()-methode nach folgendem Vorbild ab: Auch hier wieder: Eine grössere Anzahl Blätter sowie einen Wombat in die Welt setzen und laufen lassen.

5 5. Aufgaben zum Wombats- Szenario und Verzweigungen 5) Lassen Sie den Wombat ein Quadrat mit Seitenlänge 4 laufen (z.b. 4 Schritte nach rechts, 4 Schritte nach oben, etc). Hinweis: Starten Sie mit dem letzten Beispiel und verzichten Sie auf Blätter. Sie müssen dann gar nicht so viel abändern. 6) Lassen Sie den Wombat ein Rechteck mit den Seitenlängen 4 und 2 laufen. Hinweise: Sie werden eine weitere Variable brauchen, anhand derer man herausfinden kann, welche Seitenlänge jetzt dran ist. 7) Lassen Sie den Wombat die eingezeichneten Spirale laufen. Bevor Sie programmieren: Beschreiben Sie den Weg mit Worten. 8) Setzen Sie den Wombat zu Beginn in die obere linke Ecke. Von dieser Ecke aus soll er dann in einer kleiner werdenden Spirale (umgekehrt wie oben rechts) alle Felder besuchen probieren Sie das aus, er sollte jetzt alle Blätter in der Welt finden und aufessen. 9) (Erweiterung zu 8) Lassen sie dem Wombat zunächst von seinem beliebigen Startpunkt aus in die obere linke Ecke der Welt laufen. Den Anfangszustand (ein Wombat, zehn Blätter, alles zufällig positioniert) können Sie über einen Aufruf der entsprechend angepassten populate()-methode der Welt automatisieren. 10) (Erweiterung zu 8) Wenn der Wombat in der Mitte angekommen ist, soll er sein Aussehen ändern (z.b. in einen nach links schauenden Wombat) und die Spirale wieder nach aussen ablaufen. 11) Beginnen Sie wieder oben links und programmieren Sie den Wombat so, dass er Zeile für Zeile jedes Feld besucht (wie Rasen mähen). 12) (Für Profis) Programmieren Sie den Wombat so, dass er auch in einer Welt mit Steinen, über die er nicht laufen kann, alle (erreichbaren) Blätter findet und aufisst kann. Hinweis hier gibt es verschiedene zwei verschiedene Herangehensweisen: entweder mit Zufall oder mit Systematik. Letzteres ist schwieriger, kann aber effizienter sein. 13) (Für Profis) Sorgen Sie dafür, dass der Wombat immer zu dem Feld läuft (Erweiterung: auch um Steine herum), auf das der Benutzer zuletzt geklickt hat.

Greenfoot: Verzweigungen Nicolas Ruh und Dieter Koch

Greenfoot: Verzweigungen Nicolas Ruh und Dieter Koch Greenfoot: Verzweigungen Nicolas Ruh und Dieter Koch Betrachten wir die act()-methode des Wombats aus dem Wombats-Szenario: Wie interpretieren Sie diesen Code? (einfach übersetzen) Falls der Wombat ein

Mehr

Greenfoot: Schleifen. 1. Die for- Schleife

Greenfoot: Schleifen. 1. Die for- Schleife Greenfoot: Schleifen Kommen wir noch einmal zurück zum etwas langweiligen, aber schön einfachen ausgabe_in_konsole- Szenario (öffnen Sie es, speichern Sie ggf. eine Kopie des momentanen Zustands, dann

Mehr

Greenfoot: Variablen. Nicolas Ruh und Dieter Koch

Greenfoot: Variablen. Nicolas Ruh und Dieter Koch Greenfoot: Variablen Nicolas Ruh und Dieter Koch Sicher haben Sie schon mal ein Computerspiel gespielt. Bei den meisten Spielen wird irgendwo der Spielstand angezeigt, z.b. in Form von Punkten oder von

Mehr

Programmieren lernen mit Visual Basic

Programmieren lernen mit Visual Basic Programmieren lernen mit Visual Basic Teil 5: Fallunterscheidungen (Teil 1) Ein paar Operatoren fehlen noch. Zum einen logische Operatoren, die mit Wahrheitswerden arbeiten. Die folgenden drei verwenden

Mehr

PROGRAMMIEREN. Kapitel 1 Erste Schritte

PROGRAMMIEREN. Kapitel 1 Erste Schritte PROGRAMMIEREN Kapitel 1 Erste Schritte Ziele von Heute 2 Greenfoot kennen lernen Kara Szenario verstehen Ausführen und schreiben von Programmen Greenfoot Oberfläche Welt Klassendiagramm 3 Greenfoot-Steuerung

Mehr

3. Das erste eigene Programm mit Greenfoot: Litte Crab

3. Das erste eigene Programm mit Greenfoot: Litte Crab Eigenes Programm: Little Crab1, Seite 1 von 5 3. Das erste eigene Programm mit Greenfoot: Litte Crab 3.1. Quelltext bearbeiten Nachdem Sie etwas Erfahrungen in der Bedienung von Greenfoot gewonnen haben,

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

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

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Aufgabe 1.60 a) Welchen Wert erhält die boolesche Variable z in folgendem Beispiel? int i = 2, j = 5; boolean

Mehr

Greenfoot: Variablen Nicolas Ruh und Dieter Koch

Greenfoot: Variablen Nicolas Ruh und Dieter Koch Greenfoot: Variablen Nicolas Ruh und Dieter Koch Sicher haben Sie schon mal ein Computerspiel gespielt. Bei den meisten Spielen wird irgendwo der Spielstand angezeigt, z.b. in Form von Punkten oder von

Mehr

Funktionen nur wenn dann

Funktionen nur wenn dann Funktionen nur wenn dann Funktionen können auch nur in bestimmten Fällen angewendet werden. Code wird nur in einem bestimmten Fall ausgeführt Code Ja Code Block wahr if wahr? Nein else Code Block Alternative

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

Übungsblatt 1. Java Vorkurs (WS 2017)

Übungsblatt 1. Java Vorkurs (WS 2017) Übungsblatt 1 Java Vorkurs (WS 2017) Aufgabe 1 Hallo-Welt Erstelle ein neues Projekt mit dem Namen HelloJava. Erzeuge in diesem Projekt eine neue Klasse HelloJava. (a) Schreibe die main-methode in die

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

Tag 2 Repetitorium Informatik (Java)

Tag 2 Repetitorium Informatik (Java) Tag 2 Repetitorium Informatik (Java) Dozent: Daniela Novac Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Zeichen und

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

Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 2. Blatt Für die Woche vom 3.5. bis zum 7.5.

Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 2. Blatt Für die Woche vom 3.5. bis zum 7.5. Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 2. Blatt Für die Woche vom 3.5. bis zum 7.5.2010 (KW 18) Organisatorisches Im Web unter http://www.uni-ulm.de/in/programmierstarthilfe.html

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

Schleifen: Immer wieder dasselbe tun

Schleifen: Immer wieder dasselbe tun Schleifen: Immer wieder dasselbe tun Bei einer Schleife werden Anweisungen immer wieder ausgeführt, solange die Bedingung wahr ist. Dafür muss man eine Variable immer wieder ändern, solange bis eine Überprüfung

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

Objektorientiertes Programmieren (Java)

Objektorientiertes Programmieren (Java) Grundlagen Objektorientiertes Programmieren (Java) Java folgt gewissen Rechtschreibregeln die Syntax. Diese besagt, dass hinter jeden Befehl ein Semikolon( ; ) stehen muss, damit der Computer weiß, dass

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

1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH

1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH 1 Aufgaben 1.1 Umgebungsvariable setzen: CLASSPATH Die Umgebungsvariable CLASSPATH kann im Hamster-Simulator sowohl für Compiler als auch für die Ausführung des Hamster-Programms gesetzt werden: Hierdurch

Mehr

Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1

Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1 Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1 Kapitel 1: Die ersten Schritte mit Greenfoot 1 Starten Sie Greenfoot. (Wenn Sie Greenfoot das erste Mal öffnen, erscheint ein Dialogfenster,

Mehr

Programmieren mit Jython Teil 4: Selektion und Zufallszahlen

Programmieren mit Jython Teil 4: Selektion und Zufallszahlen Programmieren mit Jython Teil 4: Selektion und Zufallszahlen Lernziele Verwendung der if Anweisung: gewisse Zeilen werden nur dann ausgeführt, wenn eine Bedingung erfüllt (oder nicht erfüllt) ist. Erzeugung

Mehr

Kapitel 1: Die ersten Schritte 1

Kapitel 1: Die ersten Schritte 1 Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1 Kapitel 1: Die ersten Schritte 1 Starten Sie Eclipse. Importieren Sie das Eclipse-Projekt scenarios-chapter-1. Gehen Sie in den Unterordner

Mehr

AG Programmieren. Alexander Casall

AG Programmieren. Alexander Casall AG Programmieren Alexander Casall AG Programmieren Wiederholung Wiederholung Was ist ein boolean Wie vergleicht man Variable Wie kann ich booleans verknüpfen Nenne mir ein paar Datentypen und erkläre mir

Mehr

Greenfoot: Schleifen. 1. Die for-schleife

Greenfoot: Schleifen. 1. Die for-schleife Greenfoot: Schleifen Kommen wir noch einmal zurück zum etwas langweiligen, aber schön einfachen ausgabe_in_konsole- Szenario (öffnen Sie es, speichern Sie ggf. eine Kopie des momentanen Zustands, dann

Mehr

Quick-Start Informatik Programmieren in Python Teil 1

Quick-Start Informatik Programmieren in Python Teil 1 Quick-Start Informatik 2011 Programmieren in Python Teil 1 Alles zum Praxisteil } Skript, Übungen, auf Folien... http://vorkurs.cs.uni-frankfurt.de Bücher: Gratis: http://learnpythonthehardway.org/ Fragen,

Mehr

import JavaKaraProgram; public class Quadrat extends JavaKaraProgram { // Anfang von Quadrat void turnaround() { kara.turnleft(); kara.

import JavaKaraProgram; public class Quadrat extends JavaKaraProgram { // Anfang von Quadrat void turnaround() { kara.turnleft(); kara. Informatik 11: Einführung in Java Kara legt Muster!(Lsg.) Gierhardt Aufgaben: 1. KARA soll ein mit Kleeblättern gefülltes Quadrat mit variabler Seitenlänge ablegen. Der Methodenaufruf quadratzeichnen(5)

Mehr

Programmsteuerung mit PHP - if/else, elseif,switch

Programmsteuerung mit PHP - if/else, elseif,switch Programmsteuerung mit PHP - if/else, elseif,switch Bei der Programmierung geht es meist vor allem darum festzulegen, welche Aktionen wie oft unter welchen Bedingungen ausgeführt werden sollen. Hierzu steht

Mehr

Funktionen nur wenn dann

Funktionen nur wenn dann Funktionen nur wenn dann Funktionen können auch nur in bestimmten Fällen angewendet werden. Code wird nur in einem bestimmten Fall ausgeführt Code Ja Code Block wahr if wahr? Nein else Code Block Alternative

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

41.8 LUA-Grundlagen - Tabelle, if und Albernheit

41.8 LUA-Grundlagen - Tabelle, if und Albernheit 41.8 LUA-Grundlagen - Tabelle, if und Albernheit Autor: Goetz Quelle: Mein EEP-Forum In diesem Kapitel möchte ich eine erste, einfache Anwung von Lua auf einer Anlage zeigen. Ich werde mich dabei auf den

Mehr

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

1 Aufgaben 1.1 Objektorientiert: (extended-hamster) Sammel-Hamster 1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster Aufgabe: Bearbeitungszeit: ca. 1/4 Std) Schreiben Sie ein "objektorientiertes" Programm ("CuB_05_1") für das Sammeln der Körner. Aufgabenbeschreibung:

Mehr

Aufgaben. Objektorientierte Programmierung

Aufgaben. Objektorientierte Programmierung Aufgaben Objektorientierte Programmierung 1. Baue in die Klasse Hase eine Methode dreherechts() ein, damit sich der Hase auch im Uhrzeigersinn drehen kann 2. Notiere alle Befehle (Stift und Blatt Papier

Mehr

Arbeitsblatt zu Methoden

Arbeitsblatt zu Methoden Arbeitsblatt zu Methoden In den vorhergehenden Programmen haben wir bereits jede Menge Methoden benutzt: 1. kara.move(), kara.turnright(), kara.putleaf() Dies sind alles Methoden, die etwas ausführen,

Mehr

3. Bedingte Anweisungen

3. Bedingte Anweisungen 3. Bedingte Anweisungen Fallunterscheidungen der Form WENN...DANN... in der Informatik kennst du aus der 7. Klasse beim Programmieren mit Karol sowie aus der 9. Klasse beim Arbeiten mit Tabellen und Datenbanken.

Mehr

System.out.println("TEXT");

System.out.println(TEXT); Inhaltsübersicht - Erstes Beispiel - Datentypen - Ausdrücke und Operatoren - Schleifen / Bedinungen - Struktogramme - Grundgerüst eines Programms in JAVA - Einlesen von Daten Erstes Beispiel public class

Mehr

PROCESSING STRUKTUR UND INPUT. Created by Michael Kirsch & Beat Rossmy

PROCESSING STRUKTUR UND INPUT. Created by Michael Kirsch & Beat Rossmy PROCESSING STRUKTUR UND INPUT Created by Michael Kirsch & Beat Rossmy INHALT 1. Rückblick 1. Processing Basics 3. Anwendung 1. random 2. 1,2,3,... Integer! 2. else 3. Boolsche Operatoren 3. float 4. Bedingungen

Mehr

In dieser Aufgabe geht es darum, das einfache Meteor-Spiel zu verstehen und anzupassen. Lade als erstes das Spiel sample12 und spiele es.

In dieser Aufgabe geht es darum, das einfache Meteor-Spiel zu verstehen und anzupassen. Lade als erstes das Spiel sample12 und spiele es. In dieser Aufgabe geht es darum, das einfache Meteor-Spiel zu verstehen und anzupassen. Lade als erstes das Spiel sample12 und spiele es. Im Spiel fällt ein Meteor vom oben zum unteren Rand. Das Raumschiff

Mehr

- EINSTIEG IN JAVA - (1/5) Datum:

- EINSTIEG IN JAVA - (1/5) Datum: - EINSTIEG IN JAVA - (1/5) Datum: 2.2 Wir lernen die Programmiersprache Java und entwickeln ein Computerspiel Schritt #1: Constructor-Methoden: Wir setzen die beiden Spieler in die 'Welt' (das Spielfeld)

Mehr

06 While-Schleifen. While-Schleifen 1/7 Wiederholung: Schleifen

06 While-Schleifen. While-Schleifen 1/7 Wiederholung: Schleifen 06 While-Schleifen While-Schleifen 1/7 Wiederholung: Schleifen Eine Schleife ist eine Struktur, welche den Computer anweist, eine Liste von Befehlen mehrmals auszuführen. Falls Du ein Verfahren hast, das

Mehr

hue12 January 24, 2017

hue12 January 24, 2017 hue12 January 24, 2017 1 Abgabehinweise Beachten Sie unbedingt diese Hinweise, sonst erhalten Sie keine Punkte aus dieser Abgabe! Für Details siehe z.b. Folien der nullten Zentralübung 1.1 Namen und Matrikelnummern

Mehr

Python Intro. Vorsemesterkurs Informatik Praktischer Teil WS2012/13. 2.Oktober Vorkurs Informatik - WS 2012/13

Python Intro. Vorsemesterkurs Informatik Praktischer Teil WS2012/13. 2.Oktober Vorkurs Informatik - WS 2012/13 Python Intro Vorsemesterkurs Informatik Praktischer Teil WS2012/13 2.Oktober 2012 Let's get started } Skript, Übungen, Folien... Alles zum Praxisteil auf http://vorkurs.cs.unifrankfurt.de Bücher: Fragen!

Mehr

Grundlegende Programmierkonzepte: Variablen, Methoden-Parameter, Rückgabewerte

Grundlegende Programmierkonzepte: Variablen, Methoden-Parameter, Rückgabewerte Grundlegende Programmierkonzepte: Variablen, Methoden-Parameter, Rückgabewerte Erklärungen zu Methoden- Parametern Kara soll vor sich eine Spur von x Kleeblättern legen. Die Anzahl x sei variabel. Karas

Mehr

Methoden-Expertin. Aufgabe 1. Das Neue. Lösung in JavaKara. Puzzle: Expertin D

Methoden-Expertin. Aufgabe 1. Das Neue. Lösung in JavaKara. Puzzle: Expertin D Methoden-Expertin Aufgabe 1 Kara steht vor einem Baum, der alleine in der Welt steht. Hinter dem Baum hat es ein Kleeblatt, das Kara aufheben soll. Danach soll Kara wieder zum Ausgangsort zurückkehren.

Mehr

Space Shooter. Die Gesteinsbrocken sollen sich von selbst von rechts nach links bewegen.

Space Shooter. Die Gesteinsbrocken sollen sich von selbst von rechts nach links bewegen. Space Shooter 1. Grundlegende Funktionen Lade das Szenario SpaceShooter-0. In diesem Spiel soll zunächst nur Folgendes geschehen: Die Gesteinsbrocken sollen sich von selbst von rechts nach links bewegen.

Mehr

Programmierung für Mathematik (HS13)

Programmierung für Mathematik (HS13) software evolution & architecture lab Programmierung für Mathematik (HS13) Übung 11 1 Aufgabe: Codeverständnis 1.1 Aufgabenstellung Notieren Sie, was der folgende Code ausgeben würde, wenn er so in einer

Mehr

Anleitung Anleitung Anleitung Anleitung Anleitung Anleitung Anleitung Anleitung Anleitung

Anleitung Anleitung Anleitung Anleitung Anleitung Anleitung Anleitung Anleitung Anleitung for-schleife 1. Aufgabe: 1 Tippe die Zeilen in BlueJ ein. Was macht das Programm? public class C14ForSchleife { int i; for(i=0;i

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 05: Programmablauf Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Nutzereingaben EVA Prinzip Eingaben über die Konsole Eingaben über GUI

Mehr

Aufgaben. Objektorientierte Programmierung

Aufgaben. Objektorientierte Programmierung Aufgaben Objektorientierte Programmierung 1. Baue in die Klasse Wombat eine Methode turnright() ein, damit sich der Wombat auch im Uhrzeigersinn drehen kann 2. Notiere alle Befehle (Stift und Blatt Papier

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

Algorithmen und ihre Programmierung

Algorithmen und ihre Programmierung Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung Veronika Waue WS 07/08 Einführung Definition: Algorithmus Ein Algorithmus ist eine genau definierte Folge von Anweisungen zur Lösung eines

Mehr

Girls Day 2017 Programmierung

Girls Day 2017 Programmierung Girls Day 2017 Programmierung Anke Brocker Quality Management Würselen, 27. April 2017 www.lancom-systems.de Programmierung 27.04.2017 - Übersicht Programmieren mit der Arduino IDE Die Arduino IDE Der

Mehr

Übungsblatt 2. Java Vorkurs (WS 2017)

Übungsblatt 2. Java Vorkurs (WS 2017) Übungsblatt 2 Java Vorkurs (WS 2017) Aufgabe 1 Logische Operatoren Manchmal ist es wichtig zwei Werte miteinander zu vergleichen. Dazu gibt es in Java folgende Vergleichsoperatoren: Text Math. Zeichen

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

Python Intro I. Vorsemesterkurs Informatik Praktischer Teil WS 2013/14. 1.Oktober Vorkurs Informatik - WS 2013/14

Python Intro I. Vorsemesterkurs Informatik Praktischer Teil WS 2013/14. 1.Oktober Vorkurs Informatik - WS 2013/14 Python Intro I Vorsemesterkurs Informatik Praktischer Teil WS 2013/14 1.Oktober 2013 Let's get started } Skript, Übungen, Folien... Alles zum Praxisteil auf http://vorkurs.cs.unifrankfurt.de Bücher: Fragen!

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

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

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen. Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten

Mehr

Kapitel Was ist ein Header? Was ist ein Body? Header: public Account(String newowner, int newpin)

Kapitel Was ist ein Header? Was ist ein Body? Header: public Account(String newowner, int newpin) Kapitel 2.6 1. Was ist ein Header? Was ist ein Body? Header: public Account(String newowner, int newpin) Body: Alles im Block darunter: [...] 2. Geben Sie die Methodensignaturen der TicketMachine (Code

Mehr

Processing Info zu Variablen und Bedingungen

Processing Info zu Variablen und Bedingungen Processing Info zu Variablen und Bedingungen Dieses Dokument enthält - Variablen (Variablen, Datentypen, Deklaration, Geltungsbereich, Benennung) - Bedingungen (if, mousepressed, else) Variablen Eine Variable

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

Kapitel 2: Programmfluss steuern

Kapitel 2: Programmfluss steuern Kapitel 2: Programmfluss steuern Thema: Programmieren Seite: 1 Kapitel 2: Programmfluss steuern Das Flussdiagramm Um schwierige Aufgaben beim Programmieren zu lösen, ist es oft hilfreich, den Programmablauf

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

Wie entwerfe ich ein Programm?

Wie entwerfe ich ein Programm? Wie entwerfe ich ein Programm? Welche Objekte brauche ich? Flussdiagramme für Programmablauf Vorcode Testcode Hauptcode Wir spielen Lotto! Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel 5 +

Mehr

Städtisches Gymnasium Olpe Java Ht Informatik - Q1 Die Klasse List im Abitur Methoden und Beispielcode Hier alle wichtigen Methoden. Ein Beispielcode

Städtisches Gymnasium Olpe Java Ht Informatik - Q1 Die Klasse List im Abitur Methoden und Beispielcode Hier alle wichtigen Methoden. Ein Beispielcode Die Klasse List im Abitur Methoden und Beispielcode Hier alle wichtigen Methoden. Ein Beispielcode folgt im Anschluss. Beispielcode Es gibt eine Klasse Benutzerverwaltung, welche eine Liste mit Benutzern

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

Wie beweise ich etwas? 9. Juli 2012

Wie beweise ich etwas? 9. Juli 2012 Schülerzirkel Mathematik Fakultät für Mathematik. Universität Regensburg Wie beweise ich etwas? 9. Juli 2012 1 Was ist ein Beweis? 1.1 Ein Beispiel Nimm einen Stift und ein Blatt Papier und zeichne fünf

Mehr

Variablen und Datentypen

Variablen und Datentypen Programmieren mit Java Modul 1 Variablen und Datentypen Selbstständiger Teil Inhaltsverzeichnis 1 Bremsweg-Berechnung 3 1.1 Einführung.................................. 3 1.2 Aufgabenstellung und Programmanforderungen..............

Mehr

Datentypen und Operatoren

Datentypen und Operatoren Programmiervorkurs SS 2013 Datentypen und Operatoren Termin 2 Wiederholung: Einfache Datentypen Welche Datentypen kennt Ihr bereits? Einfache Datentypen Zeichen public class MyCharTest { char c1 = 'a';

Mehr

Brückenkurs Programmieren

Brückenkurs Programmieren 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

Mehr

Grundlagen von C# - 2

Grundlagen von C# - 2 Grundlagen von C# - 2 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Arrays 2. Kontrollstrukturen 3. Verzweigungen Bedingte Verzweigung (if else) 4. Schleifen Kopfgesteuerte Schleife (while) Fußgesteuerte

Mehr

Klausur Fachprüfung Wirtschaftsinformatik Dauer: 2 Stunden. Name:

Klausur Fachprüfung Wirtschaftsinformatik Dauer: 2 Stunden. Name: Klausur Fachprüfung Wirtschaftsinformatik Dauer: 2 Stunden Datum: 17.07.2003 Name: Punkte True-or-False: von 15 Punkte Multiple Choice: von 15 Punkte Quickies: von 30 Punkte Shorties: von 20 Punkte Longies:

Mehr

pue13 January 28, 2017

pue13 January 28, 2017 pue13 January 28, 2017 1 Aufgabe 1 (Klammern und Anweisungsblöcke) Wie Sie in der Vorlesung gelernt haben, werden Anweisungsblöcke in Java nicht durch Einrückung, sondern mithilfe von geschweiften Klammern

Mehr

Programmablaufplan. Vorkurs Informatik. Sommersemester Institut für Informatik Heinrich-Heine-Universität Düsseldorf

Programmablaufplan. Vorkurs Informatik. Sommersemester Institut für Informatik Heinrich-Heine-Universität Düsseldorf Programmablaufplan Vorkurs Informatik Institut für Informatik Heinrich-Heine-Universität Düsseldorf Sommersemester 2016 Gliederung Motivation - Was sind Programmablaufpläne? Programme sind vordefinierte

Mehr

Kompaktkurs Einführung in die Programmierung. 4. Kontrollstrukturen

Kompaktkurs Einführung in die Programmierung. 4. Kontrollstrukturen Kompaktkurs Einführung in die Programmierung 4. Kontrollstrukturen Stefan Zimmer 28.2.2008-1- Anweisungen: was bisher geschah Bisher kennen wir zwei Formen von Anweisungen Ein Ausdruck mit Semikolon ist

Mehr

Übungen zur Vorlesung Wissenschaftliches Rechnen I

Übungen zur Vorlesung Wissenschaftliches Rechnen I Übungen zur Vorlesung Wissenschaftliches Rechnen I Nicolas Gauger, René Lamour, Hella Rabus Wintersemester 2007/2008 Programmierung - Einführung Programmierung - Einführung Berechnung einer Formel y =

Mehr

Eingeben, Ausgeben, Übergeben, Zurückgeben

Eingeben, Ausgeben, Übergeben, Zurückgeben Eingeben, Ausgeben, Übergeben, Zurückgeben eingeben: Werte werden vom Nutzer oder Eingabegeräten (z. B. Maus) eingelesen ausgeben: Werte werden auf der Konsole, in einem Display oder einer Datei ausgegeben

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

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

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue Java - Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Anweisung int zahl; zahl = 2; zahl = zahl * 10; int zahl; ; Jede Anweisung endet mit einem

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

AUFGABE 1: REGULÄRE AUSDRÜCKE (5 PUNKTE)

AUFGABE 1: REGULÄRE AUSDRÜCKE (5 PUNKTE) AUFGABE 1: REGULÄRE AUSDRÜCKE (5 PUNKTE) a Das Zeichen a. Ein beliebiges Zeichen [abc] Ein beliebiges Zeichen aus der Menge {a, b, c [a-f] Ein beliebiges Zeichen aus der Menge {a, b, c, d, e, f \d eine

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

05 For-Schleifen. For-Schleifen 1/7 Was ist eine Schleife?

05 For-Schleifen. For-Schleifen 1/7 Was ist eine Schleife? 05 For-Schleifen For-Schleifen 1/7 Was ist eine Schleife? Programmieren kann harte Arbeit bedeuten. Und manchmal ist es noch zäher, das gleiche immer und immer wieder erledigen zu müssen. Nehmen wir an,

Mehr

Übersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!!

Übersicht PERL. !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! !!!! Wichtig: Nach dem Befehl einem Strichpunkt setzen!!!! Erste Zeile eines PERL-Scripts: #! /usr/bin/perl Variablen in PERL: Normale Variablen beginnen mit einem $-Zeichen Array-Variablen beginnen mit

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

Kontrollstrukturen und Logik

Kontrollstrukturen und Logik Programmieren mit Java Modul 2 Kontrollstrukturen und Logik Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 1.1 Anweisungen und Blöcke........................... 3 2 Operatoren (Teil II) 4 2.1 Relationale

Mehr

(6) Verknüpfen der GUI mit dem Spiel

(6) Verknüpfen der GUI mit dem Spiel Das einzige was eurer App jetzt noch fehlt ist die Verknüpfung eurer GUI mit dem Spiel Schiffe Versenken. Damit auch alles perfekt funktioniert werdet ihr als Vorbereitung einige neue Elemente und Variablen

Mehr

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2018/19. Vorbereitende Aufgaben

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2018/19. Vorbereitende Aufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2018/19 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand Übungsblatt 3 Besprechung: 12. 16.11.2018 (KW 46) Vorbereitende

Mehr

Klausur Fachprüfung Wirtschaftsinformatik. Name:

Klausur Fachprüfung Wirtschaftsinformatik. Name: Klausur Fachprüfung Wirtschaftsinformatik Dauer: 2 Stunden Datum: 02.10.2003 Name: Punkte True-or-False: von 15 Punkte Multiple Choice: von 15 Punkte Quickies: von 30 Punkte Shorties: von 20 Punkte Longies:

Mehr

Um dies zu vermeiden, werden nun drei so genannte Testbefehle eingeführt:

Um dies zu vermeiden, werden nun drei so genannte Testbefehle eingeführt: Folge 4 IF-ELSE-Anweisung - Testbefehle JAVA 4.1 Testbefehle (Boolesche Ausdrücke) Wenn Sie den Hamster in eine unlösbare Situation bringen (z.b. obwohl vor ihm eine Mauer steht), dann ist der Hamster

Mehr

Rückgabewerte von Methoden

Rückgabewerte von Methoden OOP Rückgabewerte von Methoden Henrik Horstmann 14. September 2014 Inhaltsverzeichnis Inhaltsverzeichnis 1 Bedeutung der Symbole...1 2 Rückgabewerte von Methoden...2 3 Der freundliche Computer...2 3.1

Mehr