# Thread: help me rewrite my long code.

1. Member
Join Date
Apr 2011
Posts
5
Rep Power
0

## help me rewrite my long code.

The problem:
Write a method named season that takes two integers as parameters representing a month and day and that returns a String indicating the season for that month and day. Assume that months are specified as an integer between 1 and 12 (1 for January, 2 for February, and so on) and that the day of the month is a number between 1 and 31.

If the date falls between 12/16 and 3/15, you should return "Winter". If the date falls between 3/16 and 6/15, you should return "Spring". If the date falls between 6/16 and 9/15, you should return "Summer". And if the date falls between 9/16 and 12/15, you should return "Fall".

And my code

public static String season(int month, int day){
String k="";
if(month <3){
k="Winter";
}else if(month <6){
k = "Spring";
}else if (month <9){
k = "Summer";
}else if (month<12){
k = "Fall";
}
if(month==3){
if(day<=15){
k="Winter";
}else{
k = "Spring";
}
}
if(month==6){
if(day<=15){
k="Spring";
}else{
k = "Summer";
}
}
if(month==9){
if(day<=15){
k="Summer";
}else{
k = "Fall";
}
}
if(month==12){
if(day<=15){
k="Fall";
}else{
k = "Winter";
}
}
return k;
}
My code is true, but I think it's quite long.
thanks,

2. Instead of nested statements you can and together multiple conditions. With this you should be able to have four if clauses which each test some range, and if passed, returns the correct season string.

#### Posting Permissions

• You may not post new threads
• You may not post replies
• You may not post attachments
• You may not edit your posts
•