Kysymys

ohjelmoija?

Kyse on ohjelmasta, jossa kysytään käyttäjältä syötteenä lukujen määrä. Nämä luvut annetaan vuorotellen, esim.

Anna lukujen määrä:
3
Anna 1. luku:
2
Anna 2. luku:
3
Anna 3. luku:
5

Miten näistä luvuista saisi maksimin ja minimin laskettua? Kun laitoin perään normaalin system.out. println-jutun, tulostuu maksimiksi ja minimiksi viimeiseksi annettu luku.

Entä miten nämä luvut saisi tulostettua yhdelle riville peräkkäin sen jälkeen kun ne on syötetty koneelle?

Ohjelma pitäisi olla main-luokassa eikä mitään muita metodeja tms.

4

482

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • tonttu

      java.util.Scanner in = new java.util.Scanner(System.in);
      System.out.println("Anna lukujen määrä:");
      int maara = in.nextInt();
      int[] luvut = new int[maara];
      for(int i = 0; i < maara; i )
      {
      System.out.println("Anna " (i 1) ". luku:");
      luvut[i] = in.nextInt();
      }

      int max = luvut[0];
      int min = luvut[0];
      for(int i = 0; i < maara; i )
      {
      if(max < luvut[i])
      max = luvut[i];
      if(min > luvut[i])
      min = luvut[i];
      }

      System.out.print("Syötetyt luvut: ");
      for(int i = 0; i < maara; i )
      System.out.print(luvut[i] " ");
      System.out.println();
      System.out.println("Maksimi: " max);
      System.out.println("Minimi: " min);

      • sen tehtyä

        mitenkään ilman taulukkoa?


      • vain kolme lukua
        sen tehtyä kirjoitti:

        mitenkään ilman taulukkoa?

        ei tullut sulle mieleen if-else valintarakenne.
        Koska lukuja on vain kolme ei ole edes vaikea tehdä. Sinullahan on nyt kolme lukua; luku1, luku2, luku3.

        Vertaa niiden kokoa keskenään

        if(luku1>luku2 && luku1>luku3)
        suurin=luku1;

        if(luku2>luku1 && luku2>luku3)
        suurin=luku2;

        if(luku3>luku1 && luku3>luku2)
        suurin=luku3;

        pienimmälle sitten toistepäin.

        Ihan ok tapa jos noin vähän, mutta jos numeroita olisi paljon olisi tuolla tavalla kusessa.

        Siksi valintalajittelukeinot ovat parempia.


    • aksjfökjasdf

      --- ESIMERKKI 1 ALKAA ---

      import java.util.Scanner;

      public class Esimerkki {
         public static void main(String[] args) {
            Scanner lukija = new Scanner(System.in);
            String luvut = "";
            int minimi = 0, maksimi = 0, luku = 0;
            
            System.out.println("Anna lukujen määrä:");
            int lukuja = lukija.nextInt();
            
            for (int i = 0; i < lukuja; i ) {
               System.out.println("Anna " (i 1) " luku :");
               luku = lukija.nextInt();
               minimi = ((i == 0) || (luku < minimi)) ? luku : minimi;
               maksimi = ((i == 0) || (luku > maksimi)) ? luku : maksimi;
               luvut = luku " ";
            }
            
            System.out.println("Syötit luvut: " luvut);
            System.out.println("Minimi: " minimi);
            System.out.println("Maksimi: " maksimi);
         }
      }


      --- ESIMERKKI 1 LOPPUU ---




      --- ESIMERKKI 2 ALKAA ---

      import java.util.Scanner;
      import java.util.Vector;

      public class Esimerkki {
         public static void main(String[] args) {
            Scanner lukija = new Scanner(System.in);
            Vector luvut = new Vector();
            
            System.out.println("Anna lukujen määrä:");
            int lukuja = lukija.nextInt();
            
            for (int i = 0; i < lukuja; i ) {
               System.out.println("Anna " (i 1) " luku :");
               luvut.add(lukija.nextInt());      
            }
            
            int minimi = 0, maksimi = 0, luku = 0;
            System.out.print("Syötit luvut: ");
            for (int i = 0; i < lukuja; i ) {
               System.out.print((luku = luvut.get(i)) " ");
               minimi = ((i == 0) || (luku < minimi)) ? luku : minimi;
               maksimi = ((i == 0) || (luku > maksimi)) ? luku : maksimi;
            }
            
            System.out.println("\nMinimi: " minimi);
            System.out.println("Maksimi: " maksimi);
         }
      }

      --- ESIMERKKI 2 LOPPUU ---




      --- ESIMERKKI 3 ALKAA ---

      import java.util.Collections;
      import java.util.Scanner;
      import java.util.Vector;

      public class Esimerkki {
         public static void main(String[] args) {
            Scanner lukija = new Scanner(System.in);
            Vector luvut = new Vector();
            
            System.out.println("Anna lukujen määrä:");
            int lukuja = lukija.nextInt();
            
            for (int i = 0; i < lukuja; i ) {
               System.out.println("Anna " (i 1) " luku :");
               luvut.add(lukija.nextInt());      
            }
            
            System.out.print("Syötit luvut: ");
            for (int i : luvut)
               System.out.print(i " ");
            
            Collections.sort(luvut);
            System.out.println("\nMinimi: " luvut.firstElement());
            System.out.println("Maksimi: " luvut.lastElement());
         }
      }

      --- ESIMERKKI 3 LOPPUU ---

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Kuka maksaa Elokapinan töhrinnän?

      Vieläkö tukevat Elokapinan toimintaa mm. Aki Kaurismäki, Sofi Oksanen, Paleface, Koneen Säätiö ym. ? Kenen kukkarosta ot
      Maailman menoa
      585
      3879
    2. Muuttaisiko viesti mitään

      Haluaisin laittaa viestin, mutta muuttaisiko se mitään. Oletko yhä yhtä ehdoton vai valmis kyseenalaistamaan asenteesi j
      Ikävä
      48
      3318
    3. Jos sinulla kiinnostaisi

      Nyt, miten antaisit minun ymmärtää sen?
      Ikävä
      38
      2801
    4. Valpuri Nykänen elokapina

      Aikas kiihkomielinen nainen kun mtv:n uutiset haastatteli. Tuollaisiako ne kaikki on.
      Maailman menoa
      66
      2759
    5. Oon vähän ihastunut suhun nainen

      Vaikka toisin jokin aika sitten väitin mutta saat mut haluamaan olemaan parempi ihminen :)
      Ikävä
      19
      2144
    6. Jospa me nähtäisiin

      Sinne suuntaan menossa🤣
      Ikävä
      32
      2091
    7. Se että tavattiin

      Hyvin arkisissa olosuhteissa oli hyvä asia. Olimme molemmat lähestulkoon aina sitä mitä oikeasti olemme. Tietysti pieni
      Ikävä
      12
      1967
    8. Elämä jatkuu

      Onneksi ilman sinua
      Ikävä
      29
      1865
    9. Oot pala mun sielua

      Jos toivot, että lähden mä lähden. Jos toivot, että jään mä jään. Koen, että olet mun sielunkumppani, mutta lämmöllä my
      Ikävä
      17
      1810
    10. Hei T........

      Ajattelin kertoa että edelleen välillä käyt mielessä.... En ole unohtanut sinua, enkä varmasti ikinä... Vaikka on kulunu
      Suhteet
      47
      1759
    Aihe