Thread: calendar of 12months when year is entered

1. Member
Join Date
Nov 2007
Posts
12
Rep Power
0

calendar of 12months when year is entered

hi everyone,

i need to take year and month as input and generate a calendar for 12months,
i need to rite a jsp page with servlet

can any 1 helpplz
Last edited by veena; 05-05-2008 at 02:38 PM.

2. Member
Join Date
Nov 2007
Posts
12
Rep Power
0
yes i did and cudnt find anything

3. Ok, here is a way.

Java Code:
`N = d + 2m + [3(m+1)/5] + y + [y/4] - [y/100] + [y/400] + 2`
d - days of a monthe
m - moth id(from 1 to 12 respectively)
y - year

Do the calculations and find the N. Keep in mind that to drop the remainder in each [] and only get the whole number. Don't rounding off numbers. Then divide the N by 7. Remainder give the answer, day of the week.

0 - Saturday
1 - Sunday
2 - Monday
3 - Tuesday and so on.

Try it and see.

4. Ah, made a mistake in my explanation. Here is an example for today(5/5/2008)

Java Code:
```N = 5 + 2(5) + [3(6)/5] + 2008 + [2008/4] - [2008/100] + [2008/400] + 2

N = 5 + 10 + 3 + 2008 + 502 - 20 + 5 + 2

N = 2515```
After dividing by 7, remainder is 2, means that today is Monday. Yep, it's correct.

d is not the number of days of the month. Days spending up to date which we want to processing.

Did you get it?

5. Member
Join Date
Nov 2007
Posts
12
Rep Power
0
im trying to write in servlet and get in jsp
Last edited by veena; 05-05-2008 at 02:40 PM.

6. The way Eranga explain it is correct. except you have to account for leap years. which you do with an array I forget the exact table.

7. Originally Posted by veena
i tried for 1/1/2008
but im getting N=1 which is monday where i shud get tuesday as first day
You made a mistake there again.

Java Code:
```N = 1 + 2(1) + [3(2)/5] + 2008 + [2008/4] - [2008/100] + [2008/400] + 2

N = 1 + 2 + 1 + 2008 + 502 - 20 + 5 + 2

N = 2502```
Divide N by 7, remainder is 3. Means it's Tuesday. Check it again. :)

8. Member
Join Date
Nov 2007
Posts
12
Rep Power
0
hey Eranga

9. Is it.

Java Code:
```N = 1 + 2(1) + [3(2)/5] + 2008 + [2008/4] - [2008/100] + [2008/400] + 2

N = 1 + 2 + 1 + 2008 + 502 - 20 + 5 + 2

N = 5 + 2008 + 502 - 20 + 7

N = 2510 - 20 + 12

N = 2502```
Where I'm going wrong pal. Can you pointed it for me?

10. Member
Join Date
Nov 2007
Posts
12
Rep Power
0
let me try again
Last edited by veena; 05-05-2008 at 02:41 PM.

Try this on for size.

12. Go it. I've miss a very important rule there. Really sorry about. Still I remembering this and let you know, because I do those things few years back when I'm in the university for maths.

You have to use numbers 13 and 14 for the months of January and February, with the previous year. In our discussion,

1/1/2008 should be 1/13/2007.

Lets try it.

Java Code:
```N = 1 + 2(13) + [3(14)/5] + 2007 + [2007/4] - [2007/100] + [2007/400] + 2

N = 1 + 26 + 8 + 2007 + 501 - 20 + 5 + 2

N = 2530```
You get the correct answer there.

Lets do another example, for 20/2/2008. So the date should be 20/14/2007

Java Code:
```N = 20 + 2(14) + [3(15)/5] + 2007 + [2007/4] - [2007/100] + [2007/400] + 2

N = 20 + 28 + 9 + 2007 + 501 - 20 + 5 + 2

N = 2552```
Yep, I'm correct. Give the correct answer here too.

Keep in mind that, rule only valid for January and February.

13. Member
Join Date
Nov 2007
Posts
12
Rep Power
0
yep i got it and did in servlet
when i was searching i got the same formula

any ways thnks very much
its a nice formula though
Last edited by veena; 05-05-2008 at 02:41 PM.

14. I think you can just use the Gregorian calendar I think also.

15. No matter what calender you used, my formula is working. We have used in few projects that formula, when I'm in the University.

16. Hey veena, no need to edit your post time to time. If you expecting the answer in different approaches please let it to others. Because later someone read your thread, really confused. :)

Posting Permissions

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