Latihan 1: Interface & Polymorphism — Go

Latihan 1 dari materi Interface & Polymorphism di Go — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.

Buat interface Shape dengan method Area() float64. Implementasikan dengan dua tipe:

  1. Circle dengan field R (radius), Area = 3.14 * R * R
  2. Rectangle dengan field W (width) dan H (height), Area = W * H

Lalu buat fungsi totalArea(shapes []Shape) float64 yang menjumlahkan semua area.

Di main():

Gunakan polymorphism, fungsi tidak perlu tahu tipe konkretnya.

Hint