23. Schulinformatiktag

Ähnliche Dokumente
Raspberry Pi Programmieren und Netzwerke bauen

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

HTML5, JavaScript und jquery

Programmieren. Hexenwerk oder Zauberspuk? Kinderuniversität Mittwoch, 16. März 2016 Kinder-Akademie Fulda & Hochschule Fulda

Skriptsprachen: Python

01 Einführung in PHP. Einführung in PHP 1/13 PHP in Aktion

Grundlagen Internet-Technologien. Clientseitige Web-Programmierung

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

Workshop 4: Raspberry Pi

Ruby Die bebilderte Anleitung

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

Algorithmen und ihre Programmierung

Matthias-Claudius-Gymnasium Fachcurriculum Informatik

Kompendium der Web-Programmierung

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt

Wir programmieren unser eigenes Computer-Spiel

Python Einführung. Monica Selva Soto. 24 März Mathematisches Institut

Grundlagen. Felix Döring, Felix Wittwer 24. April Python-Kurs

Übung zur Vorlesung Strukturiertes Programmieren WS 2014/15. Übungsblatt 1: JAVA - Erste Schritte Abgabe: Besprechung:

- Melde dich an (oben rechts): Scratcher werden (Die Anmeldung kannst du auch später machen und vorläufig im Modus Probier es aus bleiben.

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

Institut für Computational Science Prof. Dr. H. Hinterberger. Praxismodul 1. Einführung in die Programmierung Erste Programme

Funktionen in JavaScript

Einführung in Haskell und seine Werkzeuge

Warum JavaScript? Vorwort

Grundlagen Internet-Technologien INF3171

1.2 Ausführung von Python-Skripten

Inhalt. Vorwort 13. Einleitung JavaScript-Grundlagen 17

Actionscript Kleine Programme Fragen & Aufgaben

Eclipse Tutorial.doc

Programmierung 1 für Wirtschaftsinformatik Wintersemester 2015/16

Einführung in PHP. (mit Aufgaben)

Desktop-Wikis am Beispiel von TiddlyWiki

E-Learning System

Quelle: programmierung/scratch. Wiederholungen. Informatik AG Goetheschule Dieburg Christian Wach

Eine JAVA Einführung ... Quellcode:... COMA Übung 3. T.Bosse. A.Griewank. Vorschau JAVA Programme Sprachen Kate

Scala & Lift. Ferenc Lajko

Ein Streifzug durch die Programmiersprachenlandschaft in der Schule. Gerald Futschek TU Wien Informatiktag 2013

Mark Fink at. VHS Augsburg Erste Schritte mit dem Raspberry PI.

Ingenieurinformatik. Einführung in die Programmiersprache C

Arbeitsheft zum Handbuch Programmieren für Kinder

Workshop Einführung in die Sprache Haskell

Kapitel 6,»Objektorientierte Programmierung«, widmet sich der objektorientierten Programmierung mit Python.

Funktionen in JavaScript

Programmieren I + II Regeln der Code-Formatierung

Vorbereitungen zum SIMOTION Webserver Tutorial Anwenderdefinierte Webseiten

Programmieren? Das kann ich auch! Bau dir deine interaktive Bildergeschichte

Betriebssysteme 2 BS2-A WS 2016/17. Prof. Dr.-Ing. Hans-Georg Eßer Fachhochschule Südwestfalen. Foliensatz A: Einführung. v1.

Literatur und Links. Webtechnologien SS 2017 Teil 1/Entwicklung

Übungen zur Vorlesung Einführung in die Informatik Wintersemester 2010/11


< Programmieren lernen mit Scratch />

Algorithmen und ihre Programmierung

Vorkurs Informatik WiSe 17/18

Webtechnologien Teil 1: Entwicklungsumgebung(en)

Einrichtung des WLANs so funktioniert s

Funktionen nur wenn dann

Auf einen Blick. 1 Apps programmieren wie geht das? Das App-Werkzeug: LiveCode Grundbausteine einer App... 43

Michael Kolberg. einfach klipp & klar. Microsofft* Press

Die offizielle Homepage, Informationen, Entwicklergemeinde, etc. findet man unter

1 Gestatten: Raspberry Pi! Schnellstart: Die erste Inbetriebnahme Den Desktop kennenlernen Wichtige Konsolenbefehle im Griff 69

Möge das Abenteuer beginnen!

HTML Tutorial Part I - Einführung und erste Texte schreiben

Tutorial XML3D + Blender

Vorsemesterkurs Informatik

Kontrollstrukturen und Logik

Web und Mobile Apps Programmieren mit Dart

CURRICULUM FÜR (POSTGYMNASIALE) FACHSCHULEN

Variablen und Datentypen

Informatik I. Einführung in Java. Begrüßung. Zusatzveranstaltung

1 Einführung Erste Schritte Programmierkurs Datentypen Weiterführende Programmierung

Programmierkurs Python I

Kapitel 2: Python: Ausdrücke und Typen. Grundlagen der Programmierung 1. Holger Karl. Wintersemester 2016/2017. Inhaltsverzeichnis 1

Fernzugriff über Citrix Access Gateway (Campus Inselspital / Spitalnetz Bern AG) (Extern / Home Office)

1 Aufgabe: Computer-Aufbau

Inhaltsverzeichnis. Warren D. Sande, Carter Sande. Hello World! Programmieren für Kids und andere Anfänger. Übersetzt von Dorothea Heymann-Reder

< Programmieren lernen mit dem Calliope mini />

Programmieren mit Python

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

Programmierkurs II. Einführung in die deklarative Programmiersprache HASKELL

Telecooperation/RBG. Grundlagen der Informatik I Thema 0: Einführung. Dr. Guido Rößling. Copyrighted material; for TUD student use only

Klausur Fachprüfung Wirtschaftsinformatik. Name:

Grundlagen der Programmentwicklung

PHP Kurs Online Kurs Analysten Programmierer Web PHP

Grundlagen der Programmierung

1. Einführung. Programmieren 1 / Algorithmen und Datenstrukturen. Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Sommersemester 2010

Variablen und Datentypen

Prof. Dr. Detlef Krömker Carsten Heep. Institut für Informatik. Johann Wolfgang Goethe-Universität

ROOT Einführung. Statistische Methoden der Datenanalyse. Matthew Beckingham Henrik Wold Nilsen. 29. Oktober 2009

Programmieren? Das kann ich auch! Bau dir deinen eigenen Bildschirmschoner

Kompetenzen im CMS Joomla

Programmierung mit Java Teil 1

Transkript:

23. Schulinformatiktag Programmieren mit dem Raspberry Pi Dieser Workshop umfasst eine praktische Einführung in die Programmierung mit Python und Scratch auf dem Raspberry Pi. Die Beispiele und Übungen aus den Bereichen Mathematik und visuelle Effekte laden zum Experimentieren ein und können für den Unterricht in einen eigenen Programmierkurs übernommen werden.

Patrick Schnabel Elektronik-Kompendium.de Fachbuchautor für Elektronik und IT Dozent an der DHBW in Stuttgart Themenschwerpunkte: Rechnersysteme und Kommunikationssysteme Patrick Schnabel ist ausgebildeter Kommunikationselektroniker und war mehrere Jahre bei Bosch, Avaya und der LBBW als Servicetechniker im Bereich Telekommunikation und Netze tätig. Heute ist er Fachbuchautor für Elektronik und Informationstechnik. Er betreibt dazu auch die Webseite Elektronik-Kompendium.de für Azubis und Studenten, die sich in einer technischen Ausbildung befinden. Parallel dazu ist er als Dozent an der Dualen Hochschule Baden-Württemberg in Stuttgart für die Fachrichtung Wirtschaftsinformatik tätig. Er hält dort die Vorlesungen "Einführung Rechnersysteme" und "Kommunikationssysteme".

www.elektronik-kompendium.de Webseite Elektronik-Kompendium.de ist die Webseite über Elektronik, Computertechnik, Kommunikationstechnik und Netzwerktechnik. Bücher Elektronik-Fibel Kommunikationstechnik-Fibel Computertechnik-Fibel Netzwerktechnik-Fibel

Screencast Aufzeichnung von Folien und die dazugehörigen Ausführungen. Videos auf YouTube.

www.patrick-schnabel.de Folien als PDF-Datei und Video zu finden auf www.patrick-schnabel.de.

Schulart? Klassenstufe? Python oder Scratch? An welcher Schule unterrichten Sie? Mit welcher Klassenstufe möchten Sie programmieren? Python oder Scratch?

Der Raspberry Pi wurde ursprünglich für Bildungszwecke entwickelt, um ihn an Schulen und Universitäten einzusetzen und den Unterricht und das Studium interessanter zu gestalten. Leider befindet sich der praktische Einsatz des Raspberry Pi oder eines vergleichbaren Einplatinen-Computers in Deutschland, Österreich und der Schweiz noch in den Kinderschuhen. Hört man sich zu dem Thema um, findet man nur wenige Beispiele, die den Einsatz des Raspberry Pi im Schulunterricht, in der Ausbildung oder im Studium zeigen. Weitere Ideen Physical Computing (Elektronik) Netzwerke bauen (Server, WLAN-Access-Point, Gateway, VPN, ) Media-Center Spiele-Konsole Programmieren

Programmieren mit dem Raspberry Pi Im ersten Teil geht es darum, auf dem Raspberry Pi mit Python zu programmieren. Dazu werden mathematischen Berechnungen, die zum Beispiel aus einem Mathematik-Unterricht bekannt sind, gezeigt, die sich nach belieben anpassen und erweitern lassen. Als Erweiterung dazu wird gezeigt, wie sich diese Berechnungen in einen Programmierkurs für den Informatik- oder Mathematik-Unterricht übernehmen lassen.

Programmieren mit dem Raspberry Pi Scratch Python Bash/Shell PHP Ruby C...

Programmieren mit Python Python ist eine Script-Sprache ähnlich wie PHP oder Javascript. Ein Interpreter ist für die Ausführung des Codes verantwortlich, der als einfache Textdatei vorliegt. Für Einsteiger ist die Sprache besonders geeignet, weil sie nur wenige Schlüsselwörter umfasst und der Code sich relativ übersichtlich gestalten lässt. Die Programmstruktur wird durch Einrückungen mit Leerzeichen oder Tabulatorzeichen gebildet. Andere Sprachen verwenden dazu Klammern oder eigene Schlüsselwörter. Warum mit Python programmieren? Python ist eine universelle Programmiersprache. Der Fokus liegt auf der Programmlesbarkeit. Python gilt als einfach zu erlernende Sprache, da sie über eine klare und übersichtliche Syntax verfügt. Die Wahrscheinlichkeit, dass jemand später in der Ausbildung, Studium oder Beruf wieder auf Python trifft ist sehr hoch.

Grundlagen: Python Unterscheidung Python Version 2 und 3 sind auf Raspbian vorinstalliert (Raspberry Pi) Verzicht auf geschweifte Klammern Programmstruktur durch Einrückungen 11 Grundsätzlich empfiehlt es sich unter Python 3 zu entwickeln und gegebenenfalls über den Import des future-moduls dafür sorgen, dass die Programme mit beiden Versionen laufen.

Unsere Entwicklungsumgebung IPython Notebook https://try.jupyter.org/ 12 IPython Notebook Web-Dienst zum Editieren und Ausführen von Python-Code im Browser. Python ohne Konsole im Browser ausprobieren: https://try.jupyter.org/

13 Rechts oben auf New klicken und Python 3 auswählen.

14 Hallo-Welt-Einzeiler print ( Hallo Welt )

Mathematische Probleme lösen 15 Mathematische Probleme mit Python lösen Nicht alle mathematischen Probleme und Aufgaben lassen sich schriftlich oder per Taschenrechner lösen. Manchmal kann man sich mit einer Programmiersprache behelfen. Programmieren heisst Abläufe (Aufgaben, Prozesse) festzulegen, die anschließend ein Computer ausführen kann.

Aufgabe 1: Zwei mal zwei plus zwei durch zwei minus zwei 16

Wie viel ist 2 x 2 + 2 : 2-2? Rechenregel beachten: Es gilt Punkt- vor Strichrechnung! Unter Beachtung der Zwischenergebnisse: 4+1-2=3

print ("Ergebnis:", int(2 * 2 + 2 / 2-2) ) 18 Quellcode für Datei: #!/usr/bin/python3 print ("Ergebnis:", int(2 * 2 + 2 / 2-2) )

Kennt Python die Rechenregeln richtig? Ja

Was bewirkt int()? int() bewirkt, dass das Ergebnis eine Ganzzahl ist. int ist die Abkürzung von Integer. Das lateinische Wort bedeutet ganze Zahl und damit wird in der Informatik ein Datentyp bezeichnet, der ganzzahlige Werte representiert.

Aufgabe 2: Summe einer Zahlenfolge von 1 bis 100 ausrechnen Gemeint ist: 1 + 2 + 3 + 4 + + 100 =?

summe=0 for i in range (1,101): summe = summe + i print ("Die Summe lautet", summe) Quellcode für Datei: #!/usr/bin/python3 summe=0 for i in range (1,101): summe = summe + i print ("Die Summe lautet", summe)

Einrückung von 4 Leerzeichen beachten! Die for -Schleife muss bis 101 zählen.

Aufgabe 3: Fakultäten von 1! bis 10! ausrechnen Gemeint ist: 1 * 2 * 3 * 4 * * 10 =?

fakultaet=1 for i in range (1,11): fakultaet = fakultaet * i print ("Die Fakultät von", i, "lautet", fakultaet) Quellcode für Datei: #!/usr/bin/python3 fakultaet=1 for i in range (1,11): fakultaet = fakultaet * i print ("Die Fakultät von", i, "lautet", fakultaet)

Beachten Sie bitte, dass print durch die Einrückung noch in die for-schleife hineingehört.

Haben Sie noch eine Idee?

Programmieren mit Scratch Scratch ist eine erstmals 2007 veröffentlichte erziehungsorientierte visuelle Programmiersprache für Kinder und Jugendliche inklusive ihrer Entwicklungsumgebung und der eng verknüpften Online-Community-Plattform. Das Ziel ist es, Neueinsteiger besonders Kinder und Jugendliche mit den Grundkonzepten der Computerprogrammierung vertraut zu machen.

https://scratch.mit.edu/ Scratch kann man auch ohne Installation im Browser benutzen. https://scratch.mit.edu/ Flash-Plugin muss installiert sein!

Funktionsleiste: Funktionen, Eigenschaften, Kostüme und Klänge auswählen Skriptfenster für Funktionen, Kostüme oder Klänge Bühne Figuren

Wir bauen uns ein Spiel

1. 2. Neues Objekt auswählen. Zum Beispiel eine Maus. Skript für Objekt2 bauen : Pfeiltasten

3. Skript für Objekt1 bauen

4. Skript für Objekt2 erweitern

https://www.raspberrypi.org/magpi/issues/

Sie sind dran!

Erweiterungen Python: Erweiterung Scratch: Erweiterung Python eignet sich dann am besten, wenn man ein konkretes Problem lösen will. Deshalb hier nur ein paar Ideen die man noch ausprobieren kann: Dieses kleine Spiel eignet sich gut, um erste Erfahrungen zu sammeln. Schnell kommen Ideen, um das Spiel zu erweitern. andere Schleifentypen benutzerdefinierte Eingaben bedingte Anweisungen... andere Objekte Hindernisse an den man abprallen kann akustische Rückmeldung bei Kontakt variierende Katzengeschwindigkeit zufällige Ereignisse...

Vielen Dank

Kontakt E-Mail: patrick.schnabel@das-elko.de Noch mehr Ideen und Informationen: www.elektronik-kompendium.de Screencast + Folien + Notizen: www.patrick-schnabel.de