Advertisement
Vanya_Shestakov

dis

Oct 11th, 2020 (edited)
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.58 KB | None | 0 0
  1. package com.company;
  2. import java.util.Scanner;
  3. import java.lang.Math;
  4.  
  5. public class Main {
  6.  
  7.     public static double inputCoefficientA(){
  8.         Scanner scan = new Scanner(System.in);
  9.         double coefficient = 0;
  10.         boolean isIncorrect;
  11.         do {
  12.             isIncorrect = false;
  13.             try {
  14.                 coefficient = Double.parseDouble(scan.nextLine());
  15.             }catch (Exception e){
  16.                 System.out.println("Enter the number!");
  17.                 isIncorrect = true;
  18.             }
  19.  
  20.             if (!isIncorrect && coefficient == 0){
  21.                 isIncorrect = true;
  22.                 System.out.println("The equation is not quadratic. Repeat enter!.");
  23.             }
  24.         }while (isIncorrect);
  25.         return coefficient;
  26.     }
  27.  
  28.     public static double inputCoefficients(){
  29.         Scanner scan = new Scanner(System.in);
  30.         double coefficient = 0;
  31.         boolean isIncorrect;
  32.         do {
  33.             isIncorrect = false;
  34.             try {
  35.                 coefficient = Double.parseDouble(scan.nextLine());
  36.             }catch (Exception e){
  37.                 System.out.println("Enter the number!");
  38.                 isIncorrect = true;
  39.             }
  40.         }while (isIncorrect);
  41.         return coefficient;
  42.     }
  43.  
  44.     public static double calculateDiscriminant(double a, double b, double c){
  45.         return b * b - 4 * a * c;
  46.     }
  47.  
  48.     public static void chooseDecision(double discriminant, double a, double b){
  49.         if (discriminant >= 0){
  50.             calculateRoots(a, b, discriminant);
  51.         } else {
  52.             System.out.println("The equation has no roots");
  53.         }
  54.     }
  55.  
  56.     public static void calculateRoots(double a, double b, double discriminant){
  57.         double x1 = (-b + Math.sqrt(discriminant)) / (2 * a);
  58.         double x2 = (-b - Math.sqrt(discriminant)) / (2 * a);
  59.         printRoots(x1, x2);
  60.     }
  61.  
  62.     public static void printRoots(double x1, double x2){
  63.         if (x1 == x2){
  64.             System.out.println("The root of this equation is " + x1);
  65.         }else {
  66.             System.out.println("the roots of this equation are " + x1 + " and " + x2);
  67.         }
  68.     }
  69.  
  70.     public static void main(String[] args) {
  71.         System.out.println("Enter coefficient a");
  72.         double a = inputCoefficientA();
  73.         System.out.println("Enter coefficient b");
  74.         double b = inputCoefficients();
  75.         System.out.println("Enter coefficient c");
  76.         double c = inputCoefficients();
  77.  
  78.         double discriminant = calculateDiscriminant(a, b, c);
  79.         chooseDecision(discriminant, a, b);
  80.     }
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement