Hjælp til opgave med generering af tal
Jeg har fået en opgave hvor jeg skal opstille nogle regnestykker med henholdsvis 1,2,3 og 4 cifre.Hvis man vælger regnestykker med 4 cifre skal jeg generer tal der kun indholder 4 tal. Det lykkedes mig også nogle gange med jeg kan ikke slippe for programmet generer tal med 3 cifre. Koden jeg er nået frem til er her:
import java.util.*;
public class Ob1_1
{
public static void main (String[]arg)
{
System.out.println("velkommen til regneprogrammet");
System.out.println("");
int cifre=0, a=0, b=1, c=1, d=0, f=0, g=0, e=0, slut =2;
double svar=0, opg=0, k=0;
while (slut ==2)
{
java.util.Scanner tastatur = new java.util.Scanner(System.in);
System.out.println("Angiv antallet af opgaver");
opg=tastatur.nextInt();
System.out.println("Angiv cifre i regnestykkerne mellem 1 og 4");
cifre=tastatur.nextInt();
Random generator = new Random();
if (cifre == 4) f =8999; g = 1000;
if (cifre == 3) f = 899; g = 100;
if (cifre == 2) f = 89; g = 10;
if (cifre == 1) f = 10; g = 0;
while (opg > a)
{
b = generator.nextInt(f)+ g;
c = generator.nextInt(f)+ g;
d = b + c;
a++;
System.out.println(b + "+" + c+ "= ?");
e=tastatur.nextInt();
if (e == d)
k++;
if (e ==d)
System.out.println("Rigtigt");
if (e != d)
System.out.println("Forkert, det rigtige svar er : "+d);
}
svar = k/opg*100;
System.out.println("Du havde "+svar+"% rigtige");
System.out.println("");
System.out.println("Tryk 1 for at afslutte, eller 2 for at køre programmet igen");
slut=tastatur.nextInt();
a = 0;
}
}
}