Print the season name of the year based on the month number
Last Updated :
02 Aug, 2023
Given the month number M, the task is to print the season name of the year based on the month number.
Examples:
Input: M = 5
Output: SPRING
Input: M = 1
Output: WINTER
Approach:
- There are 4 main seasons in a year, that is, Summer, Autumn, Winter and Spring.
- The winter months are in December, January and February.
- The spring months in March, April and May.
- The summer months in June, July and August.
- And the autumn months in September, October and November.
- So map the month to the particular season respectively and print it.
Below is the implementation of the above approach:
C++
#include <bits/stdc++.h>
using namespace std;
void findSeason( int M)
{
switch (M)
{
case 12:
case 1:
case 2:
cout << ( "\nWINTER" );
break ;
case 3:
case 4:
case 5:
cout << ( "\nSPRING" );
break ;
case 6:
case 7:
case 8:
cout << ( "\nSUMMER" );
break ;
case 9:
case 10:
case 11:
cout << ( "\nAUTUMN" );
break ;
default :
cout << ( "\nInvalid Month number" );
break ;
}
}
int main()
{
int M = 5;
cout << "For Month number: " << M;
findSeason(M);
M = 10;
cout << "\nFor Month number: " << M;
findSeason(M);
return 0;
}
|
Java
import java.util.*;
public class Seasons {
public static void findSeason( int M)
{
switch (M) {
case 12 :
case 1 :
case 2 :
System.out.println( "WINTER" );
break ;
case 3 :
case 4 :
case 5 :
System.out.println( "SPRING" );
break ;
case 6 :
case 7 :
case 8 :
System.out.println( "SUMMER" );
break ;
case 9 :
case 10 :
case 11 :
System.out.println( "AUTUMN" );
break ;
default :
System.out.println( "Invalid Month number" );
break ;
}
}
public static void main(String abc[])
{
int M = 5 ;
System.out.println( "For Month number: "
+ M);
findSeason(M);
M = 10 ;
System.out.println( "For Month number: "
+ M);
findSeason(M);
}
}
|
Python3
def findseason (M) :
list1 = [[ 12 , 1 , 2 ], [ 3 , 4 , 5 ],
[ 6 , 7 , 8 ], [ 9 , 10 , 11 ]]
if M in list1[ 0 ] :
print ( "WINTER" )
elif M in list1[ 1 ] :
print ( "SPRING" )
elif M in list1[ 2 ] :
print ( "SUMMER" )
elif M in list1[ 3 ] :
print ( "AUTUMN" )
else :
print ( "Invalid Month Number" )
M = 5
print ( "For Month number:" , M);
findseason ( M )
M = 10
print ( "For Month number:" , M);
findseason ( M )
|
C#
using System;
class GFG
{
public static void findSeason( int M)
{
switch (M)
{
case 12:
case 1:
case 2:
Console.WriteLine( "WINTER" );
break ;
case 3:
case 4:
case 5:
Console.WriteLine( "SPRING" );
break ;
case 6:
case 7:
case 8:
Console.WriteLine( "SUMMER" );
break ;
case 9:
case 10:
case 11:
Console.WriteLine( "AUTUMN" );
break ;
default :
Console.WriteLine( "Invalid Month number" );
break ;
}
}
public static void Main()
{
int M = 5;
Console.WriteLine( "For Month number: " + M);
findSeason(M);
M = 10;
Console.WriteLine( "For Month number: " + M);
findSeason(M);
}
}
|
Javascript
<script>
function findSeason(M)
{
switch (M) {
case 12:
case 1:
case 2:
document.write( "WLETER" + "<br/>" );
break ;
case 3:
case 4:
case 5:
document.write( "SPRING" + "<br/>" );
break ;
case 6:
case 7:
case 8:
document.write( "SUMMER" + "<br/>" );
break ;
case 9:
case 10:
case 11:
document.write( "AUTUMN" + "<br/>" );
break ;
default :
document.write( "Invalid Month number" );
break ;
}
}
let M = 5;
document.write( "For Month number: "
+ M + "<br/>" );
findSeason(M);
M = 10;
document.write( "For Month number: "
+ M + "<br/>" );
findSeason(M);
</script>
|
Output
For Month number: 5
SPRING
For Month number: 10
AUTUMN
Time Complexity: O(1)
Auxiliary Space: O(1)
Dictionary Mapping
We can create a dictionary to map the month number to its corresponding season. Then we can simply retrieve the value from the dictionary using the input month number.
Steps:
- Create a dictionary with the keys as month numbers and the values as corresponding seasons.
- Take the input month number from the user.
- Retrieve the value from the dictionary using the input month number.
- Print the season name.
C++
#include <iostream>
#include <unordered_map>
#include <string>
int main()
{
std::unordered_map< int , std::string> seasons {
{1, "WINTER" },
{2, "WINTER" },
{3, "SPRING" },
{4, "SPRING" },
{5, "SPRING" },
{6, "SUMMER" },
{7, "SUMMER" },
{8, "SUMMER" },
{9, "FALL" },
{10, "FALL" },
{11, "FALL" },
{12, "WINTER" }
};
int M = 1;
std::string season = seasons[M];
std::cout << season << std::endl;
return 0;
}
|
Java
import java.util.HashMap;
public class GFG {
public static void main(String[] args) {
HashMap<Integer, String> seasons = new HashMap<>();
seasons.put( 1 , "WINTER" );
seasons.put( 2 , "WINTER" );
seasons.put( 3 , "SPRING" );
seasons.put( 4 , "SPRING" );
seasons.put( 5 , "SPRING" );
seasons.put( 6 , "SUMMER" );
seasons.put( 7 , "SUMMER" );
seasons.put( 8 , "SUMMER" );
seasons.put( 9 , "FALL" );
seasons.put( 10 , "FALL" );
seasons.put( 11 , "FALL" );
seasons.put( 12 , "WINTER" );
int M = 1 ;
String season = seasons.get(M);
System.out.println(season);
}
}
|
Python3
seasons = {
1 : 'WINTER' ,
2 : 'WINTER' ,
3 : 'SPRING' ,
4 : 'SPRING' ,
5 : 'SPRING' ,
6 : 'SUMMER' ,
7 : 'SUMMER' ,
8 : 'SUMMER' ,
9 : 'FALL' ,
10 : 'FALL' ,
11 : 'FALL' ,
12 : 'WINTER'
}
M = 1
season = seasons.get(M)
print (season)
|
C#
using System;
using System.Collections.Generic;
class Program {
static void Main() {
Dictionary< int , string > seasons = new Dictionary< int , string >() {
{1, "WINTER" },
{2, "WINTER" },
{3, "SPRING" },
{4, "SPRING" },
{5, "SPRING" },
{6, "SUMMER" },
{7, "SUMMER" },
{8, "SUMMER" },
{9, "FALL" },
{10, "FALL" },
{11, "FALL" },
{12, "WINTER" }
};
int M = 1;
string season = seasons[M];
Console.WriteLine(season);
}
}
|
Javascript
const seasons = {
1: 'WINTER' ,
2: 'WINTER' ,
3: 'SPRING' ,
4: 'SPRING' ,
5: 'SPRING' ,
6: 'SUMMER' ,
7: 'SUMMER' ,
8: 'SUMMER' ,
9: 'FALL' ,
10: 'FALL' ,
11: 'FALL' ,
12: 'WINTER'
};
const M = 1;
const season = seasons[M];
console.log(season);
|
Time Complexity: O(1)
Auxiliary Space: O(1)
Share your thoughts in the comments
Please Login to comment...