Arkanium77

TriangleMain

Oct 11th, 2016
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.31 KB | None | 0 0
  1. package trianglemain;
  2. import java.util.*;
  3.  
  4. public class TriangleMain {
  5.  
  6.     public static void main(String[] args) throws SidesException,NegativeException{
  7.         Scanner sc=new Scanner(System.in);
  8.         double a,b,c;
  9.         System.out.println("Введите стороны первого треугольника:");
  10.         System.out.print("a=");a=sc.nextDouble();
  11.         System.out.print("b=");b=sc.nextDouble();
  12.         System.out.print("c=");c=sc.nextDouble();
  13.         Triangle tr;
  14.         try{
  15.             tr=new Triangle(a,b,c);
  16.         }
  17.         catch(NegativeException|SidesException e){
  18.             System.out.println(e+"\nСоздан стандартный треугольник {1,1,1}");
  19.             tr=new Triangle();
  20.             //НО. Я бы хотел использовать здесь goto, чтоб сразу повторить ввод переменных
  21.             //Если пользователь, конечно, захочет. Можно и через while, но...
  22.             //Как бы это сделать?
  23.         }
  24.  
  25.         System.out.println();
  26.         System.out.println("И так, периметр такого теугольника - "+tr.p()+"\nПлощадь - "+tr.s());
  27.         System.out.println("Радиус вписанной окружности - "+tr.r()+"\nРадиус описанной окружности - "+tr.rr());
  28.         System.out.println("Теперь сравним этот треугольник с другим.");
  29.         System.out.println();
  30.  
  31.         System.out.println("Введите стороны второго треугольника:");
  32.         /*
  33.         Вот такой раньше был ввод. Но при нём исключения вообще не очень имеют смысл, хм.
  34.         А вот если ы в момент создания, при получении исключения, прыгать вверх по коду...
  35.         */
  36.         do{
  37.             System.out.print("a=");a=sc.nextDouble();
  38.             System.out.print("b=");b=sc.nextDouble();
  39.             System.out.print("c=");c=sc.nextDouble();
  40.  
  41.             if(Triangle.test(a,b,c)){System.out.println();
  42.             System.out.println("Данного треугольника не существует! Повторите ввод.");
  43.             }
  44.         } while(Triangle.test(a,b,c));
  45.        
  46.         Triangle tr1;
  47.         try{
  48.             tr1=new Triangle(a,b,c);
  49.         }
  50.         catch(NegativeException | SidesException e){
  51.             System.out.println(e+"\nСоздан стандартный треугольник {1,1,1}");
  52.             tr1=new Triangle();
  53.             //НО. Я бы хотел использовать здесь goto, чтоб сразу повторить ввод переменных
  54.             //Если пользователь, конечно, захочет. Можно и через while, но...
  55.             //Как бы это сделать?
  56.         }
  57.  
  58.  
  59.         System.out.println();
  60.         if(Triangle.equals(tr,tr1)) System.out.println("Эти треугольники равны.");
  61.         else System.out.println("Эти треугольники не равны.");
  62.         Triangle copyTr=tr1.copy();
  63.         System.out.println("CopyTr - "+copyTr);
  64.  
  65.     }
  66.    
  67. }
Add Comment
Please, Sign In to add comment