<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="https://peda.net/:static/533/atom.xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>7. Satunnaisuus</title>
<id>https://peda.net/id/5d854f5440c</id>
<updated>2019-03-08T10:58:53+02:00</updated>
<link href="https://peda.net/id/5d854f5440c:atom" rel="self" />
<link href="https://peda.net/jyvaskyla/ict/palvelut/ohjelmointi-robotiikka/mp/6sl#top" rel="alternate" />
<logo>https://peda.net/:static/533/peda.net.logo.bg.svg</logo>
<rights type="html">&lt;div class=&quot;license&quot;&gt;Tämän sivun lisenssi &lt;a rel=&quot;license&quot; href=&quot;https://peda.net/info&quot;&gt;Peda.net-yleislisenssi&lt;/a&gt;&lt;/div&gt;&#10;</rights>

<entry>
<title>Satunnaisuus, random-kirjasto</title>
<id>https://peda.net/id/7868239a40c</id>
<updated>2022-12-07T17:20:00+02:00</updated>
<link href="https://peda.net/jyvaskyla/ict/palvelut/ohjelmointi-robotiikka/mp/6sl/srl#top" />
<content type="html">Joskus ohjelmien toiminnassa halutaan hyödyntää satunnaisuutta. Tilanne tulee vastaan usein esimerkiksi peleissä. Näissä tapauksissa hyödynnetään random-kirjaston käskyjä.&lt;br/&gt;&#10;&lt;br/&gt;&#10;&lt;b&gt;Satunnaisuus ja listat&lt;/b&gt;&lt;br/&gt;&#10;&lt;br/&gt;&#10;Luodaan lista jumppaliikkeistä ja pyydetään mikrobittiä valitsemaan niistä yksi joka rullaa näytöllä.&lt;br/&gt;&#10;&lt;br/&gt;&#10;&lt;a href=&quot;https://peda.net/jyvaskyla/ict/palvelut/ohjelmointi-robotiikka/mp/6sl/srl/random1-png#top&quot; title=&quot;random1.png&quot;&gt;&lt;img src=&quot;https://peda.net/jyvaskyla/ict/palvelut/ohjelmointi-robotiikka/mp/6sl/srl/random1-png:file/photo/4a5accdd773fb4044ff3ca928f9797e1438b363e/random1.png&quot; alt=&quot;&quot; title=&quot;random1.png&quot; class=&quot;inline&quot; loading=&quot;lazy&quot;/&gt;&lt;/a&gt;&lt;br/&gt;&#10;&lt;br/&gt;&#10;Ensimmäiseksi otetaan random kirjaston käskyt käyttöön &lt;br/&gt;&#10;&lt;strong class=&quot;editor red&quot;&gt;import random&lt;/strong&gt;&lt;br/&gt;&#10;&lt;br/&gt;&#10;Luodaan lista kirjoittamalla listan nimi ja = merkin oikelle puolelle hakasulkujen sisälle listan jäsenet pilkulla toisistaan erotettuna.&lt;br/&gt;&#10;&lt;br/&gt;&#10;Seuraavaksi tarvitaan kaksi sisäkkäistä käskyä. Käytetään ensin tuttua komentoa &lt;strong class=&quot;editor red&quot;&gt;display.scroll()&lt;/strong&gt; ja sulkujen sisään laitetaan argumentiksi  &lt;br/&gt;&#10;&lt;strong class=&quot;editor red&quot;&gt;random.choice()&lt;/strong&gt; metodi. Tämän argumentiksi puolestaan laitetaan listan nimi. Ole huolellinen että laitat oikean määrän sulkuja.&lt;br/&gt;&#10;&lt;br/&gt;&#10;Lopputuloksena ohjelma tulostaa satunnaisen listan jäsenen nimen micro:bitin näytölle.&lt;br/&gt;&#10;&lt;br/&gt;&#10;&lt;b&gt;Harjoitus:&lt;/b&gt; Kirjoita ohjelma joka valitsee satunnaiseksi voittajaksi yhden oppilaan viiden oppilaan ryhmästä. Voittajan nimi rullaa mikro:bitin näytölle.&lt;br/&gt;&#10;&lt;br/&gt;&#10;&lt;b&gt;Satunnaisesti valittavat numerot&lt;br/&gt;&#10;&lt;br/&gt;&#10;&lt;/b&gt;Random kirjasto tarjoaa useita tapoja luoda satunnaisia numeroita. Luodaan ohjelma joka antaa satunnaisen kokonaisluvun 1-10 väliltä.&lt;br/&gt;&#10;&lt;br/&gt;&#10;Yksi tapa olisi tietysti luoda numeroista lista kuten edellisessä esimerkissä. Myös yksinkertaisempia vaihtoehtoja kuitenkin löytyy. &lt;br/&gt;&#10;&lt;br/&gt;&#10;&lt;a href=&quot;https://peda.net/jyvaskyla/ict/palvelut/ohjelmointi-robotiikka/mp/6sl/srl/random2-png#top&quot; title=&quot;random2.png&quot;&gt;&lt;img src=&quot;https://peda.net/jyvaskyla/ict/palvelut/ohjelmointi-robotiikka/mp/6sl/srl/random2-png:file/photo/0823640fec2b47d013bd875988d770a24832dcf1/random2.png&quot; alt=&quot;&quot; title=&quot;random2.png&quot; class=&quot;inline&quot; loading=&quot;lazy&quot;/&gt;&lt;/a&gt;&lt;br/&gt;&#10;&lt;br/&gt;&#10;Käytetään tuttua &lt;strong class=&quot;editor red&quot;&gt;display.show()&lt;/strong&gt; käskyä. Koska display.show osaa näyttää mikrobitin näytöllä ainoastaan merkkijonoja meidän on ensin muutettava kokonaisluku(int) merkkijonoksi (str). Tämän jälkeen luodaan satunnaisluku käskyllä &lt;strong class=&quot;editor red&quot;&gt;random.randint()&lt;/strong&gt; Sulkujen sisällä annetaan argumentteina ensimmäinen ja viimeinen luku joista arvonta suoritetaan. Ole taas tarkkana sulkujen kanssa!&lt;br/&gt;&#10;&lt;br/&gt;&#10;Hieman eritavalla toimii metodi &lt;strong class=&quot;editor red&quot;&gt;random.randrange() &lt;/strong&gt;Siinä sulkuihin annetaan argumentiksi vain yksi luku ja tulosteeksi arvotaan kokonaisluku nollan ja tuon luvun väliltä. Kuitenkin niin että sulkuihin kirjoitettu luku ei tule enää mukaan arvontaan.&lt;br/&gt;&#10;&lt;br/&gt;&#10;&lt;a href=&quot;https://peda.net/jyvaskyla/ict/palvelut/ohjelmointi-robotiikka/mp/6sl/srl/random3-png#top&quot; title=&quot;random3.png&quot;&gt;&lt;img src=&quot;https://peda.net/jyvaskyla/ict/palvelut/ohjelmointi-robotiikka/mp/6sl/srl/random3-png:file/photo/7ece4281f6023da2b1964f4ce09cf3b1068af53c/random3.png&quot; alt=&quot;&quot; title=&quot;random3.png&quot; class=&quot;inline&quot; loading=&quot;lazy&quot;/&gt;&lt;/a&gt;&lt;br/&gt;&#10;&lt;br/&gt;&#10;Esim. Ylläolevassa esimerkissä ohjelma tulostaa mikro:bitin näytölle jonkun kokonaisluvun väliltä 0-9.&lt;br/&gt;&#10;&lt;br/&gt;&#10;&lt;b&gt;Harjoitus:&lt;/b&gt; Tee ohjelma joka toimii noppana, eli arpoo satunnaisen kokonaisluvun väliltä 1-6. Kokeile käyttää sekä random.randint() että random.randrange() metodeja nopan teossa.&lt;br/&gt;&#10;&lt;br/&gt;&#10;&lt;b&gt;BONUS&lt;/b&gt;: Muokkaa ohjelmaa niin, että aina käyttäjän painaessa painiketta A arvotaan uusi numero.</content>
<published>2019-03-07T13:30:54+02:00</published>
</entry>


</feed>