Benjamin Buxbaum: Verständnisproblem bei Code

Beitrag lesen

Hi!

aber ich will die Anzahl der Reihen berechnen, die in dem Bild mit den roten Zahlen dargestellt sind.

Dazu teilst du die Tage des Monats durch Sieben und rundest auf. Um herauszufinden, ob du außer den so berechneten Zeilen noch eine weitere benötigst, machst du folgendes:
Du setzt du den Tag mit setDate() auf 1 und checkst mit getDay(), welcher Wochentag der 1. Tag des Monats ist. Wenn es ein Sonntag ist (0) benötigst du in jedem Fall eine weitere Zeile. Ansonsten nur, wenn Wochentag-1 + (TageDesMonats % 7) > 7 ist.
(TageDesMonats % 7 sind die "überschüssigen" Tage, die also keine volle Woche ergeben.)
Alternativ könnte man das ganze auch per switch/Schleifen oder was weiß ich machen, dürfte aber länger sein. Bei Monaten mit 30 Tagen braucht man nur eine zusätzliche Zeile, wenn der erste Tag ein Sonntag ist. Bei 31 Tagen, wenn der 1. ein Sonntag oder Samstag ist.
Wenn der Februar 28 Tage hat, braucht man immer eine Zeile mehr, es sei denn  er beginnt mit einem Montag. Hat er 29 Tage, braucht man immer eine Zeile mehr, es sei denn er beginnt mit Montag oder Dienstag.

mfG

--
Selfcode: ie:} fl:{ br:> va:) ls:< fo:( rl:? n4:# ss:| de:] js:| ch:? sh:( mo:? zu:)
"And all those exclamation marks, you notice? Five? A sure sign of someone who wears his underpants on his head."
(Terry Pratchett)