interface RegularPolygon {
int getNumSides();
double getSideLength();
static int totalSides(RegularPolygon[] rpArray) {
}
default double getPerimeter() {
}
default double getInteriorAngle() {
}
}
class EquilateralTriangle implements RegularPolygon {
private double sideLength;
public EquilateralTriangle(double sideLength) {
}
public int getNumSides() {
}
public double getSideLength() {
}
public String toString() {
}
}
class Square implements RegularPolygon {
private double sideLength;
public Square(double sideLength) {
}
public int getNumSides() {
}
public double getSideLength() {
}
public String toString() {
}
}
public class Main {
public static void main(String[] args) {
Scanner con = new Scanner(System.in);
int n = con.nextInt();
RegularPolygon[] rpArray = new RegularPolygon[n];
...
con.close();
}
}Aşağıdakı tələblərə uyğun proqram yazın:
RegularPolygon interfeysini yaradın və iki abstrakt metod əlavə edin: getNumSides və getSideLength.
EquilateralTriangle sinfini yaradın və bu interfeysi həyata keçirin. getNumSides metodu 3, getSideLength konstruktorda verilmiş dəyəri qaytarmalıdır.
Square sinfini yaradın və bu interfeysi həyata keçirin. getNumSides metodu 4, getSideLength isə konstruktorda verilmiş dəyəri qaytarmalıdır.
İntefeysə statik totalSides metodu əlavə edin ki, RegularPolygon[] massivinə əsasən bütün fiqurların tərəflərinin cəmini qaytarsın.
İki default metod əlavə edin:
getPerimeter (n * length, burada n — tərəflərin sayı)
getInteriorAngle ((n - 2)π / n radianlarda)
Birinci sətirdə (n \leq 100) — fiqurların sayı verilir. Sonrakı sətrin hər birində fiqurun adı (Triangle və ya Square) və tərəfinin uzunluğu (gerçək ədəd) verilir.
Hər bir fiqur üçün onun adını, tərəfinin uzunluğunu, perimetrini və daxili bucağını nümunədəki kimi ekrana verin. Son sətirdə isə bütün fiqurların tərəflərinin ümumi sayını göstərin.

Nümunə 1