Schnittstelle für geometrische Figuren
Go
Medium
interfaces
Aufgabe «Schnittstelle für geometrische Figuren»
Implementieren Sie das Interface Shape, das die Methode Area() float64 enthält. Erstellen Sie die Strukturen Circle und Rectangle, die dieses Interface implementieren. Für den Kreis wird die Fläche als π * r^2 berechnet, für das Rechteck als a * b. Schreiben Sie anschließend eine Funktion PrintArea(s Shape), die die Fläche der Figur auf zwei Nachkommastellen genau ausgibt. Eingabedaten: Figurentyp (1 — Kreis, 2 — Rechteck) und die entsprechenden Parameter (Radius für den Kreis, Seiten a und b für das Rechteck). Geben Sie die Fläche der Figur aus.
Eingabeformat
Erste Zeile: eine ganze Zahl t (1 ≤ t ≤ 100) — Anzahl der Figuren. Für jede Figur: erste Zeile — eine ganze Zahl type (1 oder 2). Wenn type=1, enthält die nächste Zeile eine reelle Zahl — den Radius. Wenn type=2, enthält die nächste Zeile zwei reelle Zahlen — die Seiten a und b.
Ausgabeformat
Für jede Figur geben Sie ihre Fläche auf zwei Nachkommastellen genau aus, jede in einer neuen Zeile.
Beispiele
Beispiel 1
EINGABE
1
0
AUSGABE
1
Beispiel 2
EINGABE
4
ADD Task A 1
ADD Task B 4
COMPLETE Task C
PENDING
AUSGABE
Task not found
Task B, Task A
main.go