Skip to content

Instantly share code, notes, and snippets.

@burubur
Created May 18, 2018 14:54
Show Gist options
  • Select an option

  • Save burubur/a3c41cb756b26403fc6bcebfc790e4b2 to your computer and use it in GitHub Desktop.

Select an option

Save burubur/a3c41cb756b26403fc6bcebfc790e4b2 to your computer and use it in GitHub Desktop.
package main
import (
"fmt"
"math"
)
type hitung interface {
luas() float64
keliling() float64
}
type lingkaran struct {
diameter 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
}
type persegi struct {
sisi float64
}
func (p persegi) luas() float64 {
return math.Pow(p.sisi, 2)
}
func (p persegi) keliling() float64 {
return p.sisi * 4
}
func main() {
var bangunDatar hitung
bangunDatar = persegi{10.0}
fmt.Printf("%.10f\n", bangunDatar.keliling())
fmt.Printf("%.10f\n", bangunDatar.luas())
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment