|
|
- Tässä tehtävässä sinun tulee kirjoittaa luokka Numerot. Luokassa on oltava seuraavaksi kuvaillut metodit täsmälleen sellaisina kuin ne on esitetty.
-
- public static int pienin(List<Integer> arvot)
- Kirjoita metodi "pienin", joka ottaa parametrinaan listan kokonaislukuja (Integer) ja palauttaa pienimmän listalla esiintyvän kokonaisluvun.
-
- public static int suurin(List<Integer> arvot)
- Kirjoita metodi "suurin", joka ottaa parametrinaan listan kokonaislukuja (Integer) ja palauttaa suurimman listalla esiintyvän kokonaisluvun.
-
- public static int summa(List<Integer> arvot)
- Kirjoita metodi "summa", joka ottaa parametrinaan listan kokonaislukuja (Integer) ja palauttaa sen arvojen summan. Jos metodille annettu lista on tyhjä (pituus on 0), metodin tulee palauttaa summaksi 0.
-
-
- Kirjoita myös main-metodi, jossa kokeilet haluamallasi tavalla, että kirjoittamasi metodit toimivat oikein. Voit kirjoittaa main-metodin samaan Numerot-luokkaan tai vaihtoehtoisesti myös erilliseen luokkaan, jota ei tarvitse palauttaa.
-
- HUOM! Tässä tehtävässä main-metodisi saa tulostaa mitä tahansa, mutta pienin, suurin ja summa -metodit eivät saa tulostaa mitään. Metodit eivät saa myöskään muuttaa parametrina annettua listaa. Arviointi ei perustu kirjoittamaasi main-metodiin, vaan erilliseen valmiiksi kirjoitettuun testiluokkaan.
-
- ```
- Example output:
- ## Testi 1 ##
-
- Muodostetaan lista: [3, 42, 23, 98]
- Listan pienin arvo on: 3
- Listan suurin arvo on: 98
- Listan arvojen summa on: 166
-
- ## Testi 2 ##
-
- Muodostetaan lista: [98, 42, 5, 1, -70]
- Listan pienin arvo on: -70
- Listan suurin arvo on: 98
- Listan arvojen summa on: 76
- ```
-
- --------------------
-
- **Numerot.java**
-
- ```
- import java.util.ArrayList;
- import java.util.List;
-
- public class Numerot {
-
- public static void main(String[] args) {
- List<Integer> lukulista = new ArrayList<Integer>();
-
- lukulista.add(3);
- lukulista.add(42);
- lukulista.add(23);
- lukulista.add(98);
- Numerot.muodostaLista(1, lukulista);
-
- //
- lukulista.clear();
-
- lukulista.add(98);
- lukulista.add(42);
- lukulista.add(5);
- lukulista.add(1);
- lukulista.add(-70);
- Numerot.muodostaLista(2, lukulista);
- }
-
- public static void muodostaLista(int num, List<Integer> listaLuvut) {
- System.out.printf("## Testi %d ##\n\n", num);
- System.out.printf("Muodostetaan lista: %s\n", listaLuvut);
-
- int pienin = Numerot.pienin(listaLuvut);
- int suurin = Numerot.suurin(listaLuvut);
- int summa = Numerot.summa(listaLuvut);
-
- System.out.printf(
- "Listan pienin arvo on: %d\n" +
- "Listan suurin arvo on: %d\n" +
- "Listan arvojen summa on: %d\n\n",
- pienin, suurin, summa
- );
-
- }
-
- public static int pienin(List<Integer> arvot) {
-
- int i = 0, min = arvot.get(0);
- while (i < arvot.size()) {
- if (min > arvot.get(i)) {
- min = arvot.get(i);
- }
- i++;
- }
-
- return min;
- }
-
- public static int suurin(List<Integer> arvot) {
-
- int i = 0, max = arvot.get(0);
- while (i < arvot.size()) {
- if (max < arvot.get(i)) {
- max = arvot.get(i);
- }
- i++;
- }
-
- return max;
- }
-
- public static int summa(List<Integer> arvot) {
-
- int i = 0, sum = 0;
- while (i < arvot.size()) {
- sum += arvot.get(i);
- i++;
- }
-
- return sum;
- }
- }
- ```
|