Satunnaisluku

Saku-foorumi » Uusi sukupolvi: MorphOS » Ohjelmointi » Viestit 2007 » Satunnaisluku « Edellinen Seuraava »

Kirjoittaja Viesti
 

Bud
Perjantaina, 13. huhtikuuta, 2007 - klo 7.58:   
#include <stdio.h>
#include <time.h>
#include <stdlib.h> /* satunnaisluvut */


int main(void) {
int i;
time_t siemen;
time(&siemen);
/* alustetaan satunnaislukugeneraattori */
srand(siemen);
/* tulostetaan kymmenen satunnaislukua väliltä 0 - 9 */
for (i = 0; i < 10; i++) {
printf("%i\n", rand() % 10);
}
}
Mitenkäs sais tuosta satunnaisluvun käsittelyyn. Jotta voisi vertailla käsin syötettyä lukua satunnailukuun. Onko luku < , >, = verrattuna syötettyyn lukuun. Tarkoitus on saada tulostettua arvauksesi on pieni, suuri ja oikein.

 

Piru
Perjantaina, 13. huhtikuuta, 2007 - klo 10.29:   
Tämä kyllä vaikuttaa aika pahasti kotitehtävältä... :)

 

Jupp3
Perjantaina, 13. huhtikuuta, 2007 - klo 12.02:   
Muista, että C:ssä yhtäsuuruus on ==, eli esim.
if(a==b) printf("a==b\n");

 

densho
Perjantaina, 13. huhtikuuta, 2007 - klo 13.30:   
2b || !2b = ?

 

Bud
Sunnuntaina, 15. huhtikuuta, 2007 - klo 11.08:   
Niin tämä on pro training kirjan harjoitus tehtäviä! Kokeilen tuo kun kerkeän. Jostain on sitä lähdettävä alkuun.

 

Bud
Sunnuntaina, 15. huhtikuuta, 2007 - klo 11.10:   
Ei siis ihan suoraan, tehtävään liittyen.

 

Bud
Perjantaina, 20. huhtikuuta, 2007 - klo 20.08:   
Esiksi piti muuttaa riviä for (i = 0; i < 1;i++), jotta tulostetaan yksi rivi.
Ja sitten laitoin if (luku == i), jos syötetty luku on 1 ja i = 0
tulostuu "oikein" välittämättä oliko rand 0 < luku vai rand > luku.
ei ymmärrä mikä on pielessä
Sen pitäisi olla se luku jonka rand valitsee.
Niin ja sinä Piruvie olet sinäkin nämä joutunut opettelemaan.
Etkö vain?
Minä siksi tämmösiä harjoittelen, jotta aika kuluisi paremmin odotelleessa
sitä uutta mos versiota. No on tästä paljonkin hyötyä,
Ei ole ainakaan vapaa-ajan murheita.
Ja ostetusta koneesta pitää saada kaikki irti sijoitetun hinnan verran.

 

C=
Lauantaina, 21. huhtikuuta, 2007 - klo 10.59:   
Teetkö arvauspeliä? Miksi pitäisi aluksi tulostaa yksi rivi?

Arvotaan 1 numero:
arvottu_luku = rand() % 10;

Sitten voidaan lähteä arvailemaan:
if (syotetty_luku==arvottu_luku) puts("oikeinpa arvasit.");

Arvaamissilmukka esim. rakenteella
do
{ ... }
while (syotetty_luku != arvottu_luku);

Webissä löytyy kurssimateriaaleja, esim. http://cs.stadia.fi/~silander/ohjelmointi/c_opas--8.html

 

Bud
Tiistaina, 24. huhtikuuta, 2007 - klo 20.20:   
Kokeillaan tuota eipä taida olla kaukana ratkaisusta enää. Enpä edes osannut tuollaista ajatellakaan.
Yksi rivi koska riittää vain yksi rivi, koska
(syotetty_luku<arvottu_luku tulostaa) "arvauksesi liian pieni"
(syotetty_luku>arvottu_luku.........)."......... liian iso"
tai on oikein.
Niin ei voi tulostaa montaa riviä.
Tämä kirja on paras mitä vastaan on tullut.
Melkein kaikki esimerkit on toiminut ehkä n.10 on jäänyt toimimatta.
Enkä osaa niitä vielä korjata toimivaksi "ehkä joskus.

 

JPQ
Tiistaina, 24. huhtikuuta, 2007 - klo 23.15:   
Bud: on yksi kirja jossa tähän asti kokeillut kaikki esimerkit on toimineet ja sitten ne testattu koneella luettavassa muodossa ja toimineet joten luultavasti toimii kaikki.

 

Bud
Lauantaina, 28. huhtikuuta, 2007 - klo 22.10:   
Voi olla että toimii kaikki tai sitten ei. Tai on jäänyt jotain kirjoitus virheitä korjaamatta tai huomaamatta.
No kuitenkin kokeilin tuota do while ja lueskelin kirjasta uudestaan ja totesin, että ei sovellu ollenkaan
siihen mitä tavoittelen.
Ja jännä juttu kun jotenkin kun numerosta 8 on tullut ohjelmassa jonkinlainen
ihmeellinen raja, kun rand luku on 2 ja syötetty luku on 5. Ja kaikki siitä alaspäin syötetyt luvut.
Niin tulostaa "arvauksesi on pieni". Ja jos syötetty luku on 8 niin "arvauksesi on oikein".
Jotain hämärää on nyt tekeillä!
Miten syötetty luku 5 voi olla pienempi kuin arvottu luku 3, jotain on pahasti pielessä!!!
EI JYMMÄRRÄ. :(

Lisää viestisi tähän
Viestisi:
Käyttäjätunnus: Postitus informaatiota:
Tämä on yksityinen keskustelupalsta. Vain rekisteröidyt käyttäjät ja moderaattorit voivat postittaa tänne.
Salasana:
valinnat: Aktivoi URL:t automaattisesti tässä viestissä
Toimenpide: