procedure TForm1.Button1Click(Sender: TObject); Const Aar: Array[1..12] of string[3] = ('Jan','Feb','Mar','Apr','Maj','Jun','Jul','Aug','Sep','Okt','Nov','Dec'); Start = 2000; Slut = 2010; Var i,j,dage: integer; begin Listbox1.clear; for i := Start to Slut do for j := 1 to 12 do begin case j of 1,3,5,7,8,10,12: dage := 31; 4,6,9,11: dage := 30; 2: begin if (i mod 4) = 0 then If (i mod 100) = 0 then If (i mod 1000) = 0 then dage := 29 else dage := 28 else dage := 29 else dage := 28; end; end; Listbox1.items.add(Aar[j]+' '+IntToStr(i)+' '+IntToStr(dage)+' antal dage'); end; end;
Her er en lille function til at bestemme antallet af dage i en måned i et givent år :
function GetDaysInMonth(const Month, Year : Integer) : Integer; const MonthArray : array[1..12] of integer = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); begin Result := MonthArray[Month]; if Month = 2 then Result := Result + Integer(IsLeapYear(Year)); end;
Hvis du så vil vide hvormange dage der er i et år kan du gøre således :
function DaysInYear(const Year : Integer) : Integer; begin Result := 365 + Integer(IsLeapYear(Year)); end;
2.2 Hvad er den Gregorianske kalender ? Den Gregorianske kalender, der den almindelige brugte i dag.. Den blev foreslået af Aloysius Lilius, en psykolog fra Naples, og blev taget i brug af pave Gregory XIII, med instruktioner fra rådet i Trent (1545-1563), for at kunne rette de fejl der var i den gamle Julianske kalender. Det blev befalet af pave Gregory XIII den 24. Februar 1582. Denne befaling blev kaldt ”Inter Gravissimas”, efter de første to ord i befalingen. I den Gregorianske kalender, er det tropiske år beregnet til 365 97/400 dage » 365.2425 dage. Det tager cirka 3300 år før det tropiske år flytte sig 1 dag, i forhold til kalenderen. At et år er 365.2425, giver 97 skudår på 400 år. 2.2.1 Hvilke år er skudår ? Den Gregorianske kalender har 97 skudår på 400 år.
Alle årstal delelige med 4 er skudår. Alle årstal er delelige med 100 er ikke skudår, dog hvis årstalet også er deleligt med 400 er det skudår alligevel. Så 1700, 1800, 1900, 2100, 2200 og 2300 er ikke skudår, mens 1600, 2000 og 2400 er.
En myte til trods, har der ikke været , og er der ikke, år med dobbelt skudår, altså ingen år med 367 dage i. Sverige 1712, dog undtaget, se noten til afsnit 2.2.4
2.2.2 Hvad med 4000 års reglen ? Det er foreslået, af astronom John Herschel (1792-1871) med flere, at en bedre beregning for længden på et tropisk år skulle være 365 969/4000 dage » 365.24225 dage. Det giver 969 skudår for hvert 4000 år, og ikke 970 som den Gregorianske kalender foreskriver. Denne ændring kan laves ved at fjerne et skudår fra den Gregorianske kalender hver 4000. år, feks. ved at undlade skudår når årstallet er deleligt med 4000.
Det skal lige bemærkes at denne regel ikke er officiel indført.
2.2.3 Gør grækerne det ikke anderledes? Da den ortodokse kirke i Grækenland, langt om længe besluttede sig for at skifte til den Gregorianske kalender, i 1920’erne, forsøgte de at forbedre den Gregorianske kalenders regler for skudår, ved at erstatte 400 års reglen med det følgende :
Hvert årstal delt med 900 som giver en divisionsrest på 200 eller 600 er et skudår.
Det gør 1900, 2100, 2200, 2300, 2500, 2600, 2700, 2800 til ikke skudår, mens 2000, 2400 og 2900 er. Denne regel giver 218 skudår for hver 900 år, og længden på et år bliver således 365 218/900 dage » 365.24222, hvilket er mere korrekt end de officielle 365.2425 fra den Gregorianske kalender.
function GetDaysInMonth(const Month, Year : Integer) : Integer; const MonthArray : array[1..12] of integer = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); begin Result := MonthArray[Month]; if month=2 then if IsLeapYear(Year) then inc(result); end;
Ok men hvorfor det????? Selvom jeg ikke kan se 100% hvad du mener så er et "gennemløb" noget med at en dag er = 1 (heltal) osv, og det kan vi hjælpe med, og har hjulpet men du afviser bare uden begrundelse, lidt nederen synes jeg.
alfabeta>> Dit spøtgsmål gik på hvormange dage der er i et bestemt år.
Den 17/01-2003 klokken 13:13:05 besvarede jeg dette spørgsmål Både med antal dage i et bestemt år samt antal dage i en måned.
Så sank du i jorden ind til dd. hvor du pludselig uden grund lukker dit spørgsmål, til trods for spørgsmåled særdeles fyldesgørende er besvaret af bla. undertegnet.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.