Курсовая работа: Игра "Виселица"
Моя программа начинается с заставки. На экране появляется приветствующая надпись и кнопка входа в игру. После нажатия данной кнопки текущая форма приветствия делается невидимой, открывается форма самой игры. На этой форме находятся три кнопки и поле для ввода буквы. Кнопка для выхода из игры, для старта игры, кнопка для ввода введённой буквы в текстовое поле.
После нажатия кнопки старта игры, пользователь должен ввести букву в текстовое поле и нажать кнопку “Ввод буквы”. После чего идёт проверка на наличие этой буквы в загаданном слове. В случае, если такая буква присутствует, то она считается угаданной. Иначе, начинается появление на экране элементов виселицы. Чем больше пользователь ошибается, тем ближе виселица к своему завершению. Когда количество ошибок превышает допустимую норму, пользователь считается “повешенным”, а на экране возникает сообщение об окончании игры. В случае, если угаданы все буквы, то игра заканчивается сообщением о победе игрока.
С внешним видом рабочей формы вы можете ознакомиться на рис.1.
Рис. 1. Внешний вид рабочей формы
5. Блок-схема
6. Блок-схема дополнительной процедуры
7. Листинг программы
Private letter As String, word As String
Private Flag As Boolean, k As Integer
Private i As Integer, j As Integer
Private n As Integer, Counter As Integer
Private h As Integer
Dim words() As String
Private Sub Cmdexit_Click()
End
End Sub
Private Sub ExitMenu_Click()
End
End Sub
Private Sub Form_Load()
Shape1.Visible = False
For i = 1 To 7
Txt(i).Visible = False
Next i
cmdVvod.Enabled = False
Randomize
a = Int(Rnd * 2)
Path = App.Path & "\words.txt"
Open Path For Input As #1
Do While Not EOF(1)
Line Input #1, s
n = n + 1
Loop
Close #1
ReDim words(n - 1)
n = 0
Open Path For Input As #1
Do While Not EOF(1)
Line Input #1, words(n)
n = n + 1
Loop
Close #1
End Sub
Private Sub Cmdstart_Click()
Counter = 0
Randomize
For i = 0 To 10
Lin(i).Visible = False
Next i
Shape1.Visible = False
shpBody.Visible = False
txtb.Enabled = True
cmdVvod.Enabled = False
k = Int(Rnd * n)
word = words(k)
Txt(0).Text = Left(word, 1)
Txt(0).ForeColor = vbBlack
For i = 1 To Len(word) - 1
Txt(i).ForeColor = vbWhite
Txt(i).Text = Mid(word, i + 1, 1)
Txt(i).Visible = False
Next i
Txt(0).Visible = True
End Sub
Private Sub cmdVvod_Click()
letter = txtb.Text
Flag = False
For i = 0 To Len(word) - 1
If Txt(i).Text = letter Then
Txt(i).ForeColor = vbBlack
Txt(i).Visible = True
Flag = True
End If
Next i
txtb.Text = ""
If Flag = False Then
Select Case Counter
Case Is = 0
Lin(0).Visible = True
Lin(1).Visible = True
Lin(2).Visible = True
Counter = Counter + 1
Case Is = 1
Lin(3).Visible = True
Counter = Counter + 1
Case Is = 2
Lin(4).Visible = True
Lin(5).Visible = True
Lin(8).Visible = True
Lin(9).Visible = True
Lin(10).Visible = True
Lin(6).Visible = True
Lin(7).Visible = True
shpBody.Visible = True
Shape1.Visible = True
Counter = Counter + 1
Case Is = 3
Lin(8).Visible = False
Lin(9).Visible = False
Lin(10).Visible = False
MsgBox "Выпроиграли!"
txtb.Enabled = False
cmdVvod.Enabled = False
End Select
txtb.Text = ""
End If
End Sub
Private Sub MenuHelp_Click()
HelpForm.Show
End Sub
Private Sub txtb_Change()
If txtb.Text = "" Then
cmdVvod.Enabled = False
Else cmdVvod.Enabled = True
End If
j = 0
For i = 0 To Len(word) - 1
If Txt(i).ForeColor = vbBlack Then
j = j + 1
If j = Len(word) Then
MsgBox "Вывыиграли !"
Exit For
End If
End If
Next i
End Sub
8. Вывод
Разработанная программа на языке VisualBasic, написанная с использованием объектно-ориентированного программирования, позволяет отдохнуть и расслабиться человеку. Данную программу, конечно, можно улучшить путём добавления новых слов для угадывания, и изменения старых.
9. Список литературы
1. Мазный Г.Л., Прогулова Т.Б. Методическое пособие к курсовому проектированию по высшей математике и иформатике. - Дубна: Международный университет природы, общества и человека “Дубна”, 1996.
2. О.И.Мельникова, А.Ю.Бонюшкина. Учебное пособие по Технологии программирования. – Дубна: Международный университет природы, общества и человека “Дубна”, 2001.