Hallo,
mann sollte zufugeneinbinden)
#include <stdlib.h>
und mann nutzt dann etwas wie:
unsigned int r = random();
in 'r' befindet sich jetzt ein willkurlichen Wert.
siehe z.B.
http://www.cs.cf.ac.uk/Dave/C/node16.html
Gruss,
Henk
Hallo,
ich hätte da mal eine Frage:
Kann man fuer den ASURO ein Programm mit einem Zufallsgenerator schreiben, ähnlich der "randomize"-Funktion?
z.B. dass er eine Zahl zwischen eins und drei wählt und wenn eins kommt leuchtet die Status-LED rot, bei zwei gruen etc.?
Wär schön wenn ihr mir weiterhelfen könntet!
Ich sag schon einmal danke im voraus!
lg
Hallo,
mann sollte zufugeneinbinden)
#include <stdlib.h>
und mann nutzt dann etwas wie:
unsigned int r = random();
in 'r' befindet sich jetzt ein willkurlichen Wert.
siehe z.B.
http://www.cs.cf.ac.uk/Dave/C/node16.html
Gruss,
Henk
Danke, werd es gleich mal ausprobieren!
lg
Oder so , kostet weniger Speicher.
Ich brauch eh nur wenig Speicher.
Aber wie muss ich random definieren wenn ich wirklich nur ein paar Zufallswerte brauche...
wie
.
.
.
if(r==1)
{
BackLED(ON,OFF);
}
if(r==2)
{
BackLED(OFF,ON);
}
if(r==3)
{
BackLED(OFF,OFF);
FrontLED(ON);
}
Hab eine Lösung hab die Zahlen einfach hoch gesetzt...
Danke fuer die schnelle Hilfe, hab noch einige Ideen die ich ausprobieren muss
lg
ich meine mich zu erinnern, dass random() zufällige zahlen mit 9 kommastellen zwischen 0 und 1 ausgibt. du musst sie also noch normieren, für drei zahlen ungefähr so:
zufall=int(3*random())+1;
von innen nach aussen:
eine zufallszahl wird erzeugt (beispiele: 0, 0.5, 0,9
sie wird mit 3 multipliziert (beispiele: 0, 1.5, 2.7)
es werden die kommastellen abgeschnitten (beispiele: 0, 1, 2)
es wird eins addirt um die null auszuschliessen und die 3 zu erreichen (beispiele: 1, 2, 3)
du musst also nur die zahl vor dem * anpassen um eine beliebige menge von zahlen zu erreichen. die eins bleibt unverändert.
Ja das funktioniert auch,danke!
kein problem. wenn du die null mit einbeziehen willst, musst du das +1 entfernen.
zufall=int(3*random());
währen die drei zahlen 0, 1 und 2
Laut hier heißt die Funktion aus der stdlib.h
und nicht irgendwie random oder so.Code:int rand(void)
Außerdem sollte man den Zufallsgenerator vor dem ersten (und nur vor dem ersten) Aufruf im Programm initialisieren. Das geht mit
, wobei seed eine beliebige Zahl ist, die beim Programmaufruf noch nicht feststeht, z.B. ein Wert der Odometriesensoren.Code:void srand(unsigned int seed)
Lesezeichen