Advertisement
Guest User

Untitled

a guest
Apr 6th, 2020
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.19 KB | None | 0 0
  1. import java.sql.SQLOutput;
  2. import java.util.Scanner;
  3.  
  4. interface Figura {
  5.     double obliczObwod();
  6.     double obliczPowierzchnie();
  7. }
  8.  
  9. class Kwadrat implements Figura {
  10.     private final double a;
  11.  
  12.     Kwadrat(double a) {
  13.         this.a = a;
  14.     }
  15.  
  16.     @Override
  17.     public double obliczObwod() {
  18.         return 4 * a;
  19.     }
  20.  
  21.     @Override
  22.     public double obliczPowierzchnie() {
  23.         return a * a;
  24.     }
  25. }
  26.  
  27. class Trojkat implements Figura {
  28.     private final double a;
  29.     private final double b;
  30.     private final double c;
  31.  
  32.     Trojkat(double a, double b, double c) {
  33.         this.a = a;
  34.         this.b = b;
  35.         this.c = c;
  36.     }
  37.  
  38.     @Override
  39.     public double obliczObwod() {
  40.         return a + b + c;
  41.     }
  42.  
  43.     @Override
  44.     public double obliczPowierzchnie() {
  45.         double p = (a + b+ + c) / 2;
  46.         return Math.sqrt(p * (p - a) * (p - b) * (p - c));
  47.     }
  48. }
  49.  
  50. class Trapez implements Figura {
  51.     private final double a;
  52.     private final double b;
  53.     private final double c;
  54.     private final double d;
  55.     private final double h;
  56.  
  57.     Trapez(double a, double b, double c, double d, double h) {
  58.         this.a = a;
  59.         this.b = b;
  60.         this.c = c;
  61.         this.d = d;
  62.         this.h = h;
  63.     }
  64.  
  65.     @Override
  66.     public double obliczObwod() {
  67.         return a + b + c + d;
  68.     }
  69.  
  70.     @Override
  71.     public double obliczPowierzchnie() {
  72.         return (a + b) * h / 2;
  73.     }
  74. }
  75.  
  76. public class Main {
  77.     public static void main(String[] args) {
  78.         Scanner scanner = new Scanner(System.in);
  79.         System.out.println("Kwadrat:");
  80.         System.out.print("  Dlugosc boku a: ");
  81.         double kwadratA = scanner.nextDouble();
  82.  
  83.         System.out.println("Trojkat:");
  84.         System.out.print("  Dlugosc boku a: ");
  85.         double trojkatA = scanner.nextDouble();
  86.         System.out.print("  Dlugosc boku b: ");
  87.         double trojkatB = scanner.nextDouble();
  88.         System.out.print("  Dlugosc boku c: ");
  89.         double trojkatC = scanner.nextDouble();
  90.  
  91.         System.out.println("Trapez:");
  92.         System.out.print("  Dlugosc boku a: ");
  93.         double trapezA = scanner.nextDouble();
  94.         System.out.print("  Dlugosc boku b: ");
  95.         double trapezB = scanner.nextDouble();
  96.         System.out.print("  Dlugosc boku c: ");
  97.         double trapezC  = scanner.nextDouble();
  98.         System.out.print("  Dlugosc boku d: ");
  99.         double trapezD  = scanner.nextDouble();
  100.         System.out.print("  Dlugosc wysokosci: ");
  101.         double trapezH  = scanner.nextDouble();
  102.  
  103.         Kwadrat kwadrat = new Kwadrat(kwadratA);
  104.         Trojkat trojkat = new Trojkat(trojkatA, trojkatB, trojkatC);
  105.         Trapez trapez = new Trapez(trapezA, trapezB, trapezC, trapezD, trapezH);
  106.  
  107.         System.out.println("Wyniki:");
  108.         wypiszWynik(kwadrat, "Kwadrat");
  109.         wypiszWynik(trojkat, "Trojkat");
  110.         wypiszWynik(trapez, "Trapez");
  111.     }
  112.  
  113.     private static void wypiszWynik(Figura figura, String nazwaFigury) {
  114.         System.out.println(nazwaFigury + ":");
  115.         System.out.println("  Obwod: " + figura.obliczObwod());
  116.         System.out.println("  Powierzchnia: " + figura.obliczPowierzchnie());
  117.     }
  118. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement