REM *** 数当てげーむ *** randomize Dim a '今回はメッセージボックスに表示する内容が長いので一旦変数に格納し、プログラムを見やすくします。 a = "*** 数当てげーむ ***" & Chr(13) & "数当てげーむへようこそ。" & Chr(13) & "1~100の数の中から数をあててね。" & Chr(13) & _ "その数に応じて手掛かりが出るよ。" & Chr(13) & "制限回数:5回" & Chr(13) & "始める?" if msgbox(a,4,"数当てげーむ") = 6 then Dim i Dim num 'インプットボックスの値を格納するもの。 Dim ans '答え。 Dim msg '手がかりを格納するためのもの。 msg = "" ans = int(rnd() * 100) '1-100の値を作ります。 for i = 1 to 5 num = int(inputbox("1-100の数を入力してね。" & Chr(13) & msg,"数あてげーむ " & i & "回目")) if num = ans then '正解のときforから抜ける。 exit for end if msg = msg & num & ":" if int(num / 10) = int(ans / 10) then '十の位が等しいとき msg = msg & "十の位正。" end if if (ans - num = 90) or (ans - num = 80) or (ans - num = 70) or (ans - num = 60) or (ans - num = 50) or _ (ans - num = 40) or (ans - num = 30) or (ans - num = 20) or (ans - num = 10) or (ans - num = -10) or _ (ans - num = -20) or (ans - num = -30) or (ans - num = -40) or (ans - num = -50) or (ans - num = -60) or _ (ans - num = -70) or (ans - num = -80) or (ans - num = -90) then '一の位が等しいとき msg = msg & "一の位正。" end if if num < ans then '小さいとき。 msg = msg & "ちいさい。" else '大きいとき。 msg = msg & "おおきい。" end if msg = msg & Chr(13) next if num = ans then '正解の場合の言葉 msgbox "あたり!!" & Chr(13) & "おめでとう。" & Chr(13) & i & "回で正解しました。" else 'はずれの場合の言葉 msgbox "5回以内に当てられなかったので残念。" & Chr(13) & "答えは" & ans & "でした。" end if else msgbox "終了します。",0,"数当てげーむ" end if