Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MetVB.doc
Скачиваний:
15
Добавлен:
17.02.2016
Размер:
420.86 Кб
Скачать
      1. Моделирование бросания игральных костей

Задание

Разработать программу, моделирующую бросание одной игральной кости. Игральная кость представляет собой кубик с гранями, имеющими от 1 до 6 точек. Выпадение любой из шести граней кубика случайно и равновероятно. Выпавшие очки подсчитываются.

Сначала нарисовать в графическом редакторе (Paint) все шесть граней и сохранить каждую в виде отдельного графического файла.

Поместить на форму шесть элементов Image и присвоить свойству Picture каждого ссылку на файл с соответствующей картинкой. Элементы Image следует создавать на форме по отдельности, а не копировать, чтобы не создать массив элементов.

Для вывода результата поместить на форму седьмой элемент Image. Его свойству Picture будет присваиваться значение свойства Picture выпавшей грани (выпавшую грань определять с помощью функции генерации случайных чисел Rnd).

Вопросы к заданию

  1. Во время работы программы сделать объекты с картинками граней невидимыми для пользователя (единственный видимый объект — поле результата). В отчёте описать способ достижения невидимости исходных картинок.

  2. Добавить возможность организации нового сеанса игры. В отчёте описать набор необходимых для этого действий.

  3. Усовершенствовать программу для двух игроков, бросающих по две кости одновременно. Суммы выпавших у игроков чисел сравниваются. Первый игрок может выиграть сразу, если выпадет 12 очков, или сразу проиграть, если выпадет 2 очка.

    1. На половине формы каждого игрока расположить объект класса PictureBox, в который поместить два объекта класса Image для отображения выпавших граней костей и кнопку броска. Привести в отчёте список объектов интерфейса и их назначение.

    2. Кнопка броска должна быть своя у каждого игрока и во время игры должна появляться только у игрока, выполняющего очередной бросок. Привести в отчёте пример из кода программы с комментариями.

    3. При каждом новом броске первого игрока изображение костей, выпавших в предыдущем броске у второго игрока, должно исчезать. Привести в отчёте пример из кода программы с комментариями.

    4. Добавить накопительный счётчик набранных очков за несколько бросков для каждого игрока. В отчёте представить алгоритм накопительного подсчёта очков игрока.

      1. Преобразование единиц измерения

Задание

Перевести исходное значение скорости из одних единиц измерения в другие. Пользователь должен видеть как исходное значение скорости, так и преобразованное.

Использовать следующий набор единиц измерения: м/сек, км/сек, км/ч.

В интерфейсе использовать текстовое поле для ввода исходного значения, метку для вывода результата, кнопки начала преобразования и два блока альтернативных переключателей для выбора единиц измерения, по три элемента в каждом блоке.

Блоки переключателей группировать с помощью объекта Frame. Сначала разместить на форме рамку, а затем внутри неё создать переключатели (если первоначально создать переключатели вне рамки, а затем переместить их внутрь неё, они не будут действовать единой группой).

Вопросы к заданию

  1. Разработать интерфейс пользователя. В отчёте привести список объектов интерфейса и их назначение.

  2. В отчёте описать алгоритм определения варианта преобразования.

  3. Ввести в программу округление выводимого результата до сотых (использовать стандартную функцию округления Round).

  4. Дополнить программу проверкой соответствия начальных и конечных единиц измерения. В случае их совпадения выводить сообщение о ненужности преобразования (см. прил. 1, функция MsgBox). Проверку реализовать в виде отдельной процедуры.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]