Wochentag eines Tages im Jahr herausfinden

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

  • Wochentag eines Tages im Jahr herausfinden

    Hi Leute,
    könnte mir jemand villeicht eine Tipp geben, wie ich solch ein Programm angehe.
    Wir haben als Aufgabe bekommen herauszufinden welcher Wochentag der 288. Tag des Jahres ist unter der Bedingung, dass der 17. Tag im Jahr ein Mittwoch ist.

    Habe erst grad mit Java angefangen und bin noch ein totaler Neuling, nur zur Vorwarnung.

    Ich wollte nicht nach einer vorgekauten Lösung betteln sondern Hilfestellungen erfragen, danke!

    So long

    Mick
  • wenn ihr das in der schule macht, sollt ihr bestimmt einen algorithmus schreiben
    was du also brauchst

    funktion um zu überprüfen ob das jahr ein schaltjahr ist
    (in etwa so)

    Quellcode

    1. boolean isSchaltjahr(int y)
    2. {
    3. if((y % 4) == 0 && (y < 1600))
    4. return true;
    5. else
    6. return (y % 4 == 0) && (!(y % 100 == 0) || (y % 400 == 0)) ? true : false;
    7. }


    danach musst du den februar kürzen

    Quellcode

    1. int monate[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    2. monate[2] = isSchaltjahr(y) ? 29 : monate[2];


    und ansonstn hilft dir das modulo 7 weiter
  • Hi,
    schon mal danke für die schnellen Antworten!
    Ein Kumpel hat mir es geschickt, aber wenn einer von euch so nett wäre und es mir (am besten Schritt für Schritt) erklären könnte, das wäre super, danke!
    Und ja, ich bräuchte es für die Schule und wie gesagt, ich bin ein totaler Anfänger in Java und was coden angeht überhaupt.


    Quellcode

    1. public class Wochentag
    2. {
    3. public static void main(String[] args)
    4. {
    5. int jahrestag = 289;
    6. int wochentag = jahrestag%7;
    7. int ausgabe;
    8. if(wochentag>0)
    9. {
    10. ausgabe = (wochentag-1);
    11. }
    12. else
    13. {
    14. ausgabe = 6;
    15. }
    16. System.out.println("Ausgabe: " + ausgabe + ".");
    17. }
    18. }
    Alles anzeigen


    Gruß

    Mick
  • glaube kaum, dass sich euer lehrer damit begnügt
    schaltjahrbestimmunt gehört nunmal dazu

    am code brauch man nicht viel erklären
    weißt du was modulo ist?#
    289 / 7 = 41 Rest 2
    287%7 ergibt also 2

    gegeben war 17. tag = mittwoch
    17%7 = 2 Rest 3

    wenn 3 also ein mittwoch ist, dann ist 2 ein dienstag, 1 ein montag, 0 ein sonntag
    dein kumpel hat wohl definiert, dass sonntag die woche bei montag anfängt
    also ist 0=montag, 6=sonntag