Hallo,
um es vorwegzunehmen: Ich hab keinen Plan von Programmierung und suche nur im Auftrag meiner Tochter eine Lösung, weil ich ihr absolut nicht helfen kann. Sie soll das Osterfest berechnen und hat das hier bisher geschrieben?
Kann ihr jemand sagen ob das so richtig ist?
DIe 2. Aufgabe war eine Zellersche Formel (was immer das ist):
Ich wäre Euch sehr verbunden wenn da mal jemand drüberschauen könnte und "Verbesserung" vorschlägt, bzw Fehler entdeckt.
vG
malbe
um es vorwegzunehmen: Ich hab keinen Plan von Programmierung und suche nur im Auftrag meiner Tochter eine Lösung, weil ich ihr absolut nicht helfen kann. Sie soll das Osterfest berechnen und hat das hier bisher geschrieben?
Code:
public class Osterfest
{
public static void main(String[] args)
{
int jahr, a, b, c, h1, h2, n, m, d, e, ostern, tag;
String monat;
jahr = IO.getInt("Bitte geben Sie das gewünschte Jahr an.");
a = jahr % 19;
b = jahr % 4;
c = jahr % 7;
h1 = jahr / 100;
h2 = jahr / 400;
n = 4 + h1 - h2;
m = 15 + h1 - h2 - ((8*h1 + 13) / 25);
d = (19*a + m) % 30;
e = (2*b + 4*c + 6*d + n) % 7;
if (d + e == 35) {
ostern = 50;
}
if ((d == 28) && (e == 6) && (a > 10)) {
ostern = 49; }
else {
ostern = 22 + e + d; }
if (ostern > 31) {
monat = "April";
tag = ostern - 31; }
else {
monat = "März";
tag = ostern; }
IO.show("Ostern wird im Jahr "+jahr+" am "+tag+". "+monat+" sein.");
}
}
Kann ihr jemand sagen ob das so richtig ist?
DIe 2. Aufgabe war eine Zellersche Formel (was immer das ist):
Code:
public class zellersche_Formel
{
public static void main(String[] args)
{
int t, m, j, h, w;
String a;
t = IO.getInt("Bitte geben Sie den gewünschten Tag an.");
m = IO.getInt("Bitte geben Sie den gewünschten Monat an.");
j = IO.getInt("Bitte geben Sie das gewünschte Jahr an.");
h = j / 100;
j = j % 100;
if (m < 3) {
m = m + 10;
if (j == 0) {
j = 99;
h = h -1;
}
else {
j = j -1 ;
}
}
else {
m = m - 2;
}
w = (t + (26*m - 2) / 10 + (5*j / 4) + (h / 4) - 2*h) % 7;
if (w<=0) {
w = w + 7;
}
switch (w) {
case 1: { a = "Montag"; break; }
case 2: { a = "Dienstag"; break; }
case 3: { a = "Mittwoch"; break; }
case 4: { a = "Donnerstag"; break; }
case 5: { a = "Freitag"; break; }
case 6: { a = "Samstag"; break; }
case 7: { a = "Sonntag"; break; }
}
IO.show(""+a+"");
}
}
Ich wäre Euch sehr verbunden wenn da mal jemand drüberschauen könnte und "Verbesserung" vorschlägt, bzw Fehler entdeckt.
vG
malbe