Programmieren - wie einsteigen ?

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

der Universität Oldenburg
Kara, der programmierbare Marienkäfer !
Ich habe nie gelernt, Aufgaben zu lösen
(kleine!) Java Einführung Mittwoch, Heute Ziel: erstes Java-Programm erstellen Von der Aufgabenstellung bis zur Lösung Grundlagen Einfache.
Imperative Programmierung -Entwicklungswerkzeuge
Java: Objektorientierte Programmierung
Java: Grundlagen der Sprache
IF-ELSE-IF-Ketten Weiter mit PP..
WHILE - Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
FOR Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
DO...WHILE Anweisung.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 2 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Allgemein Batchdatei/en erstellen Was ist das?? Wie geht das??
Praxis-Repetitorium JAVA zusätzliche, ergänzende Lehrveranstaltung
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Zusammenfassung Vorwoche Programm besteht aus mehreren Bestandteilen: Schlüsselwörter Sonderzeichen Bezeichner Kommentare Texte.
Thema des Informatikkurses der Klasse 8
Das Java-Hamstermodell
Einführung in C EDV1 - 03C-Einführung.
DVG Einführung in Java1 Einführung in JAVA.
Einführung in C EDV1 - 04C-Einführung.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
Einführung in die Programmierung Datensammlung
Thema: Fibonacci-Zahlen
Bestimmung des ggT zweier Zahlen
Verzweigung.
Nicolas Ruh EF Informatik 2014 Nicolas Ruh
Rekursive Funktionen (Fakultät)
Telecooperation/RBG Technische Universität Darmstadt Copyrighted material; for TUD student use only Grundlagen der Informatik I Thema 0: Einführung Prof.
Kapitel 1 – Erste Schritte
Wenn Programme Entscheidungen fällen müssen, dann …
Herzlich Willkommen zu „Einführung in die Programmierung mit Java“
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
Java ohne Kara. Java ohne Kara Ab jetzt: Java ohne Kara Ziel: Erfahrungen sammeln mit ersten Java Programmen.
Einführung in die Programmiersprache Java
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Didaktische Programminterpreter
Learning objectives: To understand the main points made about the difference between German and English schools.
Wie sicher ist mein Geld ... ?
Informatik Objekte und Klassen 1. Objektorientiertes Modellieren und Programmieren 1.1 Objekte und Klassen.
2. Zustandsorientiertes Modellieren 2.1 Einfachauswahl
2.4 Rekursion Klassifikation und Beispiele
Grundlagen der Informatik - Prof. Slany 1 Grundlagen der Informatik Prof. Wolfgang SLANY.
The most obvious or direct use of auch is to mean also. Ich möchte auch Gitarre lernen. Auch ich möchte Gitarre lernen. I would like to learn Guitar. Someone.
Unterprogramme in JAVA
Starten der Entwicklungsumgebung (IDE)
Learning By Doing Ausnahmebehandlung Exceptions (Ausnahmebehandlung) Typische Fehlverhalten zur Laufzeit: s. Buch S. 287ff -Verwendung von null-Objekten.
Programmieren - wie einsteigen ?
Getting started: das Weltfenster von Kara
Programmierung von Agenten in Java: Implementierung einer Supply-Chain
Gestern: Kara Steuerung: Endliche Automaten.
Programmiervorkurs WS 2014/15 Methoden
Programmiervorkurs WS 2014/15 Schleifen
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
Natürliches Programmieren
Die Kunst des Programmierens...
Übung Informatik I exercise01. 2 Inhaltsübersicht Nachbesprechung Übung 1 Individuelle Fragen/Bemerkungen.
© 2004 Pohlig Informatik Kurse © 2004 Pohlig Informatik Kurse Der Tramp tanzt die Rekursion zünderUntersuchen(…) Basisfall Rückmeldung:
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Programmierkurs JavaUE 4 Anweisungen und ProgrammeDietrich BolesSeite 1 Programmierkurs Java Dr. Dietrich Boles Teil Imperative Programmierung Unterrichtseinheit.
Dr. Nicolas Ruh EF Informatik 2016 Dr. Nicolas Ruh
Roboter programmieren
10.3 Lektion 10 Geschichte und Gesellschaft STRUKTUREN © and ® 2012 Vista Higher Learning, Inc Der Konjunktiv I and indirect speech —Ich komme.
Algorithmisches Problemlösen mit Kara
Das Fach Informatik am SMG.  wird als Wahlfach in Klasse 9/10 angeboten,  wird als Grundfach in der MSS angeboten,  wird als Leistungsfach in der MSS.
ENVIRONMENT PROBLEMS What can I do? Pineapples Traffic  Use public vehicles  Use more bike and go by walking  There should be a filter in every car.
Class HelloWorldApp { public static void main(String[] args) {... } Grundkurs Inf - wie einsteigen ?
Hello World! Javakurs 2013 Arne Kappen
JavaKara programmieren: Verzweigungen
 Präsentation transkript:

Programmieren - wie einsteigen ? class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); }

Programmiersprachen: Wie Sand am Meer http://www.digibarn.com/collections/posters/tongues/

tiobe.com/index.php/content/paperinfo/tpci/

tiobe.com/index.php/content/paperinfo/tpci/ iPhone

Eine Kernidee der Informatik: Computer  formales System Intuition Formale Beschreibung

Das Ziel: Algorithmisches Denken It has often been said that a person does not really understand something until he teaches it to someone else. Actually a person does not really understand something until he can teach it to a computer, i.e., express it as an algorithm. [...] The attempt to formalize things as algorithms leads to a much deeper understanding than if we simply try to comprehend things in the traditional way. Knuth: Computer Science and its relation to mathematics. The American Mathematical Monthly, 81(4), 1974.

Grundlagen der Programmierung ? Programmieren heisst: Probleme lösen! die Probleme zu analysieren Lösungen zu entwerfen in Abläufen zu denken strikt logisch zu denken und die Lösung in Programme umzusetzen!

Kara, der programmierbare Marienkäfer !

In der Welt des Marienkäfers... ... gibt es: unbewegliche Baumstümpfe, Pilze, die Kara verschieben und Kleeblätter, die Kara legen und aufnehmen kann ... und natürlich Kara selbst!

Kara, der Marienkäfer... ... hat Sensoren, mit denen er seine Umwelt wahrnimmt: ... versteht einige Befehle, die er folgsam ausführt: stehe ich vor einem Baumstumpf? mache einen Schritt vorwärts! ist links von mir ein Baumstumpf? drehe um 90° nach links! ist rechts von mir ein Baumstumpf? drehe um 90° nach rechts! stehe ich vor einem Pilz? lege ein Kleeblatt hin! stehe ich auf einem Kleeblatt? nimm ein Kleeblatt auf!

Automaten im Alltag

Ein ganz einfacher Automat: Lichtschalter Ein Lichtschalter hat nur zwei Zustände, ein und aus. Ein „Sensor“ meldet, wenn der Schalter betätigt wird. drücken Licht aus Licht ein start drücken

Ein wenig komplexer: Videogerät Spulen „play“ „forward“ „rewind“ „play“ „pause“ Warten Video abspielen Nichts tun start „play“ „stop“ Time out

Getränkeautomaten Dieser Automat... akzeptiert nur zeigt eingeworfenen Betrag an gibt nur aus für 3,- 0.00

Das Leben eines Getränkeautomaten... 2.00 3.00 1.00 2.00 3.00 0,- 1,- 2,- 3,- 0.00 Coke Sprite

Das Leben eines Getränkeautomaten... Frage: oder ? stellt sich der Automat in einem Zustand werden von seinen Sensoren beantwortet 0,- 1,- 2,- 3,- Zustand

Das Leben eines Getränkeautomaten... Frage: oder ? die Antwort darauf gibt der Automat in einem Übergang führt dabei gewisse Aktionen aus 2.00 3.00 0,- 1,- 2,- 3,- 1.00 2.00 3.00 Coke Übergang 0.00 Sprite

Automat für Videogerät Play / Pause Stop Zustände Übergänge Sensoren

Automat für Videogerät Play / Pause Stop Zustände Übergänge Sensoren

Automat für Videogerät Play / Pause Stop Zustände Übergänge Sensoren

Automat für Videogerät Play / Pause Stop Zustände Übergänge Sensoren

Kara sucht einen Baumstumpf ! Die Aufgabe: bis zum nächsten Baumstumpf laufen, dann 180° Drehung! Das Program: ein Zustand „suche Baum“, ein Sensor „stehe vor Baum“

Kara sucht einen Baumstumpf 1. Sensorwerte betrachten, Zeile auswählen Befehle ausführen 3. In nächsten Zustand gehen ... 1. Sensorwerte betrachten, Zeile auswählen Befehle ausführen Zeit 3. In nächsten Zustand gehen

Kara, der Blättersammler Die Aufgabe: alle Blätter bis zum nächsten Baumstumpf aufnehmen! Das Programm: ein Zustand „collect leaves“, benötigt zwei Sensoren

Kara, der Blättersammler ! Programm als alltagsähnlicher Pseudo-Code falls (nicht vor Baum) UND (nicht auf Kleeblatt), dann [Schritt vorwärts] und [gehe zu collect leave] ODER falls (nicht vor Baum) UND (auf Kleeblatt), dann [fresse Kleeblatt, Schritt vorwärts] und [gehe zu collect leave] ODER falls (vor Baum) UND (nicht auf Kleeblatt), dann [] und [gehe zu Stop] ODER falls (vor Baum) UND (auf Kleeblatt), dann [fresse Kleeblatt] und [gehe zu Stop]

Kara, der Wächter (1) Die Aufgabe: Raum linksherum bis Kleeblatt, dann rechtsherum bis Kleeblatt, dann linksherum... laufen Das Programm: zwei Zustände: einer für Linksdrehung, einer für Rechtsdrehung

Welche Lösung ist „besser“? Kara, der Wächter (2) Das Programm: ein Zustand ! Welche Lösung ist „besser“? Lesbarkeit des Programms? Anzahl Befehle: Weniger = besser? Anzahl Zustände: Weniger = besser?  Eine Frage des persönlichen Programmierstils!   

Kara-Steckbrief Worum geht‘s Einführung in „Programmierdenken“ Für wen Schüler/innen ohne oder mit wenig Programmiererfahrung Lernziele Grundlagen der Programmierung Modell der endlichen Automaten Einsatz-dauer 6-12 Lektionen Technik Java 1.2, JRE, keine Installation. Windows, Mac OS X, Unix / Linux.