package main import ( "fmt" "bufio" "os" "strconv" ) func TimUocSo(n int) []int { var res []int for i := 1; i <= n/2; i++ { if n%i == 0 { res = append(res, i) } } return res } func KTSoHoanHao(n int) bool { UocSo := TimUocSo(n) for _, v := range UocSo { n -= v } if n == 0 { return true } return false } func main() { scanner := bufio.NewScanner(os.Stdin) scanner.Scan() Input := scanner.Text() ID, err := strconv.Atoi(Input) if err != nil { panic(err) } if KTSoHoanHao(ID) { fmt.Printf("%d la so hoan hao !\n", ID) } else { fmt.Printf("%d khong phai la so hoan hao\n", ID) } }
We use cookies to provide and improve our services. By using our site, you consent to our Cookies Policy. Accept Learn more