skulle böva hjälp med att förstå och lära mig hur man fyller i en array med hjälp av en loop.
Nedan följer min kod med kommentarer:
'betrakta kalendern som en 2 dimentionell matris med 7 kolumner (representerar dagar/1 vecka)
'och 6 radera (reperesenterar maximalt möjliga veckor). dvs 42(= 6*7) unika celler.
'Vi skapar en array med 42 element. 1:a elementet = 1:a cellen = 1:a Söndagen i månaden
'2:a elementet = 2:a cellen = 2:a Måndagen i månaden
'osv
'Om vi placerar månadens dagar på de korrekta positionerna i arrayen, kan formaterad utskrift av kalendern
'fås genom att loopa igenom arrayen.
'Exempel:
'om aktuella månadens första dag är en tisdag (= 3 i funktionen DatePart() ). Med andra ord så tilldelas
'3:e elementet i vår arrey värdet 1. 4:e elementet i arreyen ( = onsdag i funktionen DatePart()) tilldelas värdet 2.
'Detta fortsätter så många gånger som det finns dagar i månaden.
Dim dagensdat 'för att få reda på det aktuella datumet
Dim fdm 'aktuella månadens första dag
Dim adim 'hur många dagar innehåller den aktuella månaden?
Dim aDagar(42) 'arrayen aDagar kommer befolkas av månadens dagar
dagensdat = Date()
fdm = DatePart("w", DateSerial(Year(dagensdat), Month(dagensdat), 1))
adim = DatePart("d", DateSerial(Year(dagensdat), Month(dagensdat)+1, 1-1)) 'da´n innan första dagen i
'nästa månad. dvs sista dagen i nuvarande månad.
Response.Write MonthName(Month(dagensdat))
Response.Write "smånad första dag är en "
Response.Write WeekdayName(fdm)
Response.Write "<BR>"
Response.Write "och " & " innehåller "& adim & "dagar"
Response.Write "<BR>"
Response.Write "Året är " & Year(dagensdat)
'Nu behöver vi en loop för att fylla vår array (som ju heter aDagar)
Dim iDag 'månadens dagar
For iDag= fdm to adim
aDagar( fdm) = iDag
Next
%>
</BODY>
</HTML>
Mina frågor/undringar:
är min lopp
Dim iDag 'månadens dagar
For iDag= fdm to adim
aDagar( fdm) = iDag
Next
rätt skrivet?
hur kan jag kontrollera om första elementet i arrayen är månadens första dag, osv?. (i maj-03 fall skall första elementets värde vara 5 (torsdag))