Frage zu JAVA - Schaltjahr prüfen!

1 Antwort

Du musst zuerst auf Modulo 400 prüfen, weil wenn du zuerst auf Modulo 100 prüfst, geht er in den Zweig rein und prüft nicht mehr auf 400.

http://www.image24.net/uploads/b62dab96d8schaltjahr.png

Hab es so gemacht, immernoch keine Prüfung beim % 100

0
@Suboptimierer

Ich habe nur % 4 benutzt ansonsten ein else und es funktioniert. Ich mein ein Schaltjahr ist wenn man es durch 4 teilen kann oder?

Also müsste das doch reichen

0
@Suboptimierer

Das stimmt, nur frage ich mich ist % 400 notwendig? Ich meine % 4, kommt doch aufs selbe hinaus :)

0
@JOHNISTHEBEST

Das Besondere ist doch, dass alle Jahre, die durch 4 teilbar sind, Schaltjahre sind, mit Ausnahme der Jahrhunderte, die nicht durch 400 teilbar sind.

1900 → kein Schaltjahr
2000 → Schaltjahr
2100 → kein Schaltjahr
2200 → kein Schaltjahr
...

1900 ist durch 4 teilbar, jedoch kein Schaltjahr.

Die Erde benötigt ungefähr 365,2425 Tage für einen Sonnenumflug. Daher diese Jahrhundertausnahmen.

0

Außerdem kommt mir die Bedingung schlecht gewählt vor.

Versuche es mal so:

if( Jahr == 0 )
    // Fehler...
else if ( (Jahr % 4 == 0) && !(((Jahr - Jahr % 100) / 100) % 4 > 0) )
    // Schaltjahr...
else
    // Kein Schaltjahr...
1
@Suboptimierer

Hmm, auch blöd. Aufgabe: finde den Fehler oben ^^. Scherz!

Nächster Versuch:

if( Jahr == 0 )
    // Fehler...
else if(Jahr % 4 == 0)
{
    if( (Jahr % 100 == 0) && (Jahr % 400 > 0) )
        // Kein Schaltjahr...
    else
        // Schaljahr...
}
else
    // Kein Schaltjahr...

Ich hoffe, jetzt passt es.

1

Java, einfaches Spiel Informatik erstes Lernjahr

Hey :) Ich hab mal eine Frage an alle die ein bisschen Ahnung von Info haben. Ich habe seit Anfang des Schuljahrs Informatik in der Schule. Wir haben bis jetzt einfache Befehle in Java gelernt (erst mit Java Kara und dann ein bisschen mit BlueJ). Ich kann bis jetzt Java Klassen erstellen, Objekte mit dem Konstruktor erstellen und Methoden für die Objekte. Bei den Methoden haben wir bis jetzt nur mit If-else anweisungen und Schleifen gearbeitet. Ich kann einen Übergabe- und einen Ausgabeparameter programmieren. Was ich damit sagen will ich kann eigl. erst ziemlich wenig. Wir haben bis jetzt ein Würfelspiel programmiert wo es zwei Spieler gibt die beide würfeln. der mit der höheren Punktzahl gewinnt.

Unsere Aufgabe für die nächsten wochen ist jetzt ein kleines Spiel zu programmieren und mit Java Editor eine einfache GUI für das Spiel. es muss überhaupt nicht schwer sein (als beispiel hatten wir Black Jack).

Meine eigentliche Frage ist jetzt was es noch für spiele gibt die nicht so schwer zu realisieren sind, ich hatte mir erst überlegt uno, memory vier gewinnt oder sowas aber ich weiß überhaupt nicht wie ich damit jetzt anfangen soll oder was ich machen soll, ich denke mal das ist zu schwer. Hat irgenjemand eine Idee? Sorry wegen dem langen verwirrenden Text ich hoffe jmd versteht mich überhaupt :D

Danke im Vorraus :)

...zur Frage

Ohne Ausbildung in den Programmieren job gehen?

Hallo Alle zusammen,

Ich wollte fragen wenn man zbs in java oder einfache programmiersprachen gute kenntnisse hat und sehr damit vertraut ist auch ohne dessen ausbildung ein job in programmieren zu bekommen ?

Danke an alle Antworten

...zur Frage

Goto-Befehl in Java

Hallo mal wieder :)

Hab da ein kleines Problem, nämlich fange ich grade an mit Java zu programmieren. Habe da jetzt ein einfaches Rechenprogramm erstellt und möchte den Nutzer am Ende fragen, ob er noch eine Rechnung durchführen will oder nicht. Ich habe schon versucht das mit if zu machen, aber dann kam ich zu dem Punkt wo ich am Anfang des Programmes gehen muss um das Programm so lange zu wiederholen, wie der User es will. Könnt ihr mir da helfen? Code ist hier: http://pastebin.com/HjyQaC66

Danke schonmal im Vorraus

-bl4ckscor3

...zur Frage

wie erstellt man einen Booleschen Ausdruck mit einer int Variablen x für Java?

Erstellen Sie zu folgenden Bedingungen einen geeigneten Booleschen Ausdruck der für eine int-Variable x eine Eigenschaft testet.

i) -7<= x <= 7

ii) Die Zahl x ist eine gerade Zahl, die nicht durch drei teilbar ist.

iii) Die Zahl x ist ein Schaltjahr. Ein Schaltjahr ist durch 4 teilbar, darf aber nicht gleichzeitig durch 100 teilbar sein. Wenn es aber durch 400 teilbar ist, dann ist es trotzdem ein Schaltjahr. Beispiel: 1992 und 2000 sind Schaltjahre, aber 1800 nicht.

...zur Frage

C++, C#, Java oder Python?

Hey leute ich wollte mal anfangen Programmieren zu lernen und ggf. auch mal kleine und einfache Spiele entwickeln. Habt ihr da eine Idee was ich dafür für eine Sprache nehmen sollte? Ich bin ein anfänger und kenne mich eigentlich noch gar nicht aus. Danke schon mal im voraus :)

...zur Frage

Wie binde ich mein JDK in mein System ein?

Ich habe das JDK (Java developement Kit ) fachgerecht installiert und daraufhin ein Programm geschrieben, welches berechnet ob das nun anstehende Jahr ein Schaltjahr ist oder nicht... ich wollte es über meine im selbigen Ordner angelegte batch Datei (über die batch datei welches das cmd sofort auf den Ordner ansetzt) starten, doch der Befehl "javac" ist entweder falsch geschrieben oder konnte nicht gefunden werden.

muss ich das JDK erst irgendwo einbinden oder liegt es am Programm ??

...zur Frage

Was möchtest Du wissen?