hallo,
ich habe mir eine aufgabe ausgedacht, bei der man einer methode 2 werte (zaehler und nenner) übergibt und diese dann gekürzt werden sollen.
so dazu habe ich folgenden code:
der code funktioniert wenn ich bspw. zaehler = 2 und nenner = 4 eingeben. als ergebnis erhalte ich wie erwartet 0.5.
aber wenn ich zaehler = 3 und nenner = 9 eingebe, kommt da 0.0 als ergebnis raus, was nicht stimmt. oder wenn ich zaehler = 45 und nenner = 90 eingebe, kommt ebenfalls 0.0 raus.
was habe ich falsch gemacht? kann mir das jmd. vtl. sagen?
ich habe mir eine aufgabe ausgedacht, bei der man einer methode 2 werte (zaehler und nenner) übergibt und diese dann gekürzt werden sollen.
so dazu habe ich folgenden code:
Java:
public class KuerzenTest{
static double kuerzen(double a , double b){
int i =1;
while(true){
i += 1;
double tmp = 0;
if((a%i) == 0 && (b%i) ==0 ){
tmp = ((a/i)/(b/i));
}
return tmp;
}
}
public static void main(String [] args){
double res;
System.out.println("Bitte geben Sie einen Wert für den Zähler ein: ");
int zaehler = Integer.parseInt(System.console().readLine());
System.out.println("Bitte geben Sie einen Wert für den Nenner ein: ");
int nenner = Integer.parseInt(System.console().readLine());
res= kuerzen(zaehler, nenner);
System.out.println(res);
}
}
der code funktioniert wenn ich bspw. zaehler = 2 und nenner = 4 eingeben. als ergebnis erhalte ich wie erwartet 0.5.
aber wenn ich zaehler = 3 und nenner = 9 eingebe, kommt da 0.0 als ergebnis raus, was nicht stimmt. oder wenn ich zaehler = 45 und nenner = 90 eingebe, kommt ebenfalls 0.0 raus.
was habe ich falsch gemacht? kann mir das jmd. vtl. sagen?