Hejsan Det är inte rätt. Handlar det om slumptal finns det i C-standarden (vilken implicit finns med i C++), två funktioner; srand och rand. Hej NiklasNybörjare inom C++
Skulle vilja veta hur man skriver en kod med random/randomize. (enkelt sätt)
Vill att datorn ska slumpar fram tal: 1, 2 eller 3.
Är detta rätt?
int dator;
randomize();
dator=random(3)+1;
Tacksam för all hjälp
/UrbanSv: Nybörjare inom C++
srand är för seed och rand är för själva talen.
srand använder man bara en gång, och den kan du till exempel mata med klockslaget för att alltid få olika sekvenser.
rand() ger tal i intervallet [0, RAND_MAX], och de får du mappa ner till ditt intervall, lämpligtvis genom rand()*interval/RAND_MAX. Du måste omvandla till flyttal.
Tittar du i boost (www.boost.org) så har du lite roligare och enklare sätt att göra på. Det finns också en hel del fristående grejer att utgå ifrån.Sv:Nybörjare inom C++
Det vore kanon om du kunde skriva ut ett ex. på hur det skulle se ut.
/ UrbanSv: Nybörjare inom C++
#include <iostream>
#include <cstdlib>
int random(int low, int high);
int main()
{
using namespace std;
srand(10);
cout << random(1, 3);
cout << random(1, 3);
cout << random(1, 3);
}
int random(int low, int high)
{
using std::rand;
return int(double(high-low+1)*rand()/RAND_MAX)+low;
}
Otestat. Argumentet i srand kan du istället hämta från time i <ctime>.
Har du en dålig kompilator kan du behöva trixa lite med using-raderna.