Welcher Tag war das nochmal?
Übersicht

![]() |
StepTigerBetreff: Welcher Tag war das nochmal? |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hier ein kleiner Code, um zu schauen, was für ein Wochentag der angegebene war.
Code: [AUSKLAPPEN] show=0
Dim month(12) Dim tday$(7) month(1)=31 month(2)=28 month(3)=31 month(4)=30 month(5)=31 month(6)=30 month(7)=31 month(8)=31 month(9)=30 month(10)=31 month(11)=30 month(12)=31 tday$(1)="Montag" tday$(2)="Dienstag" tday$(3)="Mittwoch" tday$(4)="Donnerstag" tday$(5)="Freitag" tday$(6)="Samstag" tday$(7)="Sonntag" year=2006 mon=8 day=12 week=6 tarday=Input("Tag? ") tarmon=Input("Monat? ") taryear=Input("Jahr? ") startsumme=year*365+mon*30+day endsumme=taryear*365+tarmon*30+tarday While Not(tarmon=mon And tarday=day And taryear=year) And (Not KeyDown(1)) If taryear<year Or (tarmon<mon And taryear=year) Or (tarday<day And tarmon=mon And taryear=year) day=day-1 week=week-1 Else day=day+1 week=week+1 EndIf If week>7 Then week=1 If week<1 Then week=7 If day>month(mon) Then day=1:mon=mon+1 If day<1 mon=mon-1 day=month(mon) If mon<1 mon=12 day=month(12) year=year-1 bla=year/4 bla2#=year/4. bla3=year/100 bla4#=year/100. bla5=year/400 bla6#=year/400. If bla=bla2# And (bla3<>bla4# Or bla5=bla6#) month(2)=29 Else month(2)=28 EndIf Else day=month(mon) EndIf EndIf If mon<1 mon=12 day=month(12) year=year-1 bla=year/4 bla2#=year/4. bla3=year/100 bla4#=year/100. bla5=year/400 bla6#=year/400. If bla=bla2# And (bla3<>bla4# Or bla5=bla6#) month(2)=29 Else month(2)=28 EndIf EndIf If mon>12 mon=1 year=year+1 bla=year/4 bla2#=year/4. bla3=year/100 bla4#=year/100. bla5=year/400 bla6#=year/400. If bla=bla2# And (bla3<>bla4# Or bla5=bla6#) month(2)=29 Else month(2)=28 EndIf EndIf If show=1 Print day Print mon Print year Print "" EndIf Wend Print "Der "+tarday+"."+tarmon+"."+taryear+" ist ein "+tday$(week)+"." WaitKey End könnt übrigens auch Werte benutzen, die noch folgen. *edit* Ich bin an einem Mittwoch geboren ![]() |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
- Zuletzt bearbeitet von StepTiger am Sa, Aug 12, 2006 21:39, insgesamt 3-mal bearbeitet
![]() |
Dante |
![]() Antworten mit Zitat ![]() |
---|---|---|
klappt irgendwie nicht bie mir =(
läd nur ohne ende aber kommt nix bei rum |
||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
hups! Was beim verändern vergessen. Geht jetzt. | ||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
Bud |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ist cool, doch bei meinem Geburtstag hat er sich um einen Tag verrechnet (Wurde an einem Dienstag geboren, doch mir wird Montag angezeigt)... | ||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
???
der kann sich auf 1000 Jahre nicht verrechnen (theorethisch gesehen) ^^ sag mal dein geburtsdatum. Meins stimmt (ich wusste schon von einem Jahrhundertkalender, dass ich am Dienstag geboren bin ![]() |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
hab den fehler gemerkt.
Ich lad den neuen quellcode in so 10 minuten hoch |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Habs geupdated.
Bin doch an einem Mittwoch geboren (habs im inet überprüft, aber was hab ich bei dem jahrhundertkalender falsch gemacht? ^^) |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
Bud |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja jetzt stimmts ![]() ![]() Sehr nützlich, der Code ^^ |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Use the fuckin' Edit Button, oder ich Close.
double posts sind böse. Triples sind die Pest. |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
Rone |
![]() Antworten mit Zitat ![]() |
---|---|---|
moin,
hatte vor ein paar Tagen genau das selbe gemacht, schaut nur nen bisschen anders aus... ![]() Poste den Code einfach mal hier, um nicht nen extra Thread aufzumachen: Code: [AUSKLAPPEN] Global MonatsTage:Int[]=[31,28,31,30,31,30,31,31,30,31,30,31] Global Tage :String[] = ["Montag" , "Dienstag" , "Mittwoch" , "Donnerstag" , "Freitag" , "Samstag" , "Sonntag"] Function SchaltJahr:Int(jahr:Int) Local value:Int = (Not(jahr Mod 4) And ( (jahr Mod 100 ) Or Not(jahr Mod 400) ) ) Return (value>0) End Function Function ErsterTagImJahr:Int(jahr:Int) Local wert,i:Int = 0 If jahr < 2007 Then For i = 2007 To jahr+1 Step - 1 wert = ( (wert - ( 1 + SchaltJahr(i-1) ) ) + 7 ) Mod 7 Next ElseIf jahr > 2007 Then For i = 2007 To jahr-1 Step + 1 wert = ( (wert + ( 1 + SchaltJahr(i-1) ) ) + 7 ) Mod 7 Next EndIf Return WERT End Function Function Woche:Int(jahr:Int , Monat:Int , Tag:Int) For Local i:Int = 0 To Monat - 2 Tag :+ ( MonatsTage[i] ) Next If Monat > 2 Or ( Monat=2 And Tag >28 ) Then Tag:+SchaltJahr(jahr) Return Int( ( ErsterTagImJahr(jahr) + (Tag - 1) ) / 7 ) + 1 End Function Function Tag:Int(jahr:Int , Monat:Int , Tag:Int) Local tmpTag:Int=Tag For Local i:Int = 0 To Monat - 2 Tag :+ ( MonatsTage[i] ) Next If Monat > 2 Or ( Monat=2 And tmpTag >28 ) Then Tag:+SchaltJahr(jahr) Return Int( ( ErsterTagImJahr(jahr) + (Tag -1) ) Mod 7 ) End Function '########################################################### Local sTag:String = Input("Tag: ") Local sMonat:String = Input("Monat: ") Local sJahr:String = Input("Jahr: ") Print "Der "+sTag+"."+sMonat+"."+sJahr+", war ein "+Tage[Tag(sJAhr.ToInt(),sMonat.ToInt(),sTag.ToInt())] End mfg |
||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
das ist aber kein BB
rechnet das Schaltjahre richtig ein? 1. alle durch 4 teilbaren Jahre sind Schaltjahre 2. alle durch 100 teilbaren Jahre sind keine Schaltjahre 3. alle durch 400 teilbaren Jahre sind wiederum Schaltjahre |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
![]() |
Rone |
![]() Antworten mit Zitat ![]() |
---|---|---|
Is mir klar dass das BMax ist, allerdings kann man das in ca.30s ändern...
Zitat: rechnet das Schaltjahre richtig ein?
1. alle durch 4 teilbaren Jahre sind Schaltjahre 2. alle durch 100 teilbaren Jahre sind keine Schaltjahre 3. alle durch 400 teilbaren Jahre sind wiederum Schaltjahre na klar... Code: [AUSKLAPPEN] Function SchaltJahr(jahr) Return (((jahr Mod 4)=0 And ( (jahr Mod 100 )>0 Or (jahr Mod 400)=0 ) )>0) End Function So, hier nochmal BB konform: Code: [AUSKLAPPEN] Dim monatsTage(12) Dim tage$(7) monatsTage(0)=31 : monatsTage(1)=28 : monatsTage(2)=31 : monatsTage(3)=30 : monatsTage(4)=31 : monatsTage(5)=30 monatsTage(6)=31 : monatsTage(7)=31 : monatsTage(8)=30 : monatsTage(9)=31 : monatsTage(10)=30 : monatsTage(11)=31 tage$(0)="Montag" : tage$(1)="Dienstag" : tage$(2)="Mittwoch" : tage$(3)="Donnerstag" tage$(4)="Freitag" : tage$(5)="Samstag" : tage$(6)="Sonntag" Function SchaltJahr(jahr) Return (((jahr Mod 4)=0 And ( (jahr Mod 100 )>0 Or (jahr Mod 400)=0 ) )>0) End Function Function ErsterTagImJahr(jahr) If jahr < 2007 Then For i = 2007 To jahr+1 Step - 1 wert = ( (wert - ( 1 + SchaltJahr(i-1) ) ) + 7 ) Mod 7 Next ElseIf jahr > 2007 Then For i = 2007 To jahr-1 Step + 1 wert = ( (wert + ( 1 + SchaltJahr(i-1) ) ) + 7 ) Mod 7 Next EndIf Return WERT End Function Function Woche(jahr , Monat , Tag) For i = 0 To Monat - 2 Tag = Tag + ( MonatsTage(i) ) Next If Monat > 2 Or ( Monat=2 And Tag >28 ) Then Tag=Tag+SchaltJahr(jahr) Return Int( ( ErsterTagImJahr(jahr) + (Tag - 1) ) / 7 ) + 1 End Function Function Tag(jahr , Monat , Tag) tmpTag=Tag For i = 0 To Monat - 2 Tag = Tag + ( MonatsTage(i) ) Next If Monat > 2 Or ( Monat=2 And tmpTag >28 ) Then Tag=Tag+SchaltJahr(jahr) Return Int( ( ErsterTagImJahr(jahr) + (Tag -1) ) Mod 7 ) End Function ;######################################################################################## For i = 1890 To 2010 Print i+"-->"+SchaltJahr(i) Next sTag = Input("Tag: ") sMonat = Input("Monat: ") sJahr = Input("Jahr: ") Print "Der "+sTag+"."+sMonat+"."+sJahr+", war ein "+Tage(Tag(sJAhr,sMonat,sTag)) WaitKey End mfg |
||
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
owney by...
BlitzBasic: [AUSKLAPPEN] a = (14-monat)/12 (Den Code hab ich von soli und mittels der Forensuche gefunden) MfG D2006 |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
ist ja vieeeeeeeeeel zu einfach *lol* | ||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group