Advertisement
deced

Untitled

Oct 2nd, 2020
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.60 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. public class Main {
  4.    
  5.     private static Scanner scanner;
  6.  
  7.     static int GetValue(String message) {
  8.         int ret;
  9.         System.out.println(message);
  10.         try {
  11.             ret = Integer.parseInt(scanner.nextLine());
  12.         } catch (Exception ex) {
  13.             System.err.println("Ожидалось число");
  14.             ret = GetValue(message);
  15.         }
  16.         if (ret < 1) {
  17.             System.err.println("Число должно быть больше нуля");
  18.             ret = GetValue(message);
  19.         }
  20.         return ret;
  21.     }
  22.  
  23.     static double GetTriangleRadius() {
  24.         double ret;
  25.         System.out.println("Введите длины сторон треугольника");
  26.         int a, b, c;
  27.         double p;
  28.         a = GetValue("Введите длину стороны a ");
  29.         b = GetValue("Введите длину стороны b ");
  30.         c = GetValue("Введите длину стороны c ");
  31.         p = (a + b + c) / 2.0;
  32.         if (p - a > 0 && p - b > 0 && p - c > 0) {
  33.             ret = Math.sqrt(((p - a) * (p - b) * (p - c)) / p);
  34.         } else {
  35.             System.err.println("Такого треугольника не существует");
  36.             ret = GetTriangleRadius();
  37.         }
  38.         return ret;
  39.     }
  40.  
  41.     public static void main(String[] args) {
  42.         scanner = new Scanner(System.in);
  43.         int triangleCount;
  44.         double r = 0;
  45.         double minRadius = 0;
  46.         triangleCount = GetValue("Введите количество треугольников ");
  47.         for (int i = 0; i < triangleCount; i++) {
  48.             r = GetTriangleRadius();
  49.             if (r < minRadius || minRadius == 0) {
  50.                 minRadius = r;
  51.             }
  52.         }
  53.         System.out.printf("Минимальный радиус равен %5.2f", minRadius);
  54.     }
  55.  
  56. }
  57.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement