|
There is a mathematical formula for getting the day of the week: D = Day M = Month Y = the last two digits of the year C = Century ((d + y) - (2 * c) + (y / 4) + (c / 4) + ((13 * m - 1) / 5)) % 7 = Day For the Day: 0 = Sunday, 1 = Monday, etc. For some reason my program is a day off right now but I am positive I had it working before. I haven't taken the time to debug it yet. This was done in C++ on a PC. I need to double check my formula. But with this formula it doesn't depend on a known date. I don't know if it could cause problems, I just remember people keep on saying to NOT hard-code anything in if possible (although I am sure many of us do anyway). This is a formula that my instructor gave me and I have seen it on the web. Then, if you (for some weird reason) need a day from the 1600's you can get it. -----Original Message----- From: DeLong, Eric [mailto:EDeLong@Sallybeauty.com] Sent: Wednesday, May 16, 2001 8:51 AM To: 'RPG400-L@midrange.com' Subject: RE: Can I get the Day of the week? No. I can't see that that's a problem. Personally, I can't see how one could determine the DOW without some sort of known date. These DOW functions are both simple and effective. What's the problem? Eric DeLong -----Original Message----- From: Wills, Mike N. (TC) [mailto:MNWills@taylorcorp.com] Sent: Wednesday, May 16, 2001 8:30 AM To: 'RPG400-L@midrange.com' Subject: RE: Can I get the Day of the week? The one problem I have with most of these suggestions is that the date is then dependant upon a known date. Doesn't other people see something wrong with this? Mike -----Original Message----- From: boldt@ca.ibm.com [mailto:boldt@ca.ibm.com] Sent: Wednesday, May 16, 2001 7:12 AM To: rpg400-l@midrange.com Subject: Re: Can I get the Day of the week? From: "Christopher J. Devous" <cdevous@antigua.com> Subject: RE: Can I get the Day of the week? Christopher wrote: >Try this, it's based on the famous "Doomsday" algorithm by JH Conway: > > 100 ************************************************************************** > 200 *** > 300 *** Program Name -- DOWK > 400 *** Description -- Calculate Day of Week from Gregorian > 500 *** Date > 600 *** Author -- Christopher J. Devous As much as I respect John Horton Conway, RPG programmers can't do day of week computation much shorter than with this procedure: //\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\// // Procedure: DayOfWeek // // Purpose: Determine the day of week for a particular date // // Parameters: // // I: dt -- date // // Returns: // // 0..6 -- 0=Sunday, 1=Monday, 2=Tuesday, etc. // // Notes: // // January 5, 1800 is a Sunday. This procedure only works for // // dates later than 1800-01-05. // //\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\// P DayOfWeek b D DayOfWeek pi 10i 0 D dt d value datfmt(*iso) /free return %rem (%diff (dt: d'1800-01-05': *days): 7); /end-free P DayOfWeek e Hans Boldt, ILE RPG Development, IBM Toronto Lab, boldt@ca.ibm.com +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +--- +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +--- +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +--- +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.