Kieselnator: Wurzelbestimmung mit ...

Beitrag lesen

Hey Wischer! Probier mal das hier:

public class sqrt{
public static void main(String[] args){

// Die Variablen deklarieren  
double wert=Double.parseDouble(args[0]);  
double epsilon = 0.00000000000001; // Wenn immer ich hier 1e-15 geschrieben habe, kam immer bei Wurzel 4 1.99999999999998 oä raus  
double step = 10;  
double wurzel = 0;  
  
	if(wert >= 0){  
		// Ausführen, solange die Bedingung erfüllt ist  
		while(Math.abs(wurzel\*wurzel-wert)>epsilon){  
			step = step/10;  
			while(wert>wurzel\*wurzel){  
				wurzel = wurzel+step;  
				//System.out.println(wurzel);  
				  
			}  
			if(Math.abs(wurzel\*wurzel-wert)>epsilon){  
				wurzel = wurzel-step;  
			}  
			//System.out.println("	"+step);  
			  
		}  
		  
		// Wurzel "ausdrucken"  
		System.out.println(wurzel);  
	}  
	else{  
		System.out.println("Negative Werte sind ungültig!");  
	}  
}  

}

Wenn das nicht klappt kannst du auch mal mit break ran!

Mfg Kieselnator