Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "fmt"
- "math"
- )
- type hitung interface {
- luas() float64
- keliling() float64
- }
- type lingkaran struct {
- diameter float64
- }
- type persegi struct {
- sisi float64
- }
- func (l lingkaran) jariJari() float64 {
- return l.diameter / 2
- }
- func (l lingkaran) luas() float64 {
- return math.Pi * math.Pow(l.jariJari(), 2)
- }
- func (l lingkaran) keliling() float64 {
- return math.Pi * l.diameter
- }
- func (p persegi) luas() float64 {
- return math.Pow(p.sisi, 2)
- }
- func (p persegi) keliling() float64 {
- return p.sisi * 4
- }
- func luas(h hitung) float64 {
- return h.luas()
- }
- func keliling(h hitung) float64 {
- return h.keliling()
- }
- func main() {
- fmt.Println("Hello, playground")
- var ling hitung
- ling = lingkaran{2.0}
- var per persegi
- per.sisi = 4.0
- fmt.Printf("luas lingkaran : %v\n", ling.luas())
- fmt.Printf("luas persegi : %v \n", per.luas())
- fmt.Printf("luas lingkaran : %v\n", luas(persegi{4.0}))
- fmt.Printf("keliling lingkaran: %f\n", keliling(lingkaran{2.0}))
- fmt.Printf("luas lingkaran : %f\n\n", luas(lingkaran{3.0}))
- fmt.Printf("jari jari lingkaran : %f\n", ling.(lingkaran).jariJari())
- }
Add Comment
Please, Sign In to add comment