Last Two Digits Divisible by 4 — Rule 180
Go Programming Basics · Go
TASK
Problem
A non-negative integer `n` is entered. Print `YES` if the number formed by its last two digits is divisible by 4; otherwise print `NO`. In addition, `n` must not be divisible by 180.
EXAMPLE
Example
312
YES
LIMITS
Constraints
- Input values fit the Go types used in the reference solution. - Print only the value(s) requested by the statement.
LEARN
Theory for this problem
+
`if` selects a branch from a boolean condition. Combine predicates with `&&`, `||`, and `!` only when their precedence matches the intended logic.
`fmt.Scan`/`fmt.Fscan` parses whitespace-separated input into typed variables. The variable type controls how later arithmetic and comparisons behave.
Apply these rules directly to the task requirement: a non-negative integer `n` is entered. Print `YES` if the number formed by its last two digits is divisible by 4; otherwise print `NO`. In addition, `n` must not be divisible by 180.
NEED HELP?
Hints
+
['Write the boolean condition directly, then verify boundary values just below, at, and just above each threshold.', 'Read values in exactly the order stated by the condition.', 'Use the sample input `312` to verify parsing and confirm that the program prints exactly `YES` with no extra text.']
ANSWER
Solution
+
package main
import "fmt"
func main() {
var n int
fmt.Scan(&n)
if ((n%100)%4 == 0) && n%180 != 0 {
fmt.Println("YES")
} else {
fmt.Println("NO")
}
}