TU Wien:Mathematik 1 UE (diverse)/Übungen WS06/M302.java.txt
Zur Navigation springen
Zur Suche springen
import java.lang.Math; public class m302 { static int max=10000; static int m=11; //modulo static int a=4; // \ static int b=7; // >==> ax^2 + bx + c = 0 static int c=7; // / static boolean in_z(double x){ return x==Math.round(x); } public static void main(String arg[]){ System.out.println("Start:\ta="+a+"\tb="+b+"\tc="+c+"\tmodul="+m); for(double cc=c; cc<max; cc+=m) { for(double bb=b; bb<max; bb+=m) { for(double aa=a; aa<max; aa+=m) { double xx=(bb*bb-4*aa*cc); // Diskriminante double x1=((-bb+Math.sqrt((double)(bb*bb-4*aa*cc)))/(2*aa)); double x2=((-bb-Math.sqrt((double)(bb*bb 4*aa*cc)))/(2*aa)); if(!in_z(xx)) continue; if(!in_z(x1)) continue; // if(x1%m)!=0) continue; else { System.out.print("\nMögl. Lösung in Z:\tD = b^2-4ac=\t"+bb*bb+"-4*"+aa+"*"+cc+"\t="+(bb*bb-4*aa*cc)); System.out.println("\ta="+aa+"("+a+"+"+ (aa-a)/m+"*"+m+")\tb="+bb+"("+b+"+"+(bb-b)/m+"*"+m+")\tc="+cc+"("+c+"+"+(cc-c)/m+"*"+m+")"); System.out.println("Diskriminante: "+(bb*bb-4*aa*cc)); System.out.print("x1 = "); System.out.print(" (-"+bb+"+"+"sqrt("+bb*bb+"-4*"+aa+"*"+cc+")) / 2*"+aa+") = "); System.out.print(x1+" ="); // if((x1%m)==0) System.out.print(" OK"); if(in_z(x1)) System.out.print(" OK"); else { System.out.println(" nicht in Z"); continue; } while(x1<0) x1+=m; System.out.println(" Restklasse "+x1); System.out.print("x2 = "); System.out.print("(-"+bb+"-"+"sqrt("+bb*bb+"-4*"+aa+"*"+cc+")) / 2*"+aa+") = "); System.out.print(x2+" ="); // if((x2%m)==0) System.out.print(" OK"); if(in_z(x2)) System.out.print(" OK"); else { System.out.println(" nicht in Z"); continue; } while(x2<0) x2+=m; System.out.println(" Restklasse "+x2); System.exit(0); } } } } System.exit(-1); } } // lg, // Baccus