Solution Review: Season of a Month
This lesson discusses the solution to the challenge given in the previous lesson.
We'll cover the following...
There are two methods to solve this problem:
- One is using the
switch-case
construct, which is the requirement of the problem statement - The other is using the
if-else
construct.
We’ll first discuss the switch-case
solution.
Using switch-case
construct
Press + to interact
package mainimport "fmt"func main() {fmt.Printf(Season(3)) // calling function to find the season}func Season(month int) string {switch month { // switch on the basis of value of the months(1-12)case 12,1,2: return "Winter" // Jan, Feb and Dec have wintercase 3,4,5: return "Spring" // March, Apr and May have springcase 6,7,8: return "Summer" // June, July and Aug have summercase 9,10,11: return "Autumn" // Sept, Oct and Nov have autumndefault: return "Season unknown" //value outside [1,12], then season is unkown}}
As you can see, we declare a function Season
at line 9, which takes an integer value that represents a month as an input parameter. That parameter is the value of month
. As per requirement, we add switch month
to switch on the basis of the value of ...