Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Datum

Postades av 2001-10-20 21:19:00 - Frans Englich, i forum visual basic - allmänt, Tråden har 14 Kommentarer och lästs av 905 personer

Jag vill ha reda på hur många dagar det finns i en månad, det endaste jag vet är vilken månad jag vill veta det för.

Finns det någon smidig vb funktion för detta?

mvh Frans


Svara

Sv: Datum

Postades av 2001-10-20 22:10:00 - Ivar Torstensson

Lätt ju!
<code>
Trettio dagar har november,
april, juni och september,
tjugoåtta en allen,
alla de övriga trettioen
</code>

Jag vet inte om det redan finns men man kan ju alltid göra en sådan funktion lätt. Om det är skottår fungerar den dock ej ty då är det 29 dagar i månad 2.
<code>
Function dagarimanad(manad As Integer) As Integer
Select Case manad
Case 1, 3, 5, 7, 8, 10, 12 'jan, mar, maj, jul, aug, okt, dec
dagarimanad = 31
Case 2 'feb
dagarimanad = 28 'OBS! 29 vid skottår
Case 4, 6, 9, 11 'apr, jun, sep, nov
dagarimanad = 30
Case Else
dagarimanad = -1
End Select
End Function
</code>

Hälsningar Ivar


Svara

Sv: Datum

Postades av 2001-10-20 23:09:00 - Frans Englich

Den funkar alldeles utmärkt, om det inte är skottår ;)

Det kanske man kunde göra något åt.. Det är ju skottår var fjärde år, när var det senast skottår?

mvh Frans


Svara

Sv: Datum

Postades av 2001-10-20 23:48:00 - Sven Åke Persson

Hej
>Det är ju skottår var fjärde år, när var det senast skottår?

En gammal programmeringsklassicer .
Ett år är ett Skottår (Leap Year) om nedanstående innehålls.

Ett år som är jämnt delbart med fyra
INTE är jämnt delbart med 100...
...om det INTE också är jämnt delbart med 400.

Skriv en enkel algoritm som funkar 100 %

mvh
Sven


Svara

Sv: Datum

Postades av 2001-10-20 23:56:00 - Ivar Torstensson

Jag läste på under tiden Sven skrev sitt inlägg, och det stämmer det Sven skrev.

Här kommer en funktion:
<code>
Function isleapyear(year As Integer) As Boolean
If year Mod 400 = 0 Or year Mod 4 = 0 And year Mod 100 <> 0 Then
isleapyear = True
Else
isleapyear = False
End If
End Function
</code>
Hälsningar Ivar


Svara

Sv: Datum

Postades av 2001-10-20 23:59:00 - Ivar Torstensson

Det var f ö detta jag använde: (Från MSDN)

1. If the year is evenly divisible by 4, go to step 2. Otherwise, go to step 5.

2. If the year is evenly divisible by 100, go to step 3. Otherwise, go to step 4.

3. If the year is evenly divisible by 400, go to step 4. Otherwise, go to step 5.

4. The year is a leap year (it has 366 days).

5. The year is not a leap year (it has 365 days).

/Ivar


Svara

Sv: Datum

Postades av 2001-10-21 00:04:00 - Frans Englich

Hehe, jag har precis skrivit en funktion som checkar ifall det är skottår. Det var därför jag återkom till pellesoft för att posta funktionen... Jag förstår dock inte vad (year Mod 400 ) och (year Mod 100 <> 0) är bra för.

mvh Frans


Svara

Sv: Datum

Postades av 2001-10-21 00:40:00 - Olof Gardell

Hej

Är osäker på om det är Mod du undrar över eller om du undrar varför man gör tre test.

Det räcker alltså inte att kolla om året är jämnt delbart med 4.
Det får nämligen heller inte vara jämnt delbart med 100 OM det inte är jämnt delbart med 400.

År 2000 var ett ganska ovanligt skottår. Det dröjer 400 år (399 om
man vill vara petig) tills nästa skottår som inträffar vid ett sekelskifte

Och man måste vänta tills år 4000 om man vill uppleva nåsta skottår
som inträffar vid ett tusenårsskifte.

Mvh/Olof


Svara

Sv: Datum

Postades av 2001-10-21 02:10:00 - Sven Åke Persson

Hej
Var tvungen att kolla min gamla algoritm ,princip samma som IT :s

>Jag förstår dock inte vad (year Mod 400 ) och (year Mod 100 <> 0) är bra för.

Därför att år 1900 var inget skottår men ändå jämnt delbart med 4
2100 är inget skottår osv osv

Private Function LeapYear(Year As Long) As Boolean
If Year Mod 4 = 0 Then
If Year Mod 100 <> 0 Or _
Year Mod 400 = 0 Then LeapYear = True
End If
End Function

mvh
Sven


Svara

Sv: Datum

Postades av 2001-10-21 16:06:00 - Thomas Andersson

6. Året måste vara > 1582.

Men så petiga kanske vi inte skall vara. ;)


Svara

Sv: Datum

Postades av 2001-10-21 16:27:00 - Sven Åke Persson

Hej
>. Året måste vara > 1582.

Njaaa varför de ? . SkottÅr :s principen har gällt så länge
jorden snurrat runt sin egen axel och runt solen som
den gör idag.Dvs Vi måste korrigera för att dygnet inte
är 24 timmar utan 23,8.. nånting .

Redan dom gamla babylonierna visste detta
dom gjorde så att dom lade till en hel månad ,månad 13
efter ett visst antal år. För dom var 13 ett lyckotal.
Detta sätt används även idag av den judiska tidräkningen.

Förmodar att du tänker på den Julianska / Gregorianska kalendern.
I Sverige införde vi Gregorianska kalendern 1753.

den lille besserwissern i mig
mvh
Sven


Svara

Sv: Datum

Postades av 2001-10-21 17:53:00 - Andreas Hillqvist

Du behöver oxå veta vilket år det är. Rekomenderar att du använder DateAdd. Smidigt sätt att ta reda på det:
<code>
Public Function DaysInMoth(Year As Long, Moth as Long) as Long
DaysInMoth = Day(DateSerial(Year, Moth+1, 1) - 1)
End Function
</code>

DateSerial kan hantera månad parameter 13. Tar sedan minus en dag.
Vilket ger sista datumet för angivet år och månad. Plockar ut dag.


Svara

Sv: Datum

Postades av 2001-10-21 22:07:00 - Olof Gardell

>Vi måste korrigera för att dygnet inte är 24 timmar utan 23,8.. nånting.<

Nja, det är väl antalet dagar på året som inte är riktigt jämnt 365, och
att det är det man justerar för.

Mvh/Olof


Svara

Sv: Datum

Postades av 2001-10-21 23:53:00 - Peter Holm

ett år är exakt 365,25 dagar.

Men ,25:orna lägger man på hög ocg vart fjärde år räcker dem till en hel
dag. Nämligen skottdagen den 29:februari

/peterh


Svara

Sv: Datum

Postades av 2001-10-22 00:41:00 - Sven Åke Persson

Hej igen
peterh skrev >ett år är exakt 365,25 dagar.
Nix min vän, 365.2422 dygn är det korrekta.

Eftersom jordens rotationsriktning och banrörelse
sker åt samma håll kommer antal stjärndygn under ett
tropiskt år att vara 366,2422

Jorden behöver 365,2422 dygn på sig för att fullborda
ett helt varv kring solen.

365,2422 medelsoldygn = 366,2422 stjärndygn.
Stjärndygnet är således 3 min 56 sek kortare
än medelsoldygnet.

För att få en praktisk tideräkning infördes det
tropiska året. Detta för att vårdagjämningen alltid
skulle komma på samma datum (21/3).

Vårdagjämningspunkten refererar till Vädurens stjärna Aries (fixstjärna)
därav bindningen sjärndygn och medelsoldygn.

Julius Caesar införde år 45 f Kr den julianska kalendern.
Detta innebar att ett skottår med 366 dagar, infördes var 4 : år.

Årets genomsnitts längd blev därmed 365,25 dygn
jämför 365,2422 diff 11 min / år.

Av denna anledning införde man en regel att det bara fick
förekomma 97 skottår under en 400 årsperiod.(1582 Gregorius XII)

mvh
Sven





Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 627
27 953
271 710
884
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies