Commit 4d17f85c by Patryk Czarnik

Geometria - dodatkowe figury

parent 1e3d184a
...@@ -20,5 +20,26 @@ public class Geometria { ...@@ -20,5 +20,26 @@ public class Geometria {
static double obwodProstokata(double a, double b) { static double obwodProstokata(double a, double b) {
return 2*a + 2*b; return 2*a + 2*b;
} }
public static double poleKola(double r) {
return Math.PI * r*r;
}
public static double obwodKola(double r) {
return Math.PI * 2*r;
}
public static boolean warunekTrojkata(double a, double b, double c) {
return a < b + c && b < a + c && c < a + b;
}
public static double poleTrojkata(double a, double b, double c) {
double p = obwodTrojkata(a, b, c) / 2;
return Math.sqrt(p*(p-a)*(p-b)*(p-c));
}
public static double obwodTrojkata(double a, double b, double c) {
return a + b + c;
}
} }
...@@ -14,6 +14,11 @@ public class GeometriaProgram { ...@@ -14,6 +14,11 @@ public class GeometriaProgram {
System.out.println(" T - trójkąt"); System.out.println(" T - trójkąt");
System.out.println(" Q - zakończ"); System.out.println(" Q - zakończ");
// ewentualnie: w klasie JednostkiMiary zdefiniuj funckje:
// mileNaKm , kmNaMile przeliczające odległość z kilometrów na mile (międzynarodowe) i owdrotnie
// farNaCel , celNaFar - stopnie Celsjusza i Fahrenheita
// https://pl.wikipedia.org/wiki/Skala_Fahrenheita
petla: petla:
while(true) { while(true) {
System.out.println("\nWybierz figurę lub operację:"); System.out.println("\nWybierz figurę lub operację:");
...@@ -39,6 +44,26 @@ public class GeometriaProgram { ...@@ -39,6 +44,26 @@ public class GeometriaProgram {
double obwod = Geometria.obwodProstokata(a, b); double obwod = Geometria.obwodProstokata(a, b);
System.out.printf("Dla prostokąta o bokach %.3f i %.3f pole wynosi %.3f, a obwód %.3f\n", a, b, pole, obwod); System.out.printf("Dla prostokąta o bokach %.3f i %.3f pole wynosi %.3f, a obwód %.3f\n", a, b, pole, obwod);
} }
case "O" -> {
System.out.print("Podaj promień koła: ");
double r = scanner.nextDouble();
double pole = Geometria.poleKola(r);
double obwod = Geometria.obwodKola(r);
System.out.printf("Dla koła o promieniu %.3f pole wynosi %.3f, a obwód %.3f\n", r, pole, obwod);
}
case "T" -> {
System.out.print("Podaj trzy długości boków trójkąta: ");
double a = scanner.nextDouble();
double b = scanner.nextDouble();
double c = scanner.nextDouble();
if(Geometria.warunekTrojkata(a, b, c)) {
double pole = Geometria.poleTrojkata(a, b, c);
double obwod = Geometria.obwodTrojkata(a, b, c);
System.out.printf("Dla prostokąta o bokach %.3f %.3f %.3f pole wynosi %.3f, a obwód %.3f\n", a, b, c, pole, obwod);
} else {
System.out.println("Z tych liczb nie da się złożyć trójkąta");
}
}
default -> { default -> {
System.out.println("Nieznane polecenie " + wybor); System.out.println("Nieznane polecenie " + wybor);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment