Java
import java.util.*;
import java.io.*;
public class Function {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Bitte einen Wert für x eingeben");
Scanner input = new Scanner (System.in);
int x = input.nextInt();
double f = 1.0/((2-x)*(7+x));
if (x == 2 || x == -7)
do {
System.out.println("Ungütlige Eingabe, bitte neuen Wert für x eingeben!");
input.nextInt();
}while (x == 2 || x == -7);
else
System.out.printf("f = %2.6f", f);
}
}
Alles anzeigen
gegeben: f(x) = 1 / (2-x)*(7+x)
Bei falscher Eingabe (2 oder -7) erscheint zwar die Fehlermeldung und ich kann einen neuen Wert eingeben. Dieser wird dann aber immer als ungültig erkannt.
Was stimmt an der Schleife nicht?