Last active
February 6, 2024 15:05
-
-
Save TheMuellenator/5343c658efdd46dc04522174fa4f0cd1 to your computer and use it in GitHub Desktop.
iOS repl.it - IF Else Challenge Solution
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Don't change this | |
var aYear = Int(readLine()!)! | |
func isLeap(year: Int) { | |
var leap = "NO" | |
//IF divisible by 4 with no remainders. | |
if year % 4 == 0 { | |
leap = "YES" | |
//Is leap year, unless: | |
} | |
if year % 100 == 0 { | |
leap = "NO" | |
//Is not leap year, unless: | |
} | |
if year % 400 == 0 { | |
leap = "YES" | |
//Is leap year. | |
} | |
print(leap) | |
} | |
//Don't change this | |
isLeap(year: aYear) |
could someone please help me out here, i understand the steps necessary to get isLeap to say whether or not the year is a leap year but i cannot for the life of me understand the "==0" expression.
- if year % 4 == 0 print yes, 2000 divided by 4 is 500 which is a whole number with no remainder but is not equal to zero
- if year % 100 != 0 print no, 2000 divided by 100 is equal to 20 which again is not equal to zero but again is a whole number and finally 3. if year % 400 == 0 print yes 2000 divided by 400 is 5 which is a whole number but not equal to zero.
basically i wanna know what zero represents, is it an expression for a whole number?
So here the "==0" is calculate based on the modulus (remainder). Using the example 2000%4 which means that how many multiples of 4 will fit inside the value 2000 and returns the value that's left over which is 0 in this case.
More details check the screenshot below:
In the screenshot you can see at Line89 that the remainder of 2000%4 is 0 as there is no remainder.
If there is anything feel free to ask.
Thanks.
func isLeap(year: Int) {
if year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) {
print("YES")
}
else{
print("NO")
}
}
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
What is the issue you are getting?