Java tehtäviä konsoli ratkaisu2d

Mureakuha

Loikkaa: valikkoon, hakuun

Tehtävä:

Kirjoita ohjelma, jossa käyttäjältä kysytään satunnaisia kertolaskuja ja ohjelma pitää kirjaa oikeiden ja väärien vastauksista lukumäärästä. Ohjelma lopettaa laskennan negatiivisella vastauksella. Javassa satunnaislukuja tuotetaan Math.random()-metodilla (esim. double a = Math.random();) .

import java.io.*;
 
public class Laskut
{
 
  public static void main (String[] args)
  {
    int a, b, vastaus, oikein = 0, vaarin = 0;
 
    do
    {
        a = (int)(Math.random() * 24); // arpoo satunnaisluvut
        b = (int)(Math.random() * 17); // ja jakaa ne pienemmiksi
 
        System.out.print("\nPaljonko on " + a + " * " + b + " = ");
 
        try
        {
          byte bTemp[] = new byte[10];
          System.in.read(bTemp);
          String bufferi = new String(bTemp);
          bufferi = bufferi.substring(0, bufferi.indexOf('\r'));
          vastaus = Integer.parseInt(bufferi);
 
          if (vastaus == a * b)
          {
              System.out.println("Oikein !");
              oikein++;
          }
          else
          {
              System.out.println("Väärin, oikea vastaus on " + a*b);
              vaarin++;
          }
        } 
        catch(Exception e) 
        { 
          System.out.println("Virhe!!"); 
          vastaus = -1;
        }
 
    } while (vastaus >= 0);
 
    System.out.println("\nOikeita vastauksia: " + oikein);
    System.out.println("Vääriä vastauksia: " + vaarin);
  }
}
Tämän dokumentin kopiointi, levittäminen sekä muokkaaminen on sallittua GNU Free Documentation Licensen version 1.2 tai uudemman Free Software Foundationin julkaiseman version mukaisesti, ilman muuttumattomuuslauseketta tai kansitekstejä. Tätä koskee vastuuvapaus.
Kopio lisenssistä (englanniksi) löytyy täältä.

Alkuperäinen (c) Petteri Hämäläinen

Henkilökohtaiset työkalut