Erste Schritte Wie viele Montage gab es?

gehdecke

Mitglied
Hallo ich hatte habe eine frage ich wollte mit Hilfe von 3 forschleifen herausfinden wie viele Montage es zwischen dem 1.1.1900 und 31.12.1999 gab die auf einen 1 des monats waren. Hat jemand eine Idee?

Lg
 

gehdecke

Mitglied
Den Code im ganzen habe ich jetzt nicht da sitze gerade im Zug:-(( aber es sind 3 verschachtelte for Schleifen einmal für das Jahr dann für den Monat und für den Tag.
 

gehdecke

Mitglied
Na ich wollte weil ich gerade for Schleifen als Stoff habe:))

dachte es so etwa

Java:
for( int= i; i<=1999;i++)
     for( int=a; a<=Monat;a++ (Schaltjahr ....)
       for( int=z; b<=tag; Summemontag +1)
 
G

Gast2

Gast
Hmmm, ich glaube da machst du dich nicht glücklich mit....

Ein einfache Möglichkeit wäre durch den Kalender zu iterieren:
Java:
    Calendar endCal = new GregorianCalendar(1999,12,31);
    Calendar startCal = new GregorianCalendar(1900,1,1);
    int mondays = 0;
    do {
        startCal.add(Calendar.DAY_OF_MONTH, 1);
        if (startCal.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY){
            ++mondays;
        }
    } while (startCal.getTimeInMillis() < endCal.getTimeInMillis());
    System.out.println("mondays: "+mondays);
	}
 

L-ectron-X

Gesperrter Benutzer
Ich weiß nicht, ob for-Schleifen dazu notwendig sind, bzw. ob dieser Ansatz dafür brauchbar ist.
Schaltjahr? Dürfte doch Wurst sein. Auch in einem Schaltjahr haben die Wochen 7 Tage und ein Wochentag wird da auch nicht übersprungen...
 

gehdecke

Mitglied
Aber bei einem Schaltjahr sind es im Februar 29 Tage heißt das es Nach dem Schaltjahr falsch rauskommt.

Ich wurde es aber gerne mit die Schleifen probieren alles andere ist zu einfach
 
H

hüteüberhüte

Gast
Ich würd es auch so machen wie fassy, aber richtig:

Java:
    public static void main(String[] args) {
        Calendar start = new GregorianCalendar(1900, 0 , 1 );
        Calendar endee = new GregorianCalendar(1999, 11, 31);
        SimpleDateFormat sdf = (SimpleDateFormat) DateFormat.getDateInstance(DateFormat.FULL);
        int cnt = 0;
        while (start.compareTo(endee) <= 0) {
            if (start.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) {
                System.out.println(sdf.format(start.getTime()));
                cnt++;
            }
            start.add(Calendar.MONTH, 1);
        }
        System.out.println("cnt = " + cnt);
    }

Code:
run:
Montag, 1. Januar 1900
Montag, 1. Oktober 1900
Montag, 1. April 1901
Montag, 1. Juli 1901
Montag, 1. September 1902
Montag, 1. Dezember 1902
Montag, 1. Juni 1903
Montag, 1. Februar 1904
Montag, 1. August 1904
Montag, 1. Mai 1905
Montag, 1. Januar 1906
Montag, 1. Oktober 1906
Montag, 1. April 1907
Montag, 1. Juli 1907
Montag, 1. Juni 1908
Montag, 1. Februar 1909
Montag, 1. März 1909
Montag, 1. November 1909
Montag, 1. August 1910
Montag, 1. Mai 1911
Montag, 1. Januar 1912
Montag, 1. April 1912
Montag, 1. Juli 1912
Montag, 1. September 1913
Montag, 1. Dezember 1913
Montag, 1. Juni 1914
Montag, 1. Februar 1915
Montag, 1. März 1915
Montag, 1. November 1915
Montag, 1. Mai 1916
Montag, 1. Januar 1917
Montag, 1. Oktober 1917
Montag, 1. April 1918
Montag, 1. Juli 1918
Montag, 1. September 1919
Montag, 1. Dezember 1919
Montag, 1. März 1920
Montag, 1. November 1920
Montag, 1. August 1921
Montag, 1. Mai 1922
Montag, 1. Januar 1923
Montag, 1. Oktober 1923
Montag, 1. September 1924
Montag, 1. Dezember 1924
Montag, 1. Juni 1925
Montag, 1. Februar 1926
Montag, 1. März 1926
Montag, 1. November 1926
Montag, 1. August 1927
Montag, 1. Oktober 1928
Montag, 1. April 1929
Montag, 1. Juli 1929
Montag, 1. September 1930
Montag, 1. Dezember 1930
Montag, 1. Juni 1931
Montag, 1. Februar 1932
Montag, 1. August 1932
Montag, 1. Mai 1933
Montag, 1. Januar 1934
Montag, 1. Oktober 1934
Montag, 1. April 1935
Montag, 1. Juli 1935
Montag, 1. Juni 1936
Montag, 1. Februar 1937
Montag, 1. März 1937
Montag, 1. November 1937
Montag, 1. August 1938
Montag, 1. Mai 1939
Montag, 1. Januar 1940
Montag, 1. April 1940
Montag, 1. Juli 1940
Montag, 1. September 1941
Montag, 1. Dezember 1941
Montag, 1. Juni 1942
Montag, 1. Februar 1943
Montag, 1. März 1943
Montag, 1. November 1943
Montag, 1. Mai 1944
Montag, 1. Januar 1945
Montag, 1. Oktober 1945
Montag, 1. April 1946
Montag, 1. Juli 1946
Montag, 1. September 1947
Montag, 1. Dezember 1947
Montag, 1. März 1948
Montag, 1. November 1948
Montag, 1. August 1949
Montag, 1. Mai 1950
Montag, 1. Januar 1951
Montag, 1. Oktober 1951
Montag, 1. September 1952
Montag, 1. Dezember 1952
Montag, 1. Juni 1953
Montag, 1. Februar 1954
Montag, 1. März 1954
Montag, 1. November 1954
Montag, 1. August 1955
Montag, 1. Oktober 1956
Montag, 1. April 1957
Montag, 1. Juli 1957
Montag, 1. September 1958
Montag, 1. Dezember 1958
Montag, 1. Juni 1959
Montag, 1. Februar 1960
Montag, 1. August 1960
Montag, 1. Mai 1961
Montag, 1. Januar 1962
Montag, 1. Oktober 1962
Montag, 1. April 1963
Montag, 1. Juli 1963
Montag, 1. Juni 1964
Montag, 1. Februar 1965
Montag, 1. März 1965
Montag, 1. November 1965
Montag, 1. August 1966
Montag, 1. Mai 1967
Montag, 1. Januar 1968
Montag, 1. April 1968
Montag, 1. Juli 1968
Montag, 1. September 1969
Montag, 1. Dezember 1969
Montag, 1. Juni 1970
Montag, 1. Februar 1971
Montag, 1. März 1971
Montag, 1. November 1971
Montag, 1. Mai 1972
Montag, 1. Januar 1973
Montag, 1. Oktober 1973
Montag, 1. April 1974
Montag, 1. Juli 1974
Montag, 1. September 1975
Montag, 1. Dezember 1975
Montag, 1. März 1976
Montag, 1. November 1976
Montag, 1. August 1977
Montag, 1. Mai 1978
Montag, 1. Januar 1979
Montag, 1. Oktober 1979
Montag, 1. September 1980
Montag, 1. Dezember 1980
Montag, 1. Juni 1981
Montag, 1. Februar 1982
Montag, 1. März 1982
Montag, 1. November 1982
Montag, 1. August 1983
Montag, 1. Oktober 1984
Montag, 1. April 1985
Montag, 1. Juli 1985
Montag, 1. September 1986
Montag, 1. Dezember 1986
Montag, 1. Juni 1987
Montag, 1. Februar 1988
Montag, 1. August 1988
Montag, 1. Mai 1989
Montag, 1. Januar 1990
Montag, 1. Oktober 1990
Montag, 1. April 1991
Montag, 1. Juli 1991
Montag, 1. Juni 1992
Montag, 1. Februar 1993
Montag, 1. März 1993
Montag, 1. November 1993
Montag, 1. August 1994
Montag, 1. Mai 1995
Montag, 1. Januar 1996
Montag, 1. April 1996
Montag, 1. Juli 1996
Montag, 1. September 1997
Montag, 1. Dezember 1997
Montag, 1. Juni 1998
Montag, 1. Februar 1999
Montag, 1. März 1999
Montag, 1. November 1999
cnt = 173
ERSTELLEN ERFOLGREICH (Gesamtzeit: 0 Minuten 0 Sekunden)

Grüßle

Edit: Ich weiß nicht, ob alles richtig ist, aber hier noch eine statische Methode (gibt alle Freitag 13 aus):

Java:
    public static int printDays(Date start, Date endee, int dayOfMonth, int dayOfWeek) {
        GregorianCalendar startCal = new GregorianCalendar();
        GregorianCalendar endeeCal = new GregorianCalendar();
        startCal.setTime(start);
        endeeCal.setTime(endee);
        SimpleDateFormat sdf = (SimpleDateFormat) DateFormat.getDateInstance(DateFormat.FULL);
        int count = 0;
        while (startCal.get(Calendar.DAY_OF_MONTH) < dayOfMonth) {
            startCal.add(Calendar.DAY_OF_MONTH, 1);
        }
        while (startCal.compareTo(endeeCal) <= 0) {
            if (startCal.get(Calendar.DAY_OF_WEEK) == dayOfWeek) {
                System.out.println(sdf.format(startCal.getTime()));
                count++;
            }
            startCal.add(Calendar.MONTH, 1);
        }
        return count;
    }

    public static void main(String[] args) throws ParseException {
        SimpleDateFormat sdf = (SimpleDateFormat) DateFormat.getDateInstance();
        System.out.println("count = " + printDays(
                sdf.parse("01.01.1900"),
                sdf.parse("31.12.2013"),
                13,
                Calendar.FRIDAY));
    }

Ich hab diesmal nix mit dem Interface Calendar gemacht... ob man das so machen würde?
 
Zuletzt bearbeitet von einem Moderator:
H

hüteüberhüte

Gast
Upps,
Code:
while (startCal.get(Calendar.DAY_OF_MONTH) != dayOfMonth) {
wäre korrekt.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Screenshots machen und zwar viele und speichern Java Basics - Anfänger-Themen 12
H So viele Fehlermeldungen, dass ich nicht weiß wo das Problem ist. Java Basics - Anfänger-Themen 6
J Problem mit einer Methode, die beliebig viele Objekte in Array speichern soll Java Basics - Anfänger-Themen 6
s_1895 zu viele Zeilen in der Main Methode Java Basics - Anfänger-Themen 4
P Methode die ausgibt wie viele Primzahlen es zwischen 2 und n gibt Java Basics - Anfänger-Themen 10
P Nutzer entscheiden lassen, wie viele Zahlen dieser in ein Array eingeben möchte. Java Basics - Anfänger-Themen 6
S Hilfe : Unendlich viele Zufallszahlen erstellen? Java Basics - Anfänger-Themen 8
I Wie viele 1 an Bits hat die Zahl x? Java Basics - Anfänger-Themen 5
R Zu viele leere Parameter Java Basics - Anfänger-Themen 8
T Variablen Beliebig viele Arrays in Schleife erstellen Java Basics - Anfänger-Themen 1
M Aufgabe: Eine Klasse und viele Untermethoden Java Basics - Anfänger-Themen 30
D Klassen Doppelt so viele Elemente in Arraylist ? Java Basics - Anfänger-Themen 4
D zu viele MySQL Connections Java Basics - Anfänger-Themen 18
F Threads ftp4j, viele Dateien upload Java Basics - Anfänger-Themen 5
L Viele Fragen zu den Grundlagen Java Basics - Anfänger-Themen 5
B Beliebig viele Rechtecke erzeugen Java Basics - Anfänger-Themen 5
N Beliebig viele parameter Java Basics - Anfänger-Themen 3
D Viele grafische unterschiede von Windows xp zu Windows 7 Java Basics - Anfänger-Themen 3
T unterschiedlich viele parameter übergeben Java Basics - Anfänger-Themen 5
T Zu viele Fenster - HILFE! Java Basics - Anfänger-Themen 5
Prafy Beliebig viele Arrays erstellen? Java Basics - Anfänger-Themen 2
J Methoden Beliebig viele Objekt-Eingabeparameter im Konstruktor Java Basics - Anfänger-Themen 6
T viele "kleine" Fragen... Java Basics - Anfänger-Themen 3
M Zu viele Verkettungen von Klassen Java Basics - Anfänger-Themen 4
M Input/Output Viele short aus Datei lesen und von Little Endian zu Big Endian umwandeln Java Basics - Anfänger-Themen 12
S Variablen viele Instanzvariablen vermeiden Java Basics - Anfänger-Themen 14
El_Lobo Methoden Zu viele Getter- und Settermethoden - geht das einfacher? Java Basics - Anfänger-Themen 3
L buffered reader produziert zu viele und seltsame zeichen Java Basics - Anfänger-Themen 2
D Erste Schritte Viele Objekte einer Klasse "verwalten" Java Basics - Anfänger-Themen 17
T Beliebig viele Werte in Array zwischenspeichern Java Basics - Anfänger-Themen 15
S Viele Fragen von einem Anfänger in Java Java Basics - Anfänger-Themen 2
F Viele Controller-Klassen Java Basics - Anfänger-Themen 5
P Datentypen extrem viele Fehler nur irgendwie seh ich den Grund ned... Java Basics - Anfänger-Themen 3
M Viele GUI-Variablen Java Basics - Anfänger-Themen 4
O Wie kann man das einfach lösen? (dynamisch viele Attribute) Java Basics - Anfänger-Themen 6
U JTable viele möglichkeiten, keine Lösung Java Basics - Anfänger-Themen 5
H Reflexion: Eine Methode, beliebig viele Parameter (Java 1.4.2) Java Basics - Anfänger-Themen 8
M Viele verschachtelte Schleifen Java Basics - Anfänger-Themen 14
Avalarion Erschaffung eines Shadowrun Charaktergenerators - Viele, Viele Fragen! Java Basics - Anfänger-Themen 6
S Viele Konstanten, EnumSet? Java Basics - Anfänger-Themen 3
S Stilfrage: Neue Klasse wenn es in einer Klasse zu viele Methoden gibt? Java Basics - Anfänger-Themen 14
Kasu So viele "_ " ausgeben, wie ein String lang ist Java Basics - Anfänger-Themen 4
I viele Dateinamen in ein String-Array mit File().list() Java Basics - Anfänger-Themen 4
mwildam Textfile lesen und schreiben - so viele Möglichkeiten Java Basics - Anfänger-Themen 5
U Zu viele werte in einer klasse Java Basics - Anfänger-Themen 4
K Viele Fragen eines Anfängers-Fließkommazahlen/Typenwandlung Java Basics - Anfänger-Themen 5
W Viele Objekte mit einem Konstrukor erzeugen Java Basics - Anfänger-Themen 10
R einfaches Programm, viele Probleme Java Basics - Anfänger-Themen 29
G viele zahlen mit wenig code Java Basics - Anfänger-Themen 4
X 1 MySQL-Verbindung und viele Threads Java Basics - Anfänger-Themen 4
E Viele Fragen Java Basics - Anfänger-Themen 8
J viele Objekte erzeugen Java Basics - Anfänger-Themen 21
J Große *.Text Datei zum verschicken in viele kleine Java Basics - Anfänger-Themen 7
O viele Name mit jeweils zugehörigen Status in .txt Speichern Java Basics - Anfänger-Themen 16
K ResultSet: Wie viele Rows beinhaltet es? Java Basics - Anfänger-Themen 6
X Viele Komponenten automatisch erzeugen Java Basics - Anfänger-Themen 2
C zu viele paint()'s. Java Basics - Anfänger-Themen 6
M Viele Textfelder auslesen Java Basics - Anfänger-Themen 3
P x-viele Variablen anlegen Java Basics - Anfänger-Themen 2
F Mit der Zahl n n-viele Arrays erstellen ?! Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben