Wochentag berechnen -> 0 bis 6

Gast #5970324
Lesenswert?

Hallo Leute,

In einer Kleinsteuerung (Siemens Logo) will ich den Wochentag berechnen.
(d.h. keine Gleitpunktberechnung)
Dieser muss dann wie folgt aussehen:
Sonntag  = 0
Mittwoch = 3
Samstag  = 6

Ha, einfach dachte ich uns googelte mal:
http://www.straub.as/csharp/basic/Uwochentag.html

Danach entwarf ich in VB.net schnell mal ein Programm (siehe Anhang).

Leider stimmt die Berechnung nicht :-O

Woran liegt es?

Hat jemand eine andere Formel?
Angehängte Dateien:
Gast #5970328
Lesenswert?

Für alle, denen mein Programm ein Virus darstellt, obwohl in source:
1
   Function GetWeekday(ByVal dayofmonth As Short, ByVal month As Short, ByVal year As Short) As Short
2

3
        Dim h As Short
4
        Dim k As Short
5

6
        If month <= 2 Then
7
            h = month + 12
8
            k = year - 1
9
        Else
10
            h = month
11
            k = year
12
        End If
13

14

15
        GetWeekday = dayofmonth + 2 * h + (3 * h + 3) / 5 + k + k / 4 - k / 100 + k / 400 + 1
16
        GetWeekday = GetWeekday Mod 7
17

18
    End Function
Beitrag #5970352 wurde von einem Moderator gelöscht.
Gast #5970363
Lesenswert?

Achim H. schrieb:
> Short sollte vermutlich mehr als 15 Bit haben (16 mit Vorzeichen).
> Könnte, aber muss nicht reichen.
>
> Was macht "/" bei Deiner Sprache (VB.net?) bei Division mit
> Integer-Zahlen?

Du bist mein Held.
DAS war doch der entscheidende Hinweis.
div ist in vb nämlich \ und nicht /
Dankeschön nochmals.
Beitrag #5970365 wurde von einem Moderator gelöscht.
Gast #5970399
Lesenswert?

Das wird ja immer munterer hier mit den Psychopathen die MaWin ins 
Namensfeld schreiben. Nun outen sie sich als VB Programmierer die kein 
VB können, Nun ja, die Namensschummelei werden die meisten schon bemerkt 
haben.
Beitrag #5970417 wurde von einem Moderator gelöscht.
Beitrag #5970646 wurde von einem Moderator gelöscht.
Beitrag #5970649 wurde von einem Moderator gelöscht.
Beitrag #5970678 wurde von einem Moderator gelöscht.
Beitrag #5970965 wurde von einem Moderator gelöscht.
Beitrag #5971249 wurde von einem Moderator gelöscht.
Beitrag #5971287 wurde von einem Moderator gelöscht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren