[java] ostertag bestimmen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • [java] ostertag bestimmen

    Quellcode

    1. public class ostern {
    2. public static void main(String[] args) {
    3. //Klasse füŸr die Tastatureingabe
    4. java.util.Scanner input = new java.util.Scanner(System.in);
    5. //Prompt ~ Eingabeaufforderung
    6. System.out.print("Bitte geben Sie eine Jahreszahl ein: ");
    7. //Variable mit dem Wert der Tastatureingabe wird initialisiert
    8. int J = input.nextInt();
    9. //restliche Variablen werden initialisiert
    10. //Variablen die nur einer einer if/else Bedingung vorkommen, bekommen einen Wert zugewiesen
    11. int m=0,n=0,a,b,c,d,e,tag=0;
    12. String monat="";
    13. //Die Bedingungen füŸr m und n
    14. //fŸür die Jahreszahlen von 1583 bis 2299
    15. if(J >=1583 && J<1700)
    16. { m=22; n=2; }
    17. else if(J >=1700 && J<1800)
    18. { m=23; n=3; }
    19. else if(J >=1800 && J<1900)
    20. { m=23; n=4; }
    21. else if(J >=1900 && J<2100)
    22. { m=24; n=5; }
    23. else if(J >=2100 && J<2200)
    24. { m=25; n=6; }
    25. else if(J >=2200 && J<2300)
    26. { m=25; n=0; }
    27. else
    28. { System.err.println("
    29. Ungueltige Eingabe"); System.exit(0); }
    30. //Die Rechnungen die uns alle glŸcklich machen
    31. // Modulus
    32. a = J % 19;
    33. b = J % 4;
    34. c = J % 7;
    35. d = ((19*a)+m) % 30;
    36. e = ((2*b)+(4*c)+(6*d)+n) % 7;
    37. if((d+e) <= 9) {
    38. tag = 22+d+e;
    39. monat = "Maerz";
    40. } else if((d+e) > 9) {
    41. tag = d+e-9;
    42. tag = tag==26 ? 19 : tag;
    43. tag = (tag==25) && (d==28) && (e==6) && (a>10) ? 18 : tag;
    44. monat = "April";
    45. }
    46. System.out.println("
    47. Im Jahre "+J+" faellt Ostern auf den "+tag+". "+monat+"
    48. ");
    49. }
    50. }
    Alles anzeigen