Kjeksen Skrevet 25. juli 2005 Del Skrevet 25. juli 2005 (endret) Heisann! Har et enkelt spm. Hvordan kan jeg på en enkel måte generere et tall fra -5 til 5. Et eksempel på og løse det hadde vært fint. Kan vel kanskje løse det ved hjelp av rand() og srand(), men mener jeg har lest at det ikke er anbefalt? Endret 25. juli 2005 av Kjeksen Lenke til kommentar
Kjeksen Skrevet 25. juli 2005 Forfatter Del Skrevet 25. juli 2005 (endret) Har klart og lage et random tall ved hjelp av denne koden. Men dette lager et tall fra 0 til 99. Jeg trenger og sette fra -5 til 5. #include <cstdlib> #include <ctime> #include <iostream> using namespace std; int main() { int j; const int N = 100; srand( (unsigned)time( NULL ) ); for (int i = 0; i < 5; i++) { j = (int) N * rand() / (RAND_MAX + 1.0); cout << j << endl; } return 0; } Endret 25. juli 2005 av Kjeksen Lenke til kommentar
Herr_Dude Skrevet 25. juli 2005 Del Skrevet 25. juli 2005 Eksempel (utestet, errors may occure ): #include <cstdlib> // random funksjoner #include <ctime> // time - for seeding #include <iostream> // output using namespace std; int main() { srand( (unsigned)time( NULL ) ); // seed cout << ((rand()%11) - 5); // % 11 genererer --> 0 - 10, offset med 5 } Lenke til kommentar
Kjeksen Skrevet 25. juli 2005 Forfatter Del Skrevet 25. juli 2005 (endret) Jaja, var på sporet i d minste tenkte ikke på modulus hmmf.. Funket supert! takker Endret 25. juli 2005 av Kjeksen Lenke til kommentar
JBlack Skrevet 25. juli 2005 Del Skrevet 25. juli 2005 rand og srand er ikke anbefalt for seriøs bruk, ettersom de er basert på dårlige algoritmer. For lek er de helt greie. For mer seriøs bruk, bruk drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, lcong48 - generate uniformly distributed pseudo-random numbers Godt nok til det meste, botsett fra sikker kryptering. Lenke til kommentar
Kjeksen Skrevet 25. juli 2005 Forfatter Del Skrevet 25. juli 2005 rand og srand er ikke anbefalt for seriøs bruk, ettersom de er basert på dårlige algoritmer. For lek er de helt greie. For mer seriøs bruk, bruk drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, lcong48 - generate uniformly distributed pseudo-random numbers Godt nok til det meste, botsett fra sikker kryptering. okai. Det jeg lager nå er ikke akkurat seriøse greier, så srand() og rand() får holde for nå Lenke til kommentar
Kjeksen Skrevet 25. juli 2005 Forfatter Del Skrevet 25. juli 2005 Hmm, hvordan blir det modulus visst jeg bare skal ha ifra -3 til 3 da? Modulus var jaggu rare greier Lenke til kommentar
Dead_Rabbit Skrevet 25. juli 2005 Del Skrevet 25. juli 2005 Blir det ikke noe alà dette: srand(time(0)); cout << (rand()%6 - 3) << endl; ? Lenke til kommentar
JBlack Skrevet 25. juli 2005 Del Skrevet 25. juli 2005 Endre 6 til 7, og alt er såre vel. Modulus er ikke annet enn rest etter divisjon. Deler du på 7, så blir resten et eller annet fra 0 til 6. Trekk fra 3, så får du fra -3 til +3. Natta. Lenke til kommentar
Dead_Rabbit Skrevet 25. juli 2005 Del Skrevet 25. juli 2005 Jess! Slik må det vel være.. Tror jeg glemte den nullen midt i mellom der jeg hihihaha Lenke til kommentar
Manfred Skrevet 26. juli 2005 Del Skrevet 26. juli 2005 (endret) Hmm, hvordan blir det modulus visst jeg bare skal ha ifra -3 til 3 da? Modulus var jaggu rare greier Er ikke så veldig rart Det er "resten" i en divisjon. eks: 1%2 = 1 (1:2 gir et resultat på 0, men en rest på 1) 122%10 = 2 (da 122:10 gir 12 (hele) med en rest på 2) Endret 26. juli 2005 av Manfred Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå