[D1] Figury
Języki:
c
cpp
Limit czasu: 3.0 s
Limit pamięci: 10 MB
Limit rozmiaru rozwiązania: 100 kB
Napisz program, który wczyta ze standardowego wejścia listę opisów figur geometrycznych (koło, prostokąt, kwadrat, trójkąt) a następnie przetworzy listę zapytań dotyczących pól oraz obwodów wczytanych figur.
Pierwszy wiersz wejścia zawiera liczbę całkowitą 0<N<100 oznaczającą liczbę figur. Każdy z kolejnych N wierszy zawiera informacje o jednej figurze geometrycznej w następującym formacie:
o pr
- koło o promieniupr
k b
- kwadrat o bokub
p b1 b2
- prostokąt o bokachb1
orazb2
t b1 b2 b3
- trójkąt o bokacht1
,t2
orazt3
z x
, gdzie z
oznacza typ zapytania (o
- obwód, p
- pole) zaś x
oznacza numer figury, której zapytanie dotyczy.
Dla każdego zapytania program powinien wydrukować wynik z dokładnością do dwóch miejsc po przecinku.
Uwaga: Dla potrzeb dokładności obliczeń można przyjąć π=3.14.
Przykładowe wejście:
3 o 10 k 2 p 2 3 3 o 1 p 3 o 2
Przykładowe wyjście
62.80 6.00 8.00
Uwaga!
Zadanie powinno zostać rozwiązane z wykorzystaniem dziedziczenia oraz funkcji wirtualnych.