import java.io.*; /* Kvadraticka rovnice v oboru komplexnich cisel - jednoduse-2 */ public class KvadrRovnice { public static void main(String[] args) { double [] koeficienty; //vstupni pole int [] vysledky=new int[3]; //vystupni pole double diskriminant, a, b, c, x1, x2; //pro reseni rovnice /*Vstup dat bude ze souboru pomoci tridy SouborIO *(viz. navod). V semestralce bude podobne nactena vstupni posloupnost */ koeficienty = SouborIO.vstupDouble(); //nacteni pole. Delka pole udava pocet prvku pole if (koeficienty.length<3){ //kontrola poctu prvku - kv. rovnice ma 3 koeficienty System.out.println("Chyba pri nacitani koeficientu"); return; } a = koeficienty[0]; //koeficient a je na pozici 0 b = koeficienty[1]; // b 1 c = koeficienty[2]; // c 2 /* Konec vstupu ze souboru */ /* Nasleduje klasicke reseni rovnice v oboru realnych cisel*/ System.out.println("Reseni kvadraticke rovnice"); System.out.println(a+"*x^2 + "+b+"*x + "+c+" = 0"); //vypis rovnice diskriminant = b*b - 4*a*c; if (diskriminant < 0){ System.out.println("Diskriminant je mensi nez 0!!"); return; } x1 = (-b + Math.sqrt(diskriminant))/2; x2 = (-b - Math.sqrt(diskriminant))/2; System.out.println("x1 = "+x1); System.out.println("x2 = "+x2); /*nyni mame rovnici vyresenou. V promennych x1 a x2 jsou koreny*/ /*Vystup bude zase do souboru pomoci tridy SouborIO. Vystupem je *pole cisel, ktere ma v prvku s indexem 0 cislo udavajici pocet *ostatnich prvku */ vysledky[0]=2; //Na pozici 0 je pocet prvku - tj. 2 u kvadraticke rovnice vysledky[1]=(int) x1; //Reseni x1 vysledky[2]=(int) x2; //Reseni x2 SouborIO.vystupInt(vysledky);//Vlastni zapsani do souboru } }