Taas joudun turvautumaan apuun, kun ei oma järki (lue: taito) riitä ;-)
Eli tuossa alla on siihen asti toimiva lämpötilaohjelma, että se kysyy jokaisen viikonpäivän lämpötilan celsiusasteina. Ne celsius-asteet pitäisi sitten muuttaa fahrenheit-asteiksi. Ja lopuksi pitäisi listata allekkain jokaisen päivän lämpötila ensin celsius-asteina ja niiden jälkeen fahrenheit-asteina. Eli miten saan kaikkien viikonpäivien molemmat lämpötilat "tulostettua"??
Sub Main()
Const OTSIKKO As String = "Yölämpötilat"
Dim intCelsiusAsteet As Integer
Dim intFahrenheitAsteet As Integer
Dim intViikonpaivaLaskuri As Integer
' kysy toistolauseen avulla viikonpäivien yölämpötilat
For intViikonpaivaLaskuri = 1 To 7
intCelsiusAsteet = InputBox("Viikonpäivä: " & vbTab & _
WeekdayName(intViikonpaivaLaskuri) & _
vbCrLf & vbCrLf & _
"Syötä yölämpötila", OTSIKKO)
Next
intFahrenheitAsteet = 1.8 * intCelsiusAsteet + 32
MsgBox "Celsius asteet: " & vbCrLf & intCelsiusAsteet & vbCrLf & _
vbCrLf & "Fahrenheit asteet:" & vbCrLf & intFahrenheitAsteet
MsgBox strListaus, vbOKOnly, "Viikon päivälämpötilat"
End SubHelpointa on, jos lasket Fahrenheit-lämpötilat ja muodostat listan sitä mukaa kun käyttäjä syöttää arvoja. Tee vaikka näin (olettaen, että tuo kaava Fahrenheitin laskemiseen on oikein):
Sub Main()
Dim i As Integer, lista As String
Dim celcius As Single, fahrenheit As Single
For i = 1 To 7
celcius = InputBox("Anna päivän " & i & " lämpötila:")
fahrenheit = 1.8 * celcius + 32
lista = lista & "Päivä " & i & vbTab & celcius & " °C" & vbTab & fahrenheit & " °F" & vbCrLf
Next
MsgBox lista
End SubKIITOS paljon! Tuo toimii. Mutta olisiko vielä tietoa, että miten saisin numeroiden tilalle viikonpäivät?
Esim. kun nyt ohjelma pyytää: "Anna päivän 1 lämpötila", niin pitäisi kysyä: "Anna maanantain lämpötila"
Varmaan teet taulukkoon 7 eri merkintää, siis viikonpäivät ja sitten vaikka print paivat(i) , ymmärsitkö?
Varmaanki
For i = 1 To 7
celcius = InputBox("Anna " & WeekdayName(i) & " lämpötila:")Aihe on jo aika vanha, joten et voi enää vastata siihen.