Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 7 odgovora
  • 5.289 pregleda

Najnovija ↓

Kako "izbrojati" broj dana u nekom mesecu? 04.05.2008. u 19:40 · pre 225 meseci #1
Rešavajući problem brojenja dana u zadatom mesecu, a čitajući tekst sa http://msdn.microsoft.com/en-u...dar.getdaysinmonth(VS.71).aspx , došao sam do sledećeg koda:
Code:

System.Globalization.JulianCalendar cal = new System.Globalization.JulianCalendar();
int dana = cal.GetDayOfMonth(new DateTime(2008, 4, 1));


Međutim, dobijem"odgovor" da April ima samo 19 dana! A on ima 30, jelte... Ja ne znam gde grešim, zna li neko od vas?
Potpis
Expert Opinions - Niche Articles
Re: Kako "izbrojati" broj dana u nekom mesecu? 04.05.2008. u 20:44 · pre 225 meseci #2
GetDayOfMonth() ne radi to sto si mislio, nego vraca dan u mesecu iz datuma. Znaci, to je prvi + 18 = 19i dan u mesecu :)
Ne mogu se setiti da postoji metod za to sto hoces, ali to mozes lako napraviti. Samo napravi jedan niz od 12 elemenata i smesti brojeve dana u njega. Ukoliko bi recimo imao DataTime podatak mogao bi ovako dobiti broj dana u tom mesecu:
Code:

DataTime MyDate = new DateTime(2008, 4, 1);
int dana = DaysPerMonth[MyDate.Month];
Potpis
Nebojsa Milanovic:
-Trumpa smatram vrhunskim predsednikom i voleo bih da živim u državi na čijem je on čelu
-Rusija ne laže, ne vodi osvajačke ratove
-Trump je svetla tačka u USA blatu
-Elon Musk, možda najpametniji i najtrezveniji Amerikanac
Re: Kako "izbrojati" broj dana u nekom mesecu? 04.05.2008. u 21:10 · pre 225 meseci #3
A šta ćemo za februar koji može da ima 28 ili 29 dana :)

Code:

Date.DaysInMonth(Now.Year, Now.Month)
Potpis
Naučio sam...
Da je važnije biti ljubazan nego biti u pravu
Re: Kako "izbrojati" broj dana u nekom mesecu? 05.05.2008. u 11:34 · pre 225 meseci #5
Ne znam da li postoji razlog sto si u inicijalnom post-u koristio Julian kalendar, ali ako radis sa tim kalendarom, DateTime.DaysInMonth ti nece raditi dobro:

Code:

            JulianCalendar cal = new JulianCalendar();
            int febJul = cal.GetDaysInMonth(2100, 2);
            int febDef = DateTime.DaysInMonth(2100, 2);


febJul ce biti 29, a febDef ce biti 28 jer je default kalendar gregorijanski. Julijanski kalendar ima prestupnu godinu svake 4 godine bez izuzetaka, gregorijanski ima svake 4 godine, ali nije prestupna ona godina koja je deljiva sa 100 i nije deljiva sa 400 (1900, 2100, 2200, 2300, 2500, itd). Tako tri put u 400 godina julijanski bezi za po dan.
Potpis
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić
Re: Kako "izbrojati" broj dana u nekom mesecu? 05.05.2008. u 19:31 · pre 225 meseci #6
Hm, posto cemo u praksi retko koristiti datume van ranga 1900-2100, moze lepo da se napise funkcija koja proverava da li je prestupna godina ili ne, te da vrati vrednost, jer znamo da je broj dana po mesecima 31,28(29),31,30,31,30,31,31,30,31,30,31
Re: Kako "izbrojati" broj dana u nekom mesecu? 05.05.2008. u 20:57 · pre 225 meseci #7
Pa da, ali ta funkcija vec postoji - kao sto je vujkev napisao :)
Potpis
Nebojsa Milanovic:
-Trumpa smatram vrhunskim predsednikom i voleo bih da živim u državi na čijem je on čelu
-Rusija ne laže, ne vodi osvajačke ratove
-Trump je svetla tačka u USA blatu
-Elon Musk, možda najpametniji i najtrezveniji Amerikanac
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme