Разработать приложение, имитирующее упрощенный аналог игры "Кто хочет стать миллионером" - VB

Узнай цену своей работы

Формулировка задачи:

Разработать приложение,имитирующее упрощенный аналог игры <Кто хочет стать миллионером!> . Придумать 5 вопросов, каждому из них ставится в соответствие 4 варианта ответов( использовать объекты класса Option button). Правила игры: 1)у игрока запрашивается имя и выводится в заголовке формы 2)предлагается по одному вопросу с вариантами ответов 3)используя соответствующий переключатель игрок отвечает 4)Информация о количестве набранных очков отображается на форме 5)Если ответ неверен,то происходит выход из игры с выводом информации о количестве набранных очков.

Решение задачи: «Разработать приложение, имитирующее упрощенный аналог игры "Кто хочет стать миллионером"»

textual
Листинг программы
Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Dim RA(1 To 15) As Integer, i As Integer, s, j As Integer
Dim Ans(1 To 15, 1 To 4) As String, Q(1 To 15) As String
Dim CurQ As Integer, Money
 
Sub NextQ(CurQ)
    If CurQ > 15 Then Call Win: Exit Sub
    Shape1.Top = 5400 - 270 * (CurQ - 1)
    Label1(0).Caption = Q(CurQ)
    For i = 1 To 4
        Label1(i).Caption = Ans(CurQ, i)
        Label1(i).BackColor = vbBlack
    Next i
    Label1(5).Caption = Money(CurQ - 1)
End Sub
 
Sub NewGame()
    Shape1.Top = 5400
    CurQ = 1
    Open App.Path & "\Q.txt" For Input As #1
         For i = 1 To 15
             Line Input #1, s
             s = Split(s, "*")
             Q(i) = s(0)
             For j = 1 To 4
                 Ans(i, j) = s(j)
             Next j
             RA(i) = Val(s(5))
         Next i
    Close #1
    Money = Array("0", "500", "1000", "2000", "3000", "5000", "10 000", "15 000", "25 000", "50 000", "100 000", "200 000", "400 000", "800 000", "1 500 000", "3 000 000")
    Call NextQ(CurQ)
End Sub
 
Private Sub Form_Load()
    NewGame
End Sub
 
Private Sub Label1_Click(Index As Integer)
     If Index < 1 Or Index > 4 Then Exit Sub
     If Index = RA(CurQ) Then
        Label1(Index).BackColor = vbGreen
        DoEvents
        Sleep 300
        CurQ = CurQ + 1
        Call NextQ(CurQ)
     Else
         Label1(Index).BackColor = vbRed
         Label1(RA(CurQ)).BackColor = vbGreen
         If MsgBox("Неправильно. Начать новую игру?", vbYesNo, "Проигрыш") = vbYes Then
             Call NewGame
         Else
             Unload Me
         End If
     End If
End Sub
 
Sub Win()
     If MsgBox("Вы выиграли. Ваш выигрыш составил " & Money(CurQ - 1) & " рублей. Начать новую игру?", vbYesNo, "Поздравление") = vbYes Then
         Call NewGame
     Else
         Unload Me
     End If
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.4 из 5
Похожие ответы