Skip to content

Commit fe4957f

Browse files
author
Jesper Kuutti
committed
Began translating 1.5
1 parent dbf27a6 commit fe4957f

1 file changed

Lines changed: 186 additions & 37 deletions

File tree

data/osa-1/5-laskentaa-luvuilla.md

Lines changed: 186 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,73 @@
11
---
22
path: "/osa-1/5-laskentaa"
3-
title: "Laskentaa luvuilla"
3+
# title: "Laskentaa luvuilla"
4+
title: "Calculating with numbers"
45
---
56

67
<text-box variant='learningObjectives' name='Oppimistavoitteet'>
78

8-
- Osaat tehdä laskutoimintoja muuttujien avulla.
9-
- Osaat muodostaa tulostuslauseita, jossa on mukana sekä laskuoperaatioita (lausekkeita) että merkkijonoja.
9+
<!-- - Osaat tehdä laskutoimintoja muuttujien avulla. -->
10+
11+
- You know how to perform calculations with the help of variables.
12+
13+
<!-- - Osaat muodostaa tulostuslauseita, jossa on mukana sekä laskuoperaatioita (lausekkeita) että merkkijonoja. -->
14+
- You can form printable statements including both calculations (expressions) and strings.
1015

1116
</text-box>
1217

13-
Laskuoperaatiot ovat tuttuja ja suoraviivaisia: yhteenlasku `+`, erotus `-`, kertolasku `*` ja jakolasku `/`. Laskentajärjestys on myös tuttu: laskenta tehdään vasemmalta oikealle sulut huomioon ottaen. Kuitenkin `*` ja `/` lasketaan ennen `+` ja `-` operaatioita, samoin kuin perus- tai kansakoulumatematiikassa on tullut tutuksi.
18+
<!-- Laskuoperaatiot ovat tuttuja ja suoraviivaisia: yhteenlasku `+`, erotus `-`, kertolasku `*` ja jakolasku `/`. Laskentajärjestys on myös tuttu: laskenta tehdään vasemmalta oikealle sulut huomioon ottaen. Kuitenkin `*` ja `/` lasketaan ennen `+` ja `-` operaatioita, samoin kuin perus- tai kansakoulumatematiikassa on tullut tutuksi. -->
1419

15-
```java
20+
The basic mathematical operations are both familiar and straightforward: addition `+`, subtraction `-`, multiplication `*`, and division`/`. Their order follows familiar rules, too: the operations are performed from left to right, taking brackets into account. Yet `*` and `/` precede `+` and `-`, as is familiar from elementary school mathematics.
21+
22+
<!-- ```java
1623
int eka = 2;
1724
System.out.println(eka); // tulostaa 2
1825
int toka = 4;
1926
System.out.println(toka); // tulostaa 4
2027
2128
int summa = eka + toka; // muuttujaan summa asetetaan muuttujien eka ja toka arvojen summa
2229
System.out.println(summa); // tulostaa 6
30+
``` -->
31+
32+
```java
33+
int first = 2;
34+
System.out.println(first); // prints 2
35+
int second = 4;
36+
System.out.println(second); // prints 4
37+
38+
int sum = first + second; // The sum of the values of the variables first and second is assigned to the variable sum
39+
System.out.println(sum); // prints 6
2340
```
2441

25-
## Laskujärjestys ja sulut
42+
<!-- ## Laskujärjestys ja sulut -->
43+
## Order of operations and brackets
2644

27-
Laskujärjestykseen voi vaikuttaa sulkujen avulla. Sulkujen sisällä olevat laskuoperaatiot suoritetaan ennen niiden ulkopuolella olevia laskuoperaatioita.
45+
<!-- Laskujärjestykseen voi vaikuttaa sulkujen avulla. Sulkujen sisällä olevat laskuoperaatiot suoritetaan ennen niiden ulkopuolella olevia laskuoperaatioita. -->
2846

29-
```java
47+
It is possible to affect the order of operations with brackets. The operations contained within brackets are performed before the ones outside.
48+
49+
<!-- ```java
3050
int laskuSuluilla = (1 + 1) + 3 * (2 + 5);
3151
System.out.println(laskuSuluilla); // tulostaa 23
3252
3353
int laskuSuluitta = 1 + 1 + 3 * 2 + 5;
3454
System.out.println(laskuSuluitta); // tulostaa 13
55+
``` -->
56+
57+
```java
58+
int calculationWithBrackets = (1 + 1) = 3 * (2 + 5);
59+
System.out.println(calculationWithBrackets); // prints 23
60+
61+
int calculationWithoutBrackets = 1 + 1 + 3 * 2 + 5;
62+
System.out.println(calculationWithoutBrackets); // prints 13
63+
3564
```
3665

37-
Yllä olevan esimerkin voi jakaa myös osiin.
66+
<!-- Yllä olevan esimerkin voi jakaa myös osiin. -->
3867

39-
```java
68+
The example above can also be divided into steps.
69+
70+
<!-- ```java
4071
int laskuSuluilla = (1 + 1);
4172
System.out.println(laskuSuluilla); // tulostaa 2
4273
laskuSuluilla = laskuSuluilla + 3 * (2 + 5);
@@ -46,46 +77,99 @@ int laskuSuluitta = 1 + 1;
4677
laskuSuluitta = laskuSuluitta + 3 * 2;
4778
laskuSuluitta = laskuSuluitta + 5;
4879
System.out.println(laskuSuluitta); // tulostaa 13
80+
``` -->
81+
82+
```java
83+
int calculationWithBrackets = (1 + 1);
84+
System.out.println(calculationWithBrackets); // prints 2
85+
calculationWithBrackets = calculationWithBrackets + 3 * (2 + 5);
86+
System.out.println(calculationWithBrackets); // prints 23
87+
88+
int calculationWithoutBrackets = 1 + 1;
89+
calculationWithoutBrackets = calculationWithoutBrackets + 3 * 2;
90+
calculationWithoutBrackets = calculationWithoutBrackets + 5;
91+
System.out.println(calculationWithoutBrackets); // prints 13
4992
```
5093

51-
<programming-exercise name="Sekunnit vuorokaudessa" tmcname='osa01-Osa01_16.SekunnitVuorokaudessa'>
94+
<!-- <programming-exercise name="Sekunnit vuorokaudessa" tmcname='osa01-Osa01_16.SekunnitVuorokaudessa'> -->
5295

53-
Toteuta tehtäväpohjaan ohjelma, joka kysyy käyttäjältä vuorokausien lukumäärää. Tämän jälkeen ohjelma tulostaa sekuntien määrän annetuissa vuorokausissa.
96+
<programming-exercise name="Seconds in a day"
97+
tmcname='osa01-Osa01_16.SekunnitVuorokaudessa'>
5498

55-
Opimme aiemmin, että luvun lukeminen onnistuu seuraavasti:
99+
<!-- Toteuta tehtäväpohjaan ohjelma, joka kysyy käyttäjältä vuorokausien lukumäärää. Tämän jälkeen ohjelma tulostaa sekuntien määrän annetuissa vuorokausissa. -->
56100

57-
```java
101+
In the exercise template, implement a program that asks the user for the number of days. After this, the program prints the number of seconds in the given number of days.
102+
103+
<!-- Opimme aiemmin, että luvun lukeminen onnistuu seuraavasti: -->
104+
105+
Earlier we learned to read an integer in the following manner:
106+
107+
<!-- ```java
58108
Scanner lukija = new Scanner(System.in);
59109
60110
System.out.println("Kirjoita luku ");
61111
int luku = Integer.valueOf(lukija.nextLine());
62112
System.out.println("Kirjoitit " + luku);
113+
``` -->
114+
115+
```java
116+
Scanner scanner = new Scanner(System.in);
117+
118+
System.out.println("Write an integer ");
119+
int number = Integer.valueOf(scanner.nextLine());
120+
System.out.println("You wrote " + number);
63121
```
64122

65-
Esimerkkitulostuksia:
123+
<!-- Esimerkkitulostuksia: -->
66124

67-
<sample-output>
125+
Print examples:
126+
127+
<!-- <sample-output>
68128
69129
Kuinka monen vuorokauden sekunnit tulostetaan?
70130
**1**
71131
86400
72132
73-
</sample-output>
133+
</sample-output> -->
74134

75135
<sample-output>
76136

137+
For how many days will the number of seconds be printed?
138+
**1**
139+
86400
140+
141+
</sample-output>
142+
143+
<!-- <sample-output>
144+
77145
Kuinka monen vuorokauden sekunnit tulostetaan?
78146
**3**
79147
259200
80148
81-
</sample-output>
149+
</sample-output> -->
82150

83151
<sample-output>
84152

153+
For how many days will the number of seconds be printed?
154+
**3**
155+
259200
156+
157+
</sample-output>
158+
159+
<!-- <sample-output>
160+
85161
Kuinka monen vuorokauden sekunnit tulostetaan?
86162
**7**
87163
604800
88164
165+
</sample-output> -->
166+
167+
<sample-output>
168+
169+
For how many days will the number of seconds be printed?
170+
**7**
171+
604800
172+
89173
</sample-output>
90174

91175
</programming-exercise>
@@ -94,78 +178,143 @@ Kuinka monen vuorokauden sekunnit tulostetaan?
94178
<quiznator id="5c12b7f263de8e5db0cf8b8f"></quiznator>
95179

96180

97-
<text-box variant='hint' name='Lauseke ja lause'>
181+
<text-box variant='hint' name='Expression and statement'>
98182

99-
Lauseke (expression) on arvojen yhdistelmä, joka muuntuu arvoksi laskuoperaation tai evaluaation yhteydessä. Alla oleva lause sisältää lausekkeen `1 + 1 + 3 * 2 + 5`, joka evaluoidaan ennen arvon asetusta muuttujaan.
183+
<!-- Lauseke (expression) on arvojen yhdistelmä, joka muuntuu arvoksi laskuoperaation tai evaluaation yhteydessä. Alla oleva lause sisältää lausekkeen `1 + 1 + 3 * 2 + 5`, joka evaluoidaan ennen arvon asetusta muuttujaan. -->
184+
An expression is a combination of values which turns into a value when it is part of an operation or evaluated. The statement below includes the expression `1 + 1 + 3 * 2 + 5` which is evaluated before the value is assigned to the variable.
100185

101-
```java
186+
<!-- ```java
102187
int laskuSuluitta = 1 + 1 + 3 * 2 + 5;
188+
``` -->
189+
190+
```java
191+
int calculationWithoutBrackets = 1 + 1 + 3 * 2 + 5;
103192
```
104193

105-
Lausekkeen evaluaatio tapahtuu aina ennen muuttujan arvon asetusta, eli yllä lasku "1 + 1 + 3 * 2 + 5" suoritetaan ennen tuloksen asetusta muuttujaan.
194+
<!-- Lausekkeen evaluaatio tapahtuu aina ennen muuttujan arvon asetusta, eli yllä lasku "1 + 1 + 3 * 2 + 5" suoritetaan ennen tuloksen asetusta muuttujaan. -->
195+
196+
The evaluation of an expression always precedes the placement of its value, so in the example above the calculation "1 + 1 + 3 * 2 + 5" is performed before placing the result in the variable.
106197

107198
</text-box>
108199

109200

110-
Lausekkeen evaluointi tapahtuu ohjelmakoodissa siinä kohtaa, missä lauseke on. Evaluointi onnistuu siis esimerkiksi myös tulostuslauseen yhteydessä, jos lauseketta käytetään tulostuslauseen parametrin arvon laskemisessa.
201+
<!-- Lausekkeen evaluointi tapahtuu ohjelmakoodissa siinä kohtaa, missä lauseke on. Evaluointi onnistuu siis esimerkiksi myös tulostuslauseen yhteydessä, jos lauseketta käytetään tulostuslauseen parametrin arvon laskemisessa. -->
111202

112-
```java
203+
The evaluation of an expression in the code occurs at the place it is written. Therefore evaluation is possible in the case of a print statement if the value of the parameter for the print statement is calculated from an expression.
204+
205+
<!-- ```java
113206
int eka = 2;
114207
int toka = 4;
115208
116209
System.out.println(eka + toka); // tulostaa 6
117210
System.out.println(2 + toka - eka - toka); // tulostaa 0
211+
``` -->
212+
213+
```java
214+
int first = 2;
215+
int second = 4;
216+
217+
System.out.println(first + second); // prints 6
218+
System.out.println(2 + second - first - second); // prints 0
118219
```
119220

120-
Lauseke ei muuta muuttujassa olevaa arvoa, ellei lausekkeen lopputulosta aseteta muuttujan arvoksi tai anneta parametrina esimerkiksi tulostukselle.
221+
<!-- Lauseke ei muuta muuttujassa olevaa arvoa, ellei lausekkeen lopputulosta aseteta muuttujan arvoksi tai anneta parametrina esimerkiksi tulostukselle. -->
121222

122-
```java
223+
An expression does not change the value stored in a variable unless the end result is assigned to a variable or used as a parameter to printing, for instance.
224+
225+
<!-- ```java
123226
int eka = 2;
124227
int toka = 4;
125228
126229
// alla oleva lauseke ei edes toimi, sillä lauseketta
127230
// ei aseteta minkään muuttujan arvoksi tai anneta parametrina
128231
// tulostuslauseelle
129232
eka + toka;
233+
``` -->
234+
235+
```java
236+
int first = 2;
237+
int second = 4;
238+
239+
// the expression below does not even work, since
240+
// the result is not assigned to any variable
241+
// or given as a parameter to a print statement
242+
first + second;
130243
```
131244

132245
<quiznator id="5c12b7f263de8e5db0cf8b90"></quiznator>
133246

134247

135-
## Laskentaa ja tulostamista
248+
<!-- ## Laskentaa ja tulostamista -->
249+
## Calculating and printing
136250

137-
Muuttujan arvon voi tulostaa komennolla `System.out.println`. Tulostettavaan hipsuilla merkittyyn merkkijonoon, esim. "Pituus ", voidaan lisätä muuta tulostettavaa operaation `+` avulla.
251+
<!-- Muuttujan arvon voi tulostaa komennolla `System.out.println`. Tulostettavaan hipsuilla merkittyyn merkkijonoon, esim. "Pituus ", voidaan lisätä muuta tulostettavaa operaation `+` avulla. -->
252+
The command `System.out.println` prints the value of a variable. The string to be printed, which is marked by quotation marks, can be appended with the operation `+`.
138253

139-
```java
254+
<!-- ```java
140255
int pituus = 42;
141256
System.out.println("Pituus " + pituus);
257+
``` -->
258+
259+
```java
260+
int length = 42;
261+
System.out.println("Length " + length);
142262
```
143263

144-
<sample-output>
264+
<!-- <sample-output>
145265
146266
Pituus 42
147267
268+
</sample-output> -->
269+
270+
<sample-output>
271+
272+
Length 42
273+
148274
</sample-output>
149275

276+
<!-- ```java
277+
System.out.println("tuossa on kokonaisluku -- > " + 2);
278+
System.out.println(2 + " < -- tuossa on kokonaisluku");
279+
```
280+
-->
281+
150282
```java
151-
System.out.println("tuossa on kokonaisluku --> " + 2);
152-
System.out.println(2 + " <-- tuossa on kokonaisluku");
283+
System.out.println("that is an integer --> " + 2);
284+
System.out.println(2 + " <-- that is an integer");
153285
```
154286

155-
<sample-output>
156287

157-
tuossa on kokonaisluku --> 2
288+
<!-- <sample-output>
289+
290+
tuossa on kokonaisluku -- > 2
158291
2 <-- tuossa on kokonaisluku
159292
293+
</sample-output> -->
294+
295+
<sample-output>
296+
297+
that is an integer --> 2
298+
2 <-- that is an integer
299+
160300
</sample-output>
161301

162-
Jos toinen operaation `+` kohteista on merkkijono, muutetaan myös toinen operaation kohteista merkkijonoksi ohjelman suorituksen yhteydessä. Alla olevassa esimerkissä kokonaisluku `2` on muutettu merkkijonoksi "2", ja siihen on yhdistetty merkkijono.
302+
<!-- Jos toinen operaation `+` kohteista on merkkijono, muutetaan myös toinen operaation kohteista merkkijonoksi ohjelman suorituksen yhteydessä. Alla olevassa esimerkissä kokonaisluku `2` on muutettu merkkijonoksi "2", ja siihen on yhdistetty merkkijono. -->
163303

164-
Aiemmin esitellyt laskusäännöt pätevät täälläkin:
304+
If one of the operands of the operation `+` is a string, the other operand will be changed into a string as well when the program executes. In the example below, the integer `2` is turned into the string "2", after which a string is appended to it.
165305

166-
```java
306+
<!-- Aiemmin esitellyt laskusäännöt pätevät täälläkin: -->
307+
308+
The rules of operation precedence apply in this context, too:
309+
310+
<!-- ```java
167311
System.out.println("Neljä: " + (2 + 2));
168312
System.out.println("Mutta! kaksikymmentäkaksi: " + 2 + 2);
313+
``` -->
314+
315+
```java
316+
System.out.println("Four: " + (2 + 2));
317+
System.out.println("But! twenty-two" + 2 + 2);
169318
```
170319

171320
<sample-output>

0 commit comments

Comments
 (0)