Behöver hjälp med denna uppgift! ser ut som ogiltig syntax! Hej,Styrning i program - Fel i kod!, behöver hjälp!
Bara IF-satser INTE select case
Uppgift:
Du skall skicka ett brev men vet ej hur många frimärken du skall använda. Det du däremot vet är brevets vikt i gram. Om brevet väger under 20 gram skall 1 frimärke användas om det däremot väger under 200 gram skall 2 stycken används. Om det väger mer skall 4 frimärken användas. Gör en ytterligare funktion i ditt progra, som läser in brevets vikt och sedan skriver skriver ut antalet frimärken som behövs.
Koden:
Private Sub Command5_Click()
If Int(Text13) < 20 Then
MsgBox " Du behöver bara 1 frimärke!"
End If
If Int(Text13) > 20 < 200 Then
MsgBox "Du behöver 2 st frimärken!"
End If
If Int(Text13) > 200 Then
MsgBox "Du behöver 4 st frimärken!"
End If
End Sub
Får inte detta och stämma så det fyller kraven som det står i uppgiften. Jag har gjort fel någonstans men ser inte var. Kan ni hitta felet?Sv: Styrning i program - Fel i kod!, behöver hjälp!
If Int(Text13) > 20 < 200 Then .......osv
borde vara:
If Int(Text13) > 20 AND Int(Text13)< 200 Then ........
möjligtvis behövs paranteser runt and operatorerna, men jag tror inte det...
förresten vad händer om vikten är exakt 20 eller 200??? byt > mot >= osv....
hoppas detta är till hjälp!Sv:Styrning i program - Fel i kod!, behöver hjälp!
Det finns en nackdel med ditt kodexepel och det ar att du anvander samma gransvarden flera ganger. Sa om t.ex. 20 gram skall bytas mot 40 gram sa maste du andra pa flera stallen. Jag skulle anvanda ElesIf istallet, t.ex. sa har:
<code>
Private Sub Command5_Click()
If Int(Text13.Text) <= 20 Then
MsgBox " Du behöver bara 1 frimärke!"
ElseIf Int(Text13.Text) <= 200 Then
MsgBox "Du behöver 2 st frimärken!"
Else
MsgBox "Du behöver 4 st frimärken!"
End If
End Sub
</code>
Lycka till!
// Johan