關於VB的Do while問題

Do while ... loop可以重複寫嗎?

像這樣↓

(ps. c是體重,b是理想體重)

Do While b * 0.9 <= c <= b * 1.1

Label6.Caption = \"標準體重\"

Loop

Do While b * 1.1 < c < b * 1.2

Label6.Caption = \"體重過重\"

Loop

Do While b * 1.2 <= c

Label6.Caption = \"標準體重\"

Loop

我執行的時候都會直接當掉

不知道可不可以這樣寫?

如果不行的話,也怎麼寫?

已更新項目:

我也試過用IF寫

但是如果用IF寫的話

不管體重多少它都會只會顯示寫在第一個IF的答案

4 個解答

評分
  • 匿名使用者
    1 0 年前
    最佳解答

    If b * 0.9 <= c <= b * 1.1 then

    Label6.Caption = "標準體重"

    End if

    If b * 1.1 < c < b * 1.2 then

    Label6.Caption = "體重過重"

    End if

    If b * 1.2 <= c then

    Label6.Caption = "標準體重"

    End if

    改用 If then 就可以了

    你執行會當掉

    我想.....是你用Do While所造成的無窮回圈

    • Commenter avatar登入以對解答發表意見
  • Bug
    Lv 4
    1 0 年前

    這樣寫吧

    我測試過了 保証可以用

    If c >= b * 0.9 And c <= b * 1.1 Then

      Label6.Caption = "標準體重"

    ElseIf c > b * 1.1 And c < b * 1.2 Then

      Label6.Caption = "體重過重"

    ElseIf c >= b * 1.2 Then

      Label6.Caption = "該減肥了"

    Else

      Label6.Caption = "其他"

    End If

    注意唷 elseif 中間別加空格 不是 else if 喔

    參考資料: VB
    • Commenter avatar登入以對解答發表意見
  • W.J.S.
    Lv 7
    1 0 年前

    是否試試用If..Then 或 Select Case

    • Commenter avatar登入以對解答發表意見
  • puppy
    Lv 5
    1 0 年前

    你這樣會變成無窮迴圈吧,看你的程式沒必要用迴圈.....

    • Commenter avatar登入以對解答發表意見
還有問題?馬上發問,尋求解答。