package main
import "fmt"
type divideError struct {
divdee int
divider int
}
func (de *divideError)Error() string {
strFormat := "wrong: divider == %d"
return fmt.Sprintf(strFormat, de.divider)
}
func divide(divdee int, divider int) (result int, errorMsg string) {
if divider == 0 {
errorData := divideError{divdee, divider}
errorMsg = errorData.Error()
return
}else {
return divdee / divider, "ok"
}
}
func main() {
if result, errorMsg := divide(100,10) ; errorMsg == "ok"{
fmt.Println(result)
}
if _, errorMsg := divide(100,0) ; errorMsg != "ok"{
fmt.Println(errorMsg )
}
}