Продумать логику обработки неверного ввода в игре "Угадай число" - Visual Basic .NET

  1. Добрый день.Делая игру "Угадай число" наткнулся на "непонятки". Если игрок вводит число больше 1 то должно выводить vb.net1  msgbox("Вводите число от 0 до 1")Да,все выводит. Но в коде есть так-же метод иначе.Если игрок не угадал рандомное число, например генерировалось 1 а он написал 0 то выводитvb.net1 msgbox("Не угадал")И в этом ошибка.Если ввел число больше 1 то выводит "Вводите число от 0 до 1" и "Не угадал" Как cделать что-бы при вводе числа больше 1 выводилось только 1 сообщение а не угадал вообще не лезло сюда. Вот проект.


textual

Код:

If b > 1 Then
            MsgBox("Вводите число от 0 до 1")
            Return
        ElseIf b = a Then
            MsgBox("Угадал")
            Label4.Text += 1
 
        ElseIf b < 2 Then
 
            Label5.Text += 1
            MsgBox("Не угадал")
        End If


Похожие ответы
  1. Недавно начал заниматься VB, и как одно из заданий мне сказали сделать какую-то свою программу одному или с кем-то в паре. Скооперировавшись с (назовем его Вадимом) у нас появилась идея для создания простенькой игры. А именно это были "Тараканьи бега". Суть в том, что сначала игрок дает имя и качает таракану один из видов статов на единицу. Всего их три: Скорость, сила, масса. Каждая из них имеет свой аспект в геймплее. Геймплей состоит в том, что после начала гонки на экран выводятся сообщения двух типов "Прямая" и "Поворот", а после одного из сообщений нужно ввести комбинацию из букв которая выводится ниже и нажать enter. Нужно набрать определенное Как сделать так, чтобы было три варианта исхода: 1)Игрок не успел нажать кнопку и теряет часть очков, 2)Игрок нажал кнопку и получает очки, 3)Игрок нажал не ту кнопку и потерял часть очков. Как это реализовать? Буду благодарен за помощь!

  1. Недавно начали изучать Visial Basic и тут сразу же дали курсач (((Помогите очень прошу. Нужно сделать программу "Рогатка" при нажатии на кнопку она стреляет шариком в другие объекты(Причем эти объекты должны двигаться вправо и влево без остановки пока не попадешь) и после истечение определенного времени должно выводится сообщение о том сколько ты выбил и имя игрока. И при нажатии кнопки результаты сохранялись в таблицу примерно так (Имя: сколько выбил) а другой кнопкой игрок мог посмотреть у кого какой результат. Помогите если не трудно!!! Заранее спасибо, Арестан

  1. Всем привет, Лазил по Готовым решениям и просвещался. Заинтересовала эта заметка, решил попробовать. Как понял создается две программы. Одна проверяет прогу на ключ, вторая этот ключ создает. Вот если со второй проблем не возникло, то первая... Я в жизни с модулями не работал. Подумал что надо чтобы модуль запускался первым. Попробовал но выбора его нет. Попробовал погуглить "Запуск Модуля", но ничего толкового не нашел. Может мне кому не лень объяснить что неправильно во мне? Результат своих экспирементов прилагаю.

  1. Ребята подскажите в чем ошибка. Вот часть кода:vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50     Public Class Connect         Public x As Integer, y As Integer 'Координата точки (номера в массиве) с которой соединяемся далее         Public IsС As Boolean = False 'True если имеется соединение         Public Type As String         'тут много еще чего, здесь и далее лишнее убрал для упрощения     End Class     Public Class P         Public x As Integer, y As Integer 'Координата точки (номер в массиве) деленная на 25         Public Connect1 As Connect 'влево         Public Connect2 As Connect 'вверх         Public Connect3 As Connect 'вправо         Public Connect4 As Connect 'вниз     End Class     Public Points(,) As P 'Массив точек       Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load         drwLineHMode1 = False         drwLineHMode2 = False         Dim x As Integer, y As Integer 'Кол-во точек в массиве максимальное         x = Me.Height         x = Math.Round(x / 25)         y = Me.Width         y = Math.Round(y / 25)         Me.Height = 500         Me.Width = 800         Me.WindowState = FormWindowState.Normal         ReDim Points(x, y)         Dim z As New P, c As New Connect         Dim i As Int16, j As Int16         c.Type = ""         For i = 0 To x             For j = 0 To y                 z.x = i * 25                 z.y = j * 25                 z.Connect1 = c                 z.Connect2 = c                 z.Connect3 = c                 z.Connect4 = c                 Points(i, j) = z                 '[B]Me.RichTextBox1.Text += vbCrLf & "(" & CStr(i) & ", " & CStr(j) & ")      " & CStr(Points(i, j).x) & " : " + CStr(Points(i, j).y)[/B]             Next         Next         For i = 0 To x             For j = 0 To y                 [B]Me.RichTextBox1.Text += vbCrLf & "(" & CStr(i) & ", " & CStr(j) & ")      " & CStr(Points(i, j).x) & " : " + CStr(Points(i, j).y)[/B]             Next         Next           Loading = False     End SubВопрос: В первом цикле выводит как задумано: (0, 0) 0 : 0 (0, 1) 0 : 25 (0, 2) 0 : 50 ... А уже в следующем цикле получается (0, 0) 1050 : 1300 (0, 1) 1050 : 1300 (0, 2) 1050 : 1300 ... В чем тут прикол?

  1. Приветствую. Может у кого то уже есть сделаная ета уже заезжаная игра, где надо собирать карты по парам, ну совпало все 9 - исчезло, не совпадают снова переварачиваются. можно мне хотя бы пример на 4 картах, я ни как не могу понять как запрограмировать все карты, не писать же код 16 раз на каждую карту. вообще плохое представление как ето сделать, там мне еще такое в джаве надо сделать, но ето потом. а так единственное что пока умею делать ето две карты и просто кликаешь - меняется картинка, даже не random, а та которая там всегда стоит. короче все плохо. спасибо заранее. С джавой совсем плохо, там даже интерфай не нашла визуальный для еклипса

  1. А как правильно организовать логику работы с потоками в следующих условиях: - есть список (или массив, коллекция неважно) с данными - число потоков ограничивается вручную - при вызове в потоки передаются элементы из списка по одному - при завершении работы потока в него снова передается очередной элемент - обработанные данные не путаются с необработанными, процесс повторяется пока есть необработанные элементы списка Основной вопрос - как правильно организовать логику событий при взаимодействии набора данных и потоков, в которых нужно по очереди обработать эти данные, я чтото не втыкаю как так сделать...