Wir programmieren Teil 2

Dieses ist der 2. Teil, hier gehts zum Einstiegsteil.

Zuerst mal eine möglich Lösung der kleinen Aufgaben. Die Änderungen sind fett markiert und kommentiert.

// Hello World!
void setup() {
size(600, 200); // Fenster in der angegebenen Größe erstellen (Breite, Höhe)
smooth(); // Glätten der Grafiken einschalten
fill(0); // Farbe setzen (schwarz) ;-)
textFont(createFont("SansSerif",18)); // Schrift und Schriftgröße wählen
textAlign(CENTER); // Ausrichtung des Textes festlegen
noLoop(); // draw() executes only once
}
// Der folgende Teil wir normalerweise immer und immer wieder wiederholt.
// Die Anweisung "noLoop();" in setup() verhindert dieses. void draw() {
fill(0,0,255); // Das Rechteck soll blau sein, also 0 rot, 0 grün und 255 von 255 blau
stroke(0,0,255); // Auch die Umrandung des Rechecks soll blau sein
rect (20,height-20,width-40,20); // Das Rechteck, beginnt 20 Pixel von links
// und 20 Pixel von unten, ist 40 Pixel kleiner
// als die Fensterbreite und 20 Pixel hoch. fill(0); // Die Schrift soll schwarz sein!
text("Hello World!", width/2, height); // Den Text in die Mitte des Fensters schreiben.
}

Wenn ihr die Aufgaben gelöst habt, so habt ihr schon viele Dinge von Processing oder Programmieren verstanden:

  • Der Computer arbeitet das Pragramm nacheinander Zeile für Zeile ab.
    (Das Rechteck musstet ihr vor dem Text zeichnen lassen)
  • Befehle werden voneinander getrennt, bei Processing mit einem Semikolon.
  • Befehlen können Parameter übergeben werden, bei Processing innerhalb von Klammern.
  • Ihr habt eine Idee, wie der Computer Farben speichert, nämlich z.B. in Anteilen aus Rot, Grün, Blau.

Doch lasst uns weitermachen:

void setup() {
size(300, 200);
smooth();
// der Befehl noLoop wird hier nicht mehr genutzt!
// dadurch wird alles innerhalb der geschwungenen Klammern von draw()
// unendlich oft wiederholt.
frameRate(30); // das Fenster wird 30 mal in der Sekunde neu aufgebaut
}

int x = 0; // eine Ganzzahl-Variabe (Integer-Variable) wird eingeführt
int vx = 3;
// x ist die x-Position des Kästchens, vx ist die Geschwindigkeit des Kästchens void draw() {
background(0); // Löschen der bisherigen Anzeige
fill(0,0,255); // Farbe festlegen
stroke(0,0,255);
rect (x,height/2,10,10); // Kästchen zeichnen
x=x+vx; // Die neue x-Position ergibt sich aus der alten und der Geschwindigkeit if (x>width-10) { // ist der rechte Rand erreicht? x=width-10; // Alles was in den geschweiften Klammern steht wird nur unter der vx=-3; // Bedingug ausgeführt, wenn der rechte Rand erreicht ist. } if (x < 0) { x=0; vx=3; } }

Dieses Programm ist schon wesentlich schwieriger als unser erstes.

Es enthält Variablen und Kontrollstrukturen.

Eine Variable ist ein Platzhalter oder ein "Merker", der sich Werte merken kann, die aber veränderlich (variabal) sind. In der Sprache Precessing muss man angeben, was für Werte sich ein Merker merken soll, ganzzahlige Werte oder mit Komma ...

Mathematisch blödsinnig ist der Ausdruck x=x+vx. dieser ist nur wahr für vx=0, aber beim Programmieren meint diese Zeile etwas anderes: "x wird ersetzt duch x+vx" also: "Merker x, merke dir nun die alte Zahl plus den Wert von vx".

Manche andere Sprachen vermeiden diesen Bruch mit der Mathematik und nutzen dafür das Zeichen ":=".

Die nächste schwierige Stelle sind die Abfragen: if ( BEDINGUNG ) { ... }
Der Programmblock (das was in den geschweiften Klammern steht) wird nur ausgeführt, wenn die Bedingung erfüllt ist. Prorammblöcke werden in geschweiften Klammern notiert, so auch die Blöcke "setup" und "draw".

Doch genug der Theorie, nun seid ihr wieder dran:

  • Ersetzt das Kästchen durch einen Kreis (Referenz nutzen!)
  • Ändert das Programm so, dass der Ball sich schneller nach links als nach rechts bewegt.
  • Schwieriger: der Ball soll nun auch in der Vertikalen hin- und her pendeln.

Viel Spaß! Weiter geht es morgen mit dem Teil 3.

Vielleicht auch interessant:

Termine

  • 28.02. Ende der Anmeldemöglichkeit der neuen 11. Klassen
  • 02.03. Sprechprüfungen Englisch Jg6
  • 02.03.–07.03. Peine in Heinola
  • 04.03.–11.03. Alcorcón in Peine
  • 05.03. Mathe ohne Grenzen
  • 05.03. Projekttag Spanienaustausch 08:00-13:00
  • 06.03. Info-Tag für die 4. Klassen 17:00-21:00
  • 09.03.–13.03. Woche der offenen Musik-Ensembles
  • 09.03.–13.03. Colmar in Peine
  • 11.03. MINT-Berufe besuchen Schulen 08:00-13:00
  • 11.03. Exkursion Tagesfahrt n. Bremen 08:15-18:15
  • 12.03. Exkursion Braunschweig 09:45-16:30
  • 12.03. Thematische DB 15:45-17:45
  • 16.03. Infotag 2. Fremdsprache Jg. 5 Jg5
  • 17.03. Sprechprüfungen Englisch Jg. Jg9
  • 18.03. 2. Gesamtkonferenz 17:00-19:00
  • 18.03. Schulvorstand 19:00-21:00
  • 19.03. Känguru-Wettbewerb Jg5 Jg6 Jg7 09:30-11:20
  • 20.03. Aula Musikschule
  • 20.03. Theater "Die Insel" 09:45-11:20
  • 23.03. Ende Chorprojekt
  • 23.03. Ganztagsschnuppern 14:00-15:35
  • 24.03. Workshopkonzert
  • 24.03. Infoabend Musik 19:15-20:30
  • 26.03. Zukunftstag
  • 26.03. Schulinterne Lehrerfortbildung
  • 27.03. Völkerballturnier Jg6
  • 30.03.–14.04. Osterferien
  • 15.04.–20.04. Heinola in Peine
  • 15.04. FK Religion 17:00-18:30
  • 16.04. Ratse-Party 16:30-18:00
  • 17.04. AG Programmieren 14:00-20:00
  • 18.04.–25.04. Peine in Alcorcón
  • 21.04. FK Latein
  • 21.04. Exkursion Thalia Buchhandlung 5e 09:15-11:20
  • 21.04. Päd. DBen 5-10 15:00-18:00
  • 24.04. Aprilwarnungen
  • 24.04. Exkursion Thalia Peine - Welttag d. Buches - 5a 11:35-13:10
  • 27.04. EU-Projektttag
  • 28.04. Exkursion BIOS 09:00-14:00
  • 30.04. FK Physik 16:00-18:30
  • 01.05. Feiertag
  • 06.05. FK Musik 18:00-19:30
  • 09.05. Kreismusikschule
  • 11.05.–15.05. Peine in Colmar
  • 11.05. Anmeldung neue 5. Klassen 10:00-17:00
  • 11.05. FK Deutsch 17:00-18:30
  • 12.05. Anmeldung neue 5. Klassen 10:00-17:00
  • 14.05.–16.05. Unterstufenchorfahrt
  • 21.05. Himmelfahrt
  • 22.05. Brückentag
  • 01.06.–02.06. Pfingsten
  • 03.06. Sprechprüfung 2. Fremdsprache Jg10
  • 04.06. Sprechprüfung 2. Fremdsprache Jg8
  • 05.06. AG Programmieren 14:00-20:00
  • 06.06. Nachschreibtermin
  • 08.06. FK Kunst
  • 08.06. FK Mathematik 16:00-17:30
  • 08.06. FK Informatik 18:00-19:30
  • 09.06. FK Spanisch 17:00-18:30
  • 10.06. FK Erdkunde 17:00-18:30
  • 12.06. Schwimm-Wettkämpfe Jg10
  • 13.06. Nachschreibtermin Reserve
  • 15.06. FK Sport 17:00-19:00
  • 15.06. FK Po-Wirtschaft 17:00-18:30
  • 16.06. Sportabzeichentag Jg7 Jg8
  • 17.06. FK Englisch 17:00-18:30
  • 18.06. Thematische DB 16:00-18:00
  • 23.06. FK Werte u. Normen 16:00-17:30
  • 24.06. Probentag Sommerkonzert
  • 24.06. ASA-Sitzung 16:00-17:00
  • 25.06. Exkursion Zoo Hannover 5a 08:00-15:00
  • 26.06. Sommerkonzert 17:00-19:00
  • 26.06. Sommerkonzert 19:30-21:00
  • 01.07. Vocatium Braunschweig Jg12
  • 02.07. Zensurenkonferenz 1: 7+10
  • 03.07. AG Programmieren 14:00-20:00
  • 05.07.–11.07. Englandfahrt 7a 7b 7c 7d
  • 06.07.–10.07. Projektwoche
  • 06.07.–10.07. Klassenfahrt 10a 10b 10c 10d
  • 06.07.–07.07. Betriebspraxistage Ausweichtermine
  • 06.07. Zensurenkonferenz 2: 5,6,8 14:00-19:00
  • 07.07. Zensurenkonferenz 3: 9,11,12
  • 08.07.–09.07. Betriebspraxistage 9
  • 10.07. Schulfest 14:00-19:00
  • 14.07. Allg. DB 13:30-15:00
  • 16.07.–26.08. Sommerferien
  • 07.09.–11.09. Klassenfahrt Jg. 6
  • 07.09.–11.09. Studienfahrten Jg. 12
  • 25.09. Berufsweg-Parcours Jg. 11
  • 12.10.–23.10. Herbstferien
  • 09.11. Exkursioon Jg. 10 Bergen-Belsen
  • 13.11. Exkursion Jg. 10 Bergen-Belsen
  • 23.12.–08.01. Weihnachtsferien
  • 11.01.–30.01. Betriebspraktikum Jg. 11

Programmieren und Basteln

Du interesssierst Dich für Computer, Elektronik und Programmieren?Dann schau doch einfach mal von Dienstag bis Freitag jeweils in der 7. Stunde im Computerraum 1 bzw....
Aufrufe: 7979 - 20.05.2012 mehr

Programmieren und Basteln

Liebe Schülerinnen und Schüler, leider ist eine Stunde pro Woche in der Schulzeit viel zu kurz zum Programmieren und Arduino-Basteln. Kaum hat man das...
Aufrufe: 7907 - 26.03.2012 mehr

Langweilige Präsentationen?

Oben ist nur das Standardbild zu sehen? Dann ist der Browser nicht aktuell genug, verwendet IE 9.0, Firefox, Opera, Chrome, Safari oder besser! Nutzern des IE könnte...
Aufrufe: 7474 - 23.11.2011 mehr

Wir programmieren Teil 9

Dieses ist der Teil 9 der Reihe. Hier geht es zum 8. Teil.Die Lösung für die Aufgabe habe ich als Applet heraufgeladen. Auch der Quellcode ist hier...
Aufrufe: 11293 - 05.08.2011 mehr

Wir programmieren Teil 8

Dieses ist der 8. Teil. Hier geht es zum 7. Teil.Erstmal zur Lösung:int[][] feld=new int[10][10];int[][] z=new int[10][10];int xs=0;int ys=0;//...
Aufrufe: 11226 - 05.08.2011 mehr

Wir programmieren Teil 7

Nachdem wir unser erstes Spiel programmiert haben, widmen wir uns nun weiteren sprachlichen Strukturen.Wir wollen [[Conways Spiel des Lebens]]...
Aufrufe: 11684 - 05.08.2011 mehr

Wir programmieren Teil 6

Dieses ist der 6. Teil der Reihe. Hier findet ihr den 5. Teil.Die Lösung und unser bisheriges Spiel findet ihr auf folgender Seite. Dort ist auch der...
Aufrufe: 11295 - 05.08.2011 mehr

Wir programmieren Teil 5

Dieses ist der 5. Teil der Reihe. Hier geht es zum 4. Teil.Aufgabe war es, die Fehler zu finden. Der 1. Fehler war einfach zu finden, das Programm ließ...
Aufrufe: 14442 - 04.08.2011 mehr

Wir programmieren Teil 4

Dieses ist der vierte Teil, hier geht es zum 3. Teil.Zuerst wie immer zur Lösung. Dieses mal ist meine Musterlösung ggf. schwieriger zu verstehen, da...
Aufrufe: 14505 - 03.08.2011 mehr

Wir programmieren Teil 3

Dieses ist der 3. Teil der Reihe, hier geht es zum 2. Teil.Zuerst zur Lösung der kleinen Aufgaben:void setup() int x = 0;int y = 0;int vx = 3;int vy =...
Aufrufe: 14185 - 03.08.2011 mehr

Wir programmieren

In dieser Beitragsreihe könnt Ihr in das Schreiben von Computerprogrammen einsteigen. Wenn ihr Lust habt mehr mit Eurem Computer zu tun als nur zu...
Aufrufe: 12467 - 02.08.2011 mehr

Wochenend-Bastelei es geht weiter

hwNach den doch recht schleppenden Beginn geht es nun doch vorwärts. Auf der Seite http://reactivision.sourceforge.net/ fand sich die benötigte Software und ich wagte...
Aufrufe: 8859 - 20.02.2011 mehr

Wochenend-Bastelei Multitouch-Table

hwManche Projekte dauern doch etwas länger. Nachdem ich mich letztes Wochenende um die Beleuchtung der Acrylglasplatte gekümmert hatte, geht es in dieser Woche um die...
Aufrufe: 10241 - 19.02.2011 mehr

Wochenend-Bastelei gescheitert (noch)

hwTja, so kann es gehen, da nehme ich mir mein nächstes Projekt vor, besorge die Materialien und dann schaffe ich es nicht am Samstag fertig zu werden und ich denke,...
Aufrufe: 11249 - 13.02.2011 mehr

Wochenend-Bastelei

hwLanges Wochenende und ebenso lange Weile? Da kann ich helfen, beim Stöbern nach Projekten für unsere Schule stieß ich auf folgendes YouTube-Video. Das können wir...
Aufrufe: 10972 - 29.01.2011 mehr