Der Computer soll per Zufallsgenerator alle 256 möglichen Leuchtmusterkombinationen der Kombiampel als Schau- und Lichteffekt aufblitzen lassen.
Die PASCAL Anweisungen für die Erzeugung von Zufallszahlen:
RANDOMIZE; startet den Zufallszahlengenerator.
RANDOM(256); erzeugt Zufallszahlen im Bereich 0...255.
Mit der Anweisung Ausgeben (RANDOM(256)); wird der Zahlenwert
an die Kombiampel ausgegeben.
Die Anweisung Disco_ein; schaltet auf Discobetrieb.
PROGRAM Disco1; USES Komampel; BEGIN Disco_ein; RANDOMIZE; REPEAT Ausgeben (RANDOM(256)); Warte(0.1); UNTIL Tastatur; END.
DISCO1.PAS
Aufgabe: Probiere durch Verändern von Warte(...), welcher
Wert den günstigsten Lichteffekt erzeugt.
Hinweis: Dezimalzahlen müssen mit einem Dezimalpunkt geschrieben
werden. z.B. 0.3
Die Zeitabstände zwischen den einzelnen Lichtsignalen werden
im Programm "Disco1" durch die Anweisung Warte(...)
erzeugt. Sie sollen jetzt auch durch den Zufallsgenerator
bestimmt werden.
Hinweis:
RANDOM erzeugt ganze Zahlen. Wenn kleinere Zahlen als 1
bei Warte(...); eingesetzt werden sollen, kann man den
Zufallszahlenwert z.B. durch 10 dividieren.
Beispiel: Warte(RANDOM(10)/10);
Aufgabe: Erweitere das Programm "Disco1" entsprechd.
DISCO2.PAS
Die Lichtsignale sollen durch den Anschluß eines Walkman oder CD-Players bestimmt werden.
Ein Adapter mit einem Kopfhöreranschluß bringt die Musiksignale an den Schaltereingang der Kombiampel. Um das Mithören zu ermöglichen, wird der Kopfhörer an den Adapter angeschlossen.
Die beiden Anschlüsse für den Schaltereingang müssen richtig gepolt gesteckt werden.
PROGRAM disco3;
USES Komampel;
VAR i, sum : INTEGER;
BEGIN
Disco_ein;
i:=0;
sum:=0;
REPEAT
IF Schalter THEN
sum:=sum+1
ELSE
sum:=sum-1;
i:=i+1;
IF i=25 THEN
BEGIN
IF sum>0 THEN
Ausgeben(255)
ELSE
Ausgeben(0);
i:=0;
sum:=0
END;
UNTIL Tastatur;
END.
DISCO3.PAS
Zurück zur Hauptseite
Burkhard John
29.6.1999