CzarnyBarszcz

Obliczanie Miejsc Zerowych JAVA

Nov 2nd, 2021
2,446
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.33 KB | None | 0 0
  1. package zadanie3;
  2.  
  3. import java.util.Scanner;
  4. //import java.lang.Math;
  5.  
  6. public class Zadanie3 {
  7.    
  8.     static double [] pobierzLiczby (){
  9.         Scanner sc = new Scanner(System.in);
  10.         double [] liczby = new double[3];
  11.         System.out.println("Podaj a : ");
  12.         liczby[0] = sc.nextDouble();
  13.         System.out.println("Podaj b : ");
  14.         liczby[1] = sc.nextDouble();
  15.         System.out.println("Podaj c : ");
  16.         liczby[2] = sc.nextDouble();
  17.         return  liczby;
  18.     }
  19.    
  20.     static double [] obliczMiejscaZerowe(double a, double b, double c) {
  21.         double [] tablica ;
  22.         if(a == 0){
  23.             tablica = new double[1];
  24.             tablica[0] = (-1)*(b/c);
  25.             return tablica;
  26.         }
  27.         double delta = (b * b) - (4*a*c);
  28.         if(delta == 0){
  29.             tablica = new double[1];
  30.             tablica[0] = (-1*b)/(2*a); //dobry wzór
  31.             return tablica;
  32.         }
  33.         if(delta > 0){
  34.             tablica = new double[2];
  35.             double x = (2*a);
  36. //----------> Z nienzanych mi przyczyn błędny wynik !!! <------
  37. //            tablica[0] = ((-1*b)+(Math.sqrt(delta))/(2*a));
  38. //            tablica[1] = ((-1*b)-(Math.sqrt(delta))/(2*a));
  39.               tablica[0] = ((-1*b)+(Math.sqrt(delta)));
  40.               tablica[0] = tablica[0] / x;
  41.               tablica[1] = ((-1*b)-(Math.sqrt(delta)));
  42.               tablica[1] = tablica[1] / x;
  43.             return tablica;
  44.         }
  45.         else{
  46.             //Nie wiedzialem jak inaczej zakomunikowac braku miejsc zerowych
  47.             tablica = new double[3];
  48.             tablica[0] = 3.0;
  49.             tablica[1] = 3.0;
  50.             tablica[2] = 3.0;
  51.             return tablica;
  52.         }
  53.     }
  54.  
  55.     static void wypiszMiejscaZerowe (double [] tablica){
  56.         System.out.println(tablica.length);
  57.         if(tablica.length == 1){
  58.           System.out.println(tablica[0]);  
  59.         }if(tablica.length == 2){
  60.            System.out.println(tablica[0]);
  61.            System.out.println(tablica[1]);
  62.         }else{
  63.             System.out.print("Brak miejsc zerowych");
  64.         }
  65.     }
  66.  
  67.     public static void main(String[] args) {
  68.         double [] liczby = pobierzLiczby();
  69.         double [] tablica = obliczMiejscaZerowe(liczby[0],liczby[1],liczby[2]);
  70.         wypiszMiejscaZerowe(tablica);
  71.     }
  72.    
  73. }
  74.  
Advertisement
Add Comment
Please, Sign In to add comment