lineare Gleichung programmieren

BlueCross-

Mitglied
Hey zusammen,
in der schule haben wir die Aufgabe bekommen, die Mitternachtsformal ( x1/x2= (-b +-Wurzel(b²-4*a*c)/(2*a) ) zu Programmieren.
Dies habe ich ohne Probleme gelöst.
Java:
import Prog1Tools.IOTools;

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

		double x1; //ergebnis 1
		double x2; //erbegnis 2
		double a; //variable a
		double b; //variable b
		double c; //variable c
		double d; //Diskriminante
		double x = 0;// linearea lösung
		


		a = IOTools.readDouble("a= ");
		b = IOTools.readDouble("b= ");
		c = IOTools.readDouble("c= ");

		d= b*b-4*a*c; // berechnung der Diskriminate
		if (a == 0)
		{
			System.out.println("Es handelt sich um eine Lineare Gleichung");
			x = b*x+c;
		
			System.out.println(x);		
		}
		
		else
		{
		
			if(d<0)//keine lösung
			{
				System.out.println("Keine Lösung"); //programm ende fall 1
			}
			else
			{
				if (d>0)//zwei lösungen
				{
					x1= (-b +Math.sqrt((b*b)-(4*a*c)))/(2*a);//erste lösung
					x2= (-b - Math.sqrt((b*b)-(4*a*c)))/(2*a);//zweite lösung

					System.out.println("zwei lösungen. nämlich: " + x1 +" und: "+ x2);//programmende fall 2

				}
				else//eine Lösung
				{
					x1= -b/(2*a);//einzige lösung
					System.out.println("nur eine Lösung: " + x1);//programmende fall 3
				}
			}
		}
		return;
	}


}

Als Zusatzaufgabe bekam ich dann die Aufgabe die Variable a zuerst auf a=0 zu prüfen. falls das zutrifft, soll ich die Formel für die lineare Gleichung verwenden. b*x+c=0. ich hab jedoch keinen Schimmer wie ich das in Java ausdrücken soll. stimmt mein Ansatz, oder laufe ich grad auf dem Holzweg?
Vielen Dank im voraus für eure Tipps.
 

Zurück
Oben