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Ä.
|
|