Как сделать код в игре виселица - VB

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

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

Нужно написать игру "виселица" или "поле чудес" на VB. Вот я начала писать:
Нужно, чтобы пользователь ввел 10 случайных слов, затем, чтобы программа как-то выбрала одно слово из 10. И чтобы потом все буквы в этом слове заменила на прочерки. Ну и затем, когда пользователь вводит букву, то прочерки убираются. Подскажите пожалуйста, как сделать так, чтобы программа выбрала одно случайное слово из 10 введенных? И как сделать, чтобы программа затем все буквы заменила на прочерки?

Решение задачи: «Как сделать код в игре виселица»

textual
Листинг программы
Private Sub Start_Click()
    Dim InpName As String, i As Integer, a, b(1 To 10) As String, c As String, tmp As String, k As Integer
    Randomize
    Font.Size = 24
    Cls
    a = Array("", "программа", "выбрала", "одно", "слово", "чтобы", "потом", "буквы", "этом", "слове", "заменила")
    MsgBox "Введите 10 любых слов или завершить для выхода"
    For i = 1 To 10
      InpName = InputBox("Введите слово №" & i, , a(i))
     If InpName = "завершить" Then Exit Sub
      b(i) = InpName
    Next i
    InpName = b(Int(Rnd * 10 + 1))
    For i = 1 To Len(InpName)
        tmp = tmp & "_ "
    Next
    Print "  " & tmp
    Do
       c = InputBox("Введите букву", , Mid(InpName, Int(Rnd * Len(InpName) + 1), 1))
       If InStr(1, InpName, c) > 0 Then
         For i = 1 To Len(InpName)
           If Mid(InpName, i, 1) = c Then
             Mid(tmp, (i - 1) * 2 + 1, 2) = c & " "
           End If
         Next
         Cls
         Print "  " & tmp
       Else
          k = k + 1
          MsgBox "Нет такой буквы", , "Ошибка №" & k
          If k >= 7 Then Exit Sub
       End If
    Loop Until InStr(1, tmp, "_") = 0
    MsgBox "Game over"
End Sub

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


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

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

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