Tehtävä 40. Kirjoita ohjelma, jossa luetaan 20 lukua, joiden arvot ovat välillä 10 100. Kun taulukko on täytetty, ohjelma tulostaa vain ne taulukon arvot, jotka esiintyvät taulukossa vain kerran. Tehtävä 41. Tee ohjelma, jossa on kaksi samankokoista kokonaislukutaulukkoa. Ohjelma täyttää toisen taulukoista satunnaisluvuilla ja kopioi sitten luvut toiseen samankokoiseen taulukkoon käänteisessä järjestyksessä eli ensimmäinen luku viimeiseen paikkaan ja viimeisin luku ensimmäisen paikkaan jne. Lopuksi ohjelma tulostaa molempien taulukoiden sisällöt. Tehtävä 42. Kirjoita ohjelma jossa luetaan kokonaislukuja taulukkoon (saat itse päättää taulun koon, kunhan koko on vähintään 10) - Luettu luku talletetaan taulukkoon, jos luettu luku on välillä 0 100, muut arvot hylätään, mutta tästä huolimatta taulukon jokaiseen soluun on talletettava luku. - Ohjelma tulostaa taulukon sisällön kuvaruudulle. - Ohjelmassa etsitään taulukosta suurimman arvon sijainti (eli indeksi) taulukossa ja tulostetaan suurin arvo ja indeksi kuvaruudulle. - Ohjelma laskee taukukon arvojen keskiarvon ja tulostaa sen kuvaruudulle - Toteuta taulukon täyttäminen, tulostaminen ja suurimman arvon indeksin haku ja keskiarvon laskenta omina funktioina.
Tehtävä 43. Kirjoita ohjelma joka simuloi kahden nopan heittoa, ohjelma käyttää rand-funktiota noppana. Ohjelma heittää noppia 36000 kertaa ja laskee kunkin heiton noppien silmälukujen summan. Koska yksi noppa voi saada arvoja 1-6, voi summat vaihdella väliltä 2 12, joista summa 7 esiintyy useimmin ja summat 2 ja 12 ovat kaikkein harvinaisimmat. Kirjaa yksiulotteiseen taulukkoon summien esiintymät ja tulosta esiintymismäärät taulukkomuodossa esimerkiksi näin: Summa Lukummäärä 2 987 3 1973 4 2934 5 6 12 1001 Tehtävä 44. Tee ohjelma, joka täyttää 20 alkion taulukon satunnaisluvuilla, joiden arvot ovat välillä 1 20, siten, että sama luku ei esiinny useammin kuin kerran taulukossa. Tulosta taulukon sisältö. Käytä funktioita.
Tehtävä 45. Olet kassanhoitaja ja tehtäväsi on maksaa työntekijöille palkat käteisenä. Tee rahantilausta varten ohjelma, joka tulostaa montako kappaletta kutakin rahayksikköä tarvitset. Ohjelman lähtötietoina annetaan työntekijöille maksettavat palkat ja ohjelman sisäisinä (helposti muutettavissa olevassa muodossa) tietoina annetaan käytössä olevat rahayksiköt (esim. 1 euro, 2 euro, 5 euro jne.) Työntekijöiden määrä voi olla vaihteleva. Tulostusesimerkki: Nimi 1 2 5 10 20 50 100 200 500 Aaltonen Anna 4 1 1 1 1 1 Keränen Kalle 2 1 1 1 1 3 1 Virtanen Ville 1 2 2 Yhteensä: 7 2 3 2 4 4 2
Tehtävä 46. Tee ohjelma, jonka avulla käyttäjä voi pelata alla kuvattua peliä. Käyttäjällä on aluksi rahaa 10 ja minimipanos pelissä on 1. Kone kysyy käyttäjältä panoksen ja sen jälkeen "heittää" käyttäjän puolesta noppia, kunnes käyttäjä on joko voittanut tai hävinnyt. Peli loppuu, kun käyttäjä on menettänyt rahansa tai kyllästynyt pelaamiseen. Noppien heiton tulokset ja rahatilanne tulee olla käyttäjälle hyvin havainnollistetut. Amerikkalaisen nopan säännöt: 1. Pelaaja asettaa aluksi panoksensa. 2. Pelaaja heittää kahta tavallista arpakuutiota. 3. Jos hän saa noppien summaksi 7 tai 11, hän voittaa panoksensa kaksinkertaisena. Jos hän saa 2, 3 tai 12, hän häviää panoksensa. 4. Muilla silmäsummilla, pelaaja heittää, kunnes saa joko 7:n jolloin hän häviää rahaa tai ensimmäisen kierroksensa silmälukunsa uudestaan, jolloin hän voittaa rahaa.
Tehtävä 47. Tee ohjelma, joka laskee piin (π) likiarvon muodostamalla satunnaislukupareja (x,y), jotka kuvaavat pisteen sijaintia neliön sisällä (-1<x<1 ja -1<y<1). Huomaa, että osa pisteistä sattuu silloin myös yksikköympyrän sisälle. Käyttäjä saa valita satunnaislukuparien lukumäärän (esim. väliltä 100-1000). Ohjelma tulostaa satunnaislukujen avulla saadun piin likiarvon ja ilmoittaa, kuinka monta prosenttia (kahden desimaalin tarkkuudella) tämä likiarvo on pienempi tai suurempi kuin seitsemän desimaalin tarkkuudella annettu piin oikea arvo 3.1415926. xy-koordinaatiston yksikköympyrän sisältämän alueen pisteille (x,y) on voimassa epäyhtälö x2+y2<1. Ympyrän ja sellaisen neliön, joka sisältää tämän ympyrän kuvion osoittamalla tavalla, pinta-alojen suhde on π / 4.
Tehtävä 48. Tee Lottorivejä tarkastava ohjelma. Ohjelma lukee aluksi käyttäjältä lottorivejä tai käyttäjän niin halutessa arpoo käyttäjälle rivejä. On myös mahdollista, että käyttäjä laatii itse muutaman ruudukon ja haluaa koneen arpovan lisää ruudukoita. Lopuksi ohjelma arpoo oikeat lottonumerot ja ilmoittaa käyttäjälle, miten hän pärjäsi kullakin ruudukollaan. Ohjelma tulostaa myös käyttäjän ruudukot ja oikean lottorivin. Tehtävä 49. Eräs virvoitusjuomayritys haluaa selvittää tuotekehitysyksikön kehittämien uusien virvoitusjuomien laatua. Virvoitusjuomia maistelee kymmenen koehenkilöä ja he antavat juomille pisteitä 1 5, joista 1 tarkoittaa ällöttävää ja 5 erinomaista. Yrityksessä analysoidaan maistelujen tulokset ja päätetään mitkä virvoitusjuomat hylätään ja mitkä laitetaan markkinoille. Valintakriteerinä on: juoma, jonka yli puolet maistelijoista arvostaa arvosanalla 3 tai enemmän, pääsee jatkoon ja muut hylätään. Tee ohjelma, joka lukee neljän virvoitusjuoman maistelujen tulokset ja sen jälkeen ilmoittaa mitkä juomat hyväksytään ja mitkä hylätään.