-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathohpe-materiaali.html
150 lines (142 loc) · 10 KB
/
ohpe-materiaali.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ohjelmoinnin MOOC</title>
<meta name="viewport" content="initial-scale=1.0, width=device-width">
<link rel="stylesheet" href="http://www.kikatus.com/misc/MOOC/style.css">
<link href="./files/css" rel="stylesheet" type="text/css">
<link href="./files/css(1)" rel="stylesheet" type="text/css">
<link rel="icon" type="image/png" href="http://www.kikatus.com/misc/MOOC/favicon.png">
<style type="text/css"></style></head>
<body id="materials">
<table id="materials-menu">
<tbody><tr>
<th rowspan="2" id="back-to-mooc"><a href="http://www.kikatus.com/misc/MOOC/index.html"></a></th>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Viikko 1</a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Viikko 2</a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Viikko 3</a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#" class="current">Viikko 4</a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Viikko 5</a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Viikko 6</a></td>
<th rowspan="2" id="university"><a href="http://www.kikatus.com/misc/MOOC/index.html"></a></th>
</tr>
<tr>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Viikko 7</a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Viikko 8</a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Viikko 9</a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#" title="Avataan 1. helmikuuta" class="tooltip"><span>Viikko 10</span></a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#" title="Avataan 1. maaliskuuta" class="tooltip"><span>Viikko 11</span></a></td>
<td><a href="http://www.kikatus.com/misc/MOOC/materials.html#" title="Avataan 1. huhtikuuta" class="tooltip"><span>Viikko 12</span></a></td>
</tr>
</tbody></table>
<section class="wrapper">
<a href="http://www.kikatus.com/misc/MOOC/materials.html#materials" id="scroll-to-top"></a>
<p id="copyright">
<img src="./files/copyright.png" width="88" height="31" alt="Creative Commons copyright" class="right">
Tämä materiaali on lisensoitu Creative Commons BY-NC-SA-lisenssillä, joten voit käyttää ja levittää sitä vapaasti, kunhan alkuperäisten tekijöiden nimiä ei poisteta. Jos teet muutoksia materiaaliin ja haluat levittää muunneltua versiota, se täytyy lisensoida samanlaisella vapaalla lisenssillä. Materiaalien käyttö kaupalliseen tarkoitukseen on ilman erillistä lupaa kielletty.
<br><em>Tekijät: Arto Vihavainen ja Matti Luukkainen</em></p>
<section id="content-wide" class="simple-shadow">
<h1>Viikko 4: Ohjelmoinnin MOOC</h1>
<ol id="index-menu">
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#01">Huomautus lukijalle</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Ohjelma ja lähdekoodi</a>
<ol>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 1: Nimi</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 2: Hei Maailma! (Ja Mualima!)</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 3: Kuusi</a></li>
</ol>
</li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Muuttuja ja sijoitus</a>
<ol>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 4: Muuttuvat muuttujat</a></li>
</ol>
</li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Laskentaa</a>
<ol>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 5: Sekunnit vuodessa</a></li>
</ol>
</li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Katenointi eli merkkijonojen yhdistäminen</a>
<ol>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 6: Yhteenlasku</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 7: Kertolasku</a></li>
</ol>
</li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Käyttäjän syötteen lukeminen</a>
<ol>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 8: Summaaja</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 9: Jakaja</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 10: Ympyrän kehän pituus</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 11: Suurempi luku</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 12: Ikien summa</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 13: Robottiohjain</a></li>
</ol>
</li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Valinta ja totuusarvot</a>
<ol>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 14: Positiivinen luku</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 15: Täysi-ikäisyys</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 16: Pariton vai parillinen?</a></li>
</ol>
</li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Toiston alkeet</a>
<ol>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 17: Suurempi luku</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 18: Arvosanat ja pisteet</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 19: Iän tarkistus</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 20: Käyttäjätunnukset</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 21: Karkausvuosi</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 22: Salasana</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 23: Lämpötiloja</a></li>
<li><a href="http://www.kikatus.com/misc/MOOC/materials.html#">Tehtävä 24: Robottiohjain</a></li>
</ol>
</li>
</ol>
<h1 id="01">1. Huomautus lukijalle</h1>
<p>Tämä materiaali on tarkoitettu Helsingin yliopiston tietojenkäsittelytieteen laitoksen Ohjelmoinnin perusteet -kurssille. Materiaali pohjautuu syksyn 2012 ja keväiden 2013, 2012, 2011 ja 2010 kurssimateriaaleihin, joiden sisältöön ovat vaikuttaneet Matti Paksula, Antti Laaksonen, Pekka Mikkola, Juhana Laurinharju, Martin Pärtel, Joel Kaasinen ja Mikael Nousiainen.</p>
<h1>2. Ohjelma ja lähdekoodi</h1>
<p>Nykyaikainen ohjelmointi tapahtuu lähes poikkeuksetta ohjelmointiympäristössä. Ohjelmointiympäristö sisältää joukon ohjelmoijaa auttavia aputoimintoja. Ohjelmointiympäristö ei rakenna ohjelmaa ohjelmoijan puolesta, mutta se muunmuassa vinkkaa helpoista virheistä ohjelmakoodissa ja auttaa ohjelmoijaa hahmottamaan ohjelman rakennetta.</p>
<h2>2.1 Lähdekoodi</h2>
<p>Olemassaolevan muuttujan arvoa halutaan usein muuttaa. Tämä onnistuu tavallisen sijoituslausekkeen avulla. Seuraavassa muuttujan ika arvoa kasvatetaan yhdellä:</p>
<section class="code">
<p>En laita tähän mitään sen enempää esimerkkiä, koska tästä on teillä varmaan valmis plugini.<br>
<span class="code-comment">// Tässä vain kommenttiväri.</span></p>
</section>
<p>Komento <span class="code-highlight">ika = ika + 1</span> siis kasvattaa muuttujan ika arvoa yhdellä. Muuttujan arvon kasvattaminen yhdellä onnistuu myös seuraavasti.</p>
<h4><a href="http://www.kikatus.com/misc/MOOC/materials.html#" class="mission">Tehtävä 1: Nimi </a></h4>
<h4><a href="http://www.kikatus.com/misc/MOOC/materials.html#" class="mission">Tehtävä 2: Muttujan vaihto </a></h4>
<h1>3. Muuttuja ja sijoitus</h1>
<p>
Ohjelmoinnissa eräs keskeinen käsite on <em>muuttuja</em>. Muuttuja kannattaa ajatella lokerona, johon voi tallettaa tietoa. Muuttujaan talletettavalla tiedolla on aina tyyppi. Tyyppejä ovat esimerkiksi teksti eli merkkijono <em>(String)</em>, kokonaisluku <em>(int)</em>, liukuluku <em>(double)</em> ja totuusarvo <em>(boolean)</em>. Muuttujaan asetetaan arvo yhtäsuuruusmerkillä <span class="code-highlight">(=)</span>.
</p><section class="code">
<p>int kuukausia = 12;</p>
</section>
<p>Yllä olevassa asetuslauseessa asetetaan kokonaisluku-tyyppiä (int) olevaan muuttujaan nimeltä kuukausia arvo 12. Asetuslause luetaan "muuttuja kuukausia saa arvon 12".
</p>
<p></p>
</section>
</section>
<section id="footer">
<table class="wrapper">
<tbody><tr>
<td class="footer-intro">
<a href="http://www.kikatus.com/misc/MOOC/materials.html#">MOOC</a> pork belly beef landjaeger, beef ribs frankfurter chuck boudin salami shankle ball tip pig. Meatloaf strip steak spare ribs leberkas salami. Tri-tip ground round pork meatball chuck landjaeger andouille. Sausage drumstick pork loin, beef ribs biltong tail kielbasa. Pig tri-tip drumstick, turducken beef shank pork loin jowl ham hock. Tri-tip ground round pork meatball chuck landjaeger andouille.</td>
<td class="footer-social">
<ul>
<li class="facebook">Tiedotus <a href="http://www.kikatus.com/misc/MOOC/materials.html#">Twitter</a> & <a href="http://www.kikatus.com/misc/MOOC/materials.html#">Facebook</a></li>
<li class="irc">Ohjaus <a href="http://www.kikatus.com/misc/MOOC/materials.html#">IRCnet #mooc.fi</a></li>
<li class="sourceforge">Virheraportit <a href="http://www.kikatus.com/misc/MOOC/materials.html#">SourceForge</a></li>
</ul>
</td>
<td class="footer-copy">
<img src="./files/helsingin-yliopisto-computer-science.png" width="338" height="111" alt="Helsingin yliopisto - Department of computer science">
<span class="block">
<img src="./files/copyright.png" width="88" height="31" alt="Creative Commons copyright" class="right">
Sivuston kaikki materiaali on lisensoitu Creative Commons BY-NC-SA-lisenssillä
</span>
</td>
</tr>
</tbody></table>
</section>
</body></html>