# Schaltjahrberechnung, nur wie?



## XorgimX (3. Okt 2005)

Hi, hab grad in der Fachoberschule angefangen mit Java zu programmieren (in Eclipse). Jetzt sollen wir ein Programm erstellen so funktionieren soll:

Eingabe Jahr
Ausgabe Schaltjahr oder nicht

-Ein Schaltjahr ist wenn:

...Jahr durch 4 teilbar ist, nicht aber durch 100

...Jahreszahl durch 4, 100 und 400 teilbar ist

sonst kein Schaltjahr.



Hoffe Ihr könntmir helfen wäre sher nett, wenn Ihr mir bis Mittwoch Bescheid sagen könnt.
Danke im Vorraus!


----------



## thE_29 (3. Okt 2005)

Naja, was isn da so schwer dran??

Sind 2 if Bedingungen mit Modulo divisionen...

den rest machst jetzt schön selbst..


----------



## XorgimX (3. Okt 2005)

Danke, schon mal. Aber leider sind wir erst so weit, dass wir noch nichts von modulo divisionen gehört haben. Kannst mirs ja erklären wenn de willst.


----------



## SebiB90 (3. Okt 2005)

% ist der modulo operator und gibt den rest einer division zurück
also z.b. 3 % 2 = 1


----------



## XorgimX (3. Okt 2005)

Danke für die schnelle Antwort. Und wie soll ich das in Verbindung mit dem Schaltjahr bringen?
Also z.B. if(Jahr%4= u.s.w.) odser wie?


----------



## SebiB90 (3. Okt 2005)

XorgimX hat gesagt.:
			
		

> Danke für die schnelle Antwort. Und wie soll ich das in Verbindung mit dem Schaltjahr bringen?
> Also z.B. if(Jahr%4= u.s.w.) odser wie?


ja, also if(jahr % 4 == 0) überprüft ob das jahr durch 4 teilbar ist und das machste dann auch noch mit den anderen zahlen


----------



## XorgimX (3. Okt 2005)

Und wie schreib ich das, wenn das Jahr nicht durch z.B. 100 teilbar sein soll?


----------



## SnooP (3. Okt 2005)

Verknüpfung von logischen Bedingungen mit logischen Operatoren, wie && (log. und) oder || (log. Oder) - dazu solltest du dir über Logik-Begriff ein wenig Gedanken machen, Wahrheitstafeln finden sich überall im Netz und in jedem guten Programmiererbuch oder jeder besserer VL.

if (jahr % 4 == 0 && jahr % 100 != 0 &&...)

sinnigerweise gehört sowas in eine Methode (istSchaltjahr oder so) die einen boolschen Wert returned...


----------



## XorgimX (3. Okt 2005)

OK. So hab ich mir as auch schon vorgestellt, da wir ja schon Operatoren haben. Ich hab es allerdings anders geschrieben:
if(Jahr % 4 == 0) 
  (Jahr % 100 != 0)
Danke nochmal!


----------



## The_S (4. Okt 2005)

Alternativ könntest du auch die Klasse GregorianCalendar verwenden und auf isLeapYear(jahr) überprüfen :wink:


----------



## bygones (4. Okt 2005)

die Definition ist nicht ganz korrekt


> * Glatt durch 4 teilbare Jahre sind Schaltjahre.
> * Glatt durch 100 teilbare Jahre sind jedoch keine Schaltjahre.
> * Glatt durch 400 teilbare Jahre sind aber wieder Schaltjahre.


----------



## thE_29 (4. Okt 2005)

Nicht schon wieder diese Schaltjahr definionssache ... :bae:

Bin dafür das sie einfach abgeschaft werden und die Tage haben 5 min mehr oder so


----------



## bummerland (4. Okt 2005)

XorgimX hat gesagt.:
			
		

> -Ein Schaltjahr ist wenn:
> 
> ...Jahr durch 4 teilbar ist, nicht aber durch 100
> 
> ...





			
				deathbyaclown hat gesagt.:
			
		

> die Definition ist nicht ganz korrekt
> 
> 
> > * Glatt durch 4 teilbare Jahre sind Schaltjahre.
> ...


ist das nicht das gleiche? ???:L


----------



## The_S (4. Okt 2005)

becstift hat gesagt.:
			
		

> XorgimX hat gesagt.:
> 
> 
> 
> ...



doch, denke schon


----------



## bygones (4. Okt 2005)

lol stimmt - hab nur schaltjahr definition gelesen und dachte "das schon wieder" - gleich mal schlau daher reden ;-)

bygones


----------

