Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Бросание игральной кости на VBA

Тип Реферат
Предмет Информатика и программирование
Просмотров
1115
Размер файла
106 б
Поделиться

Ознакомительный фрагмент работы:

Бросание игральной кости на VBA

Курсовая работа

по курсу

«Прикладное программное обеспечение»

на тему:

«Бросание игральной кости на VBA»

СОДЕРЖАНИЕ

Введение

1. Основные средства и возможности VBA

1.1 Использование VBA в MicrosoftExcel

1.2 Адресация ячеек в Excel

2. Игральная кость. Имитация бросания игральной кости

2.1 Постановка задачи и план решения

2.2Описание программы

3. Исходный текст

Заключение

Библиографический список


Введение

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

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

1. Основные средства и возможности VBA

VisualBasicforApplication (VBA) – развитая система визуального программирования для создания прикладных программ в среде MicrosoftOffice. С помощью VBA можно создавать объекты управления графического интерфейса пользователя, задавать и изменять свойства объектов, подключать к ним соответствующий программный код. Методика программирования с использованием средств VBA сводится к следующему:

- создание объектов управления и контроля (диалоговые окна, пиктограммы, меню);

- разработка процедур, используемых при вызове объектов.

Прикладные программы на языке VBA оперируют со следующими понятиями:

- объект управления и контроля – экранные формы, графические элементы внутри форм, в том числе текстовые окна, линейки прокрутки, пиктограммы, окна-списки, командные кнопки и др.;

- свойство(параметр) – характеристика или атрибут объекта управления;

- метод доступа – аналогичное понятиям функция, оператор, который воздействует всегда на объект;

- процедура – подпрограммы и функции, произвольная последовательность операторов VBA; процедуры делятся на событийные (запускаются при наступлении событий) и общие процедуры.

Программы на языке VBA для приложений, функционирующих в Excel 5ю0, создаются двумя способами:

- в автоматическом режиме как результат построения клавишной макрокоманды;

- в неавтоматическом режиме путем создания программного кода.

Для создания программного модуля в составе рабочей книги выполняется команда меню ВСТАВКА, Макрос с указанием типа макроса – Модуль. При этом создается новый рабочий лист со стандартным именем Модуль и порядковым номером программного модуля в рабочей книге. Имя модульного листа можно изменить.

При работе с модулем на экран выводится новая панель инструментов VisualBasic.

Первый ряд кнопок панели (слева направо):

<Вставка Модуля> - вставляет в активную рабочую книгу новый программный модуль;

<Редактор Меню> - редактирование строк и команд меню рабочей книги;

<Просмотр Объектов> - просмотр списка доступных в текущей рабочей книге процедур, модулей, и объектов и их свойств.

Второй ряд кнопок:

<Выполнить Макрос> - выбор нужного макроса для запуска через окно диалога Макрос;

<Шаг Макроса> - пошаговое выполнение выбранного макроса (шаг – одна строка кода);

<Продолжить Макрос> - возобновление выполнения макроса после его останова;

<Остановить макрос> - останов выполнения или записи макроса;

<Записать макрос> - ввод через окно диалога Макрос имени нового макроса и его запись.

Третий ряд кнопок:

<Точки Прерывания> - установление (снятие) точки прерывания для строки процедуры;

<Наблюдение> - указание в окне диалога выражения VBA для наблюдения его значений;

<Вход в Процедуру> - выполнение следующей строки кода процедуры VBA;

<Выход из Процедуры> - выполнение следующей строки кода процедуры VBA с приостановкой.

Экран модуля используется для записи строк программы на языке VBA.

Доступ к компоненту набора осуществляется двумя способами:

1) по номеру компонента

2) по имени компонента.

Наборы обладают следующими свойствами:

- Count – определяет число компонентов в наборе;

- Name – определяет имя компонента;

- Parent – определяет имя объекта, включающего набор.

Для добавления и удаления компонентов набора используют методы Add и Delete. Отдельные ячейки таблицы доступны через объект Range и следующие методы:

1. Cell– в качестве аргументов указываются два целых числа, определяющих местоположение ячейки таблицы – Cell (число1; число2).

2. Range– работа с прямоугольной областью ячеек, в качестве аргументов используется одна или две ссылки на ячейки таблицы в стиле A1:

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

4. Unionметод множественного выделения областей ячеек – Union (область1; область2).

Некоторые встроенные типы данных. VBA использует 11 встроенных типов данных. В данной курсовой работе использованы следующие:

Booleanиспользует 2 байта, или 16 бит, памяти для хранения логических данных; имеет два возможных значения: True и False/

Integerиспользует 2 байта памяти для хранения целых чисел, в том числе 1 бит для хранения знака числа, 15 бит – для числа.

Longиспользует 4 байта или 32 бита, памяти для хранения целого числа двоичной точности, в том числе 1 бит – для хранения знака числа, 31 бит – для числа.

Doubleиспользует 8 байтов для раздельного хранения мантиссы (максимум 15 знаков) и порядка.

Stringиспользует 1 байт для хранения 1 символа плюс 1 байт для отметки конца строки.

Objectиспользует 4 байта памяти для ссылки на любой объект VisualBasic.

Variantиспользуется всегда, когда явно указан какой-либо тип; может соответствовать любому другому разрешенному типу данных.

Процедуры .В зависимости от назначения процедуры они разделяются на процедуры обработки событий и процедуры общего назначения. В зависимости от области определения процедуры бывают открытыми и закрытыми. Закрытые процедуры доступны только внутри формы, модуля, класса модулей, объявляются ключевым словом private. Открытые процедуры доступны для любых форм, модулей и классов модулей и объявляются ключевым словом public. Процедура обработки событий имеет имя, полученное сцеплением с помощью символов подчеркивания имени и события. Например:

CommandButton_Click объявляется по умолчанию как закрытая (private).

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

Операторы управления:

1. Ifthen – условный оператор, который может иметь однострочный или блочный синтаксис;

Например:

If условие then

[оператор]

[else if условие then]

[else]

[оператор]

[endif]

endif

2. SelectCase – оператор выбора имеет следующий синтаксис:

SelectCase проверочное выражение

Case список выражений

[оператор]

Case else

[оператор]

End Select

1. ForNext – оператор цикла имеет следующий синтаксис:

For счетчик = начальное значение Т

конечное значение [Step шаг]

[оператор]

Next [счетчик]

Шаг может быть как положительным так и отрицательным.

2. DoLoop – оператор повторения существует в двух вариантах:

1) Do [{While/ Until} условие]

[оператор]

Loop

2) с постусловием

Do

[оператор]

Loop [{While/Until3} условие]

Стандартные элементы управления:

1. CommandButton – используется для того, чтобы начать, прервать, или закончить какой-либо процесс.

2. Label (надпись) – предназначен для отображения текста, который пользователь не может изменить с клавиатуры.

3. TextBox (текстовое поле) – является основным элементом управления для ввода данных.

4.CheckBox (флажок) – это элемент управления, который можно отмечать выбирая из ряда функций одну или несколько.

5. OptionButton (переключатель) – предназначен для установки только одной операции из группы.

6. ListBox (список) – позволяет пользователю выбирать из списка один или несколько элементов.

7. ComboBox (поле со списком) – является комбинированным списком (комбинация самого списка со значениями поля ввода текста). Поле со списком используется в тех случаях если нельзя заранее определить значение, которое следует включить в список или список содержит много элементов.

8. Элемент управления ScrollBar – полосы прокрутки окна TextBox и ListBox.

9. Timer – использование таймера является хорошим способом управления программой. С помощью таймера можно запускать или завершать процессы в определенные моменты времени.

10. Список устройств DriveListBox. Это элемент управления относится к группе, предназначенной для отображения работы с дисками, каталогами и файлами.

11. Список файлов FileListBox – отображает файлы текущего каталога, откуда их можно выбирать. Основным событием является Click.

12. Рамка (Фрейм) Frame – его назначение объединять в группу элементы управления, элементы объединения с помощью рамки. Можно как единое целое перемещать, активировать и деактивировать, делать видимыми и невидимыми. Для объединения элементов в группу следует сначала создать рамку, затем добавить в него нужные элементы управления.

14. Окно с рисунком PictureBox – предназначен для отображения рисунков и других графических объектов. Этот элемент как и рамка, является контейнером. Поэтому его можно использовать для объединения других элементов.

1.1Использование VBA в MicrosoftExcel

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

Редактор VBA активизируется из Excel одним из следующих способов:

- командой меню СервисÞМакросÞРедактор VisualBasic;

- комбинацией клавиш <Alt+F11>;

- кнопкой панели инструментов VisualBasic.

Вернуться из редактора VBA в приложение можно по комбинации клавиш <Alt+F11>, по команде ViewÞMicrosoftExcel или через панель задач.

Знакомство с VBA мы рекомендуем начинать с создания макросов, когда сама программа Excel записывает выполняемые команды и генерирует программный код в виде процедуры. Между макросом, который создается в процессе записи, и VBA-программой, код которой мы вводим вручную, принципиальной разницы нет. В дальнейшем процедуру макроса можно модифицировать, добавляя новые команды или удаляя лишние. Тщательный разбор команд поможет освоить принципы языка VBA, а практическое написание программ значительно ускорит процесс.

Структура приложения Excel

При открытии рабочей книги автоматически активизируется объект Application, определяющий само приложение, и все встроенные в него объекты. Этот объект находится на вершине иерархической структуры. Приложение включает рабочие книги (Workbooks) и различные системы надстройки. В свою очередь, рабочие книги содержат рабочие листы (Sheets) и другие объекты. Наконец, рабочие листы включают самый важный объект – диапазон ячеек (Range).

Так как приложение разрабатывается на базе существующих таблиц, все результаты действий должны быть связаны с ячейками рабочего листа. Специального объекта ячейки в Excel не существует, в данном случае объект Range используется и для одной-единственной ячейки, и для интервала ячеек.

Редактор VisualBasicforApplication в визуальном режиме позволяет просмотреть структурный состав объектов, обеспечивает добавление новых и редактирование существующих элементов, в том числе и макросов.

Главное окно редактора (рис. 1) включает следующие элементы: окно проекта (Project), окно формы (UserForm), окно программного кода (Code), окно просмотра (ObjectBrowser).

Структура программного кода VBA

Программа VBA представляет собой совокупность процедур и функций, размещенных в зависимости от особенностей решаемой задачи в одном или нескольких модулях (это специальные разделы Excel). Добавление модуля осуществляется по команде InsertÞModule (в этом случае программный код составляется пользователем) или при создании макроса (когда программа создается автоматически). Созданному модулю присваивается стандартное имя Module1, Module2 и т. д.

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

Для удаления модуля следует: выделить имя модуля, выбрать команду FileÞRemoveModule, щелкнуть в окне диалога на кнопке "Нет".

МАКРОСЫ. Макрос – это последовательность команд и действий пользователя, записанная и хранимая внутри документа и исполняемая Excel так же, как пользователь производил эти действия. Последовательность действий пользователем выполняется один раз при записи макроса, затем автоматически производится Excel при каждом запуске макроса. Большинство команд, которые можно выполнить с использованием меню, клавиатуры или мыши, можно записать в макрос и выполнить их при необходимости. С помощью макроса можно строить числовые ряды, копировать таблицы, выполнять переход на нужные листы, сохранять информацию, работать в режиме ввода и т.д. Макрос записывается в виде процедуры с заданным именем в модуль. Имя макроса может состоять из букв, цифр и символа подчеркивания ( _ ).

Для записи макроса необходимо: выполнить команду СервисÞМакросÞНачать запись, в окне диалога "Запись макроса" задать имя макроса и сочетание клавиш для быстрого выполнения макроса (рис. 2); затем выполнить нужные действия; после чего закончить запись макроса по команде СервисÞМакросÞОстановить запись. При записи макроса используются команды меню, кнопки панели инструментов, ярлычки листов, клавиатура.

Макрос представляет процедуру, начинающуюся с ключевого слова Sub и заканчивающуюся словом End Sub. Первые строки процедуры являются комментариями, они содержат имя макроса, дату записи, автора и комбинацию клавиш. Далее следуют команды, записанные по правилам VBA. Каждая команда соответствует выполненному действию.

Язык программирования VBA имеет свои правила написания программного кода. Он использует свой алфавит, включающий буквы латинского алфавита и кириллицу; цифры от 0 до 9; символ подчеркивания.

Из этих символов состоят имена процедур, переменных, меток переходов, константы и команды.

В состав алфавита также входят пробелы для отделения слов друг от друга и знаки операций (+ - * / ^ = > < ( ) [ ] { } ‘ & @), в том числе составные ( >=, <=, <>).

Программный код VBA представляет собой последовательность команд, записанных по правилам языка Basic. Имена переменных, констант, процедур обозначают посредством идентификаторов, учитывая при этом, что имя должно быть содержательным, оно должно начинаться с буквы, не должно содержать точки, пробела, разделительных символов, зарезервированных слов. Зарезервированные слова (As, Public, Then, All и др.) выводятся синим цветом. Примеры правильных имен: strMyName, strФамилия. Примеры неправильных имен: 2Week, Second.Week.

Каждая команда записывается в отдельной строке по определенному правилу.

В VBA принято команду называть оператором, правило записи команды – синтаксисом или форматом.

Операторы VBA имеют следующие форматы:

Объект.Свойство = Значение

Объект.Метод [Параметр1] [,Параметр2]...],

где: объект – имя объекта, для которого устанавливается свойство или метод. Обычно цепочка объектов начинается с объекта Application, который можно опускать. Например, ссылка Application.ActiveCell или просто ActiveCell – это обращение к активной ячейке. При работе с одной рабочей книгой объект WorkBook также можно опустить;

Свойство – характеристика объекта, подлежащая изменению;

Значение – новое состояние объекта;

Метод – команда или процедура;

Параметр – аргумент, используемый методом. Если параметров несколько, они разделяются запятой.

Знак апостроф ( ‘ ) в начале строки означает, что команда или сообщение в строке используется как поясняющий текст и игнорируется VBA. Такие строки в процедуре отмечены зеленым цветом.

Если в командной строке нарушен синтаксис или сама команда неверна, она выделяется красным цветом.

Для переноса части команды на другую строку в конце первой необходимо вставить пробел, затем символ подчеркивания ( _ ).

Примеры:

Sheets("Лист1").Select – оператор выделения рабочего листа, где Sheets("Лuст1") – объект, Select – метод.

Sheets("Лист1").Range("A1").Value = Sheets ("Выпускпродукции"). Range("D5") – оператор, присваивающий ячейке Лист1!А1 значение из ячейки Выпуск продукции!D5, Value – свойство.

1.2Адресация ячеек в Excel

В Excel ячейка, строка, столбец и диапазон ячеек рассматриваются как один объект Range.

Для определения диапазона используются различные средства, задаваемые с помощью следующих свойств и методов.

Рис 1.1 (Вид ячеек)


Range – свойство, определяющее диапазон ячеек;

Cells – свойство, позволяющее выбирать ячейки рабочего листа;

ActiveCell – свойство, возвращающее одну активную ячейку;

Selection – метод, возвращающий выделенный объект.

Для доступа к диапазону ячеек чаще всего используются свойства Range и Cells.

Для ссылки на ячейки используется два формата.

Формат А1 (обычный). Ссылка состоит из имени столбца и номера строки. Например, D4. Ссылка может быть относительной (D4) и абсолютной ($D$4). Ссылка может указывать диапазон ячеек. Полный адрес диапазона может включать имя рабочего листа.

Формат R1C1. В данном формате R задает номер строки, С – номер столбца, ссылка является абсолютной. Для указания относительной ссылки задается смещение по отношению к активной ячейке. Смещение указывается в квадратных скобках, знак указывает направление смещения. Например, R[-2]C – ссылка на ячейку, расположенную на 2 строки выше в том же столбце. R[2]C[3] – ссылка на ячейку, расположенную на 2 строки ниже и 3 столбца правее. Ссылка на одиночную ячейку имеет вид:

[Объект.] Range ("адрес ячейки"). Для свойства Range в качестве аргумента используется любая ссылка в формате А1. Например, WorkSheets("Лист1").Range("A7")=34, или для текущего листа Range("A7")=34 – запись в ячейку А7 числа 34.

[Объект.] Cells(<номер строки>, <номер столбца>). Свойство используется для доступа к отдельной ячейке. В качестве аргументов указываются номер строки и столбца. Например, для ввода числа 34 в ячейку Лист1!А7 необходима команда: Sheets(1).Cells(7, 1).Value=34.

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

Замечание. При работе стили переключаются в меню Сервис -> Параметры -> Общие -> Стиль ссылок, при реальном программировании наиболее удобно пользоваться не этими стилями, а именами ячеек. Тогда работа с вашей ячейкой похожа на роботу с обычной переменной. Что многим более привычно и удобно. Например для констант или полей форм.

Для того, чтобы дать имя ячейке наведите на неё курсор. Выберите меню Вставка -> Имя -> Присвоить. Появится диалоговое окно, куда надо ввести имя и нажать кнопочку OK.

Рис 1.2 (Стиль ссылок)

После присваивания имени вы введите число в эту ячейку, а в другой создайте формулу: =MyName+10

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

Узнать все имена можно здесь:


Рис 1.3 (Просмотр имен стилей)

2.Игральная кость. Имитация бросания игральной кости

Игральная кость (лат. ālea, англ. dice) — популярный источник случайности в настольных играх (особенно в одноимённой игре). Игральная кость обычно выполнена в виде шестигранного кубика с нанесёнными на Рис 2.1(Традиционные игральные кости) его стороны числами от 1 до 6, причём сумма чисел на противоположных гранях должна равняться семи.

Игральную кость можно рассматривать как генератор случайных чисел в целочисленном интервале [1..N] с одинаковой вероятностью выпадения всех чисел интервала. Такие генераторы обозначают 1dN. Так, например, обычный шестигранный кубик — это 1d6; бросание монетки — это работа генератора 1d2 и т. д.

Сокращение MdN обозначает сумму M применений 1dN. Следует отметить, что MdN даёт целые числа в интервале [M..M*N]. Вероятность выпадения числа из этого интервала растёт по мере приближения к его середине

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

Таблица 2.1

Количество очковВероятность исхода%%
21/166,25
31/812,5
43/1618,75
51/425
63/1618,75
71/812,5
81/166,25

Пример генератора, не попадающего под определение MdN: колода карт, в которую не возвращаются вытянутые карты. Она будет 1dN только для первой попытки, распределения последующих попыток будут зависеть от предыдущих результатов.

В ролевых играх (например, основанных на правилах Dungeons & Dragons) используются игральные кости с 4 (тетраэдр), 6 (куб), 8 (октаэдр), 12 (додекаэдр), 20 (икосаэдр) и другим количеством граней. Лоу Зоччи изобрёл зоччиэдр, игральную кость со 100 гранями. Впрочем, для получения числа от 1 до 100 чаще пользуются двумя 10-гранными костями.

В среде ролевиков тип кубика часто обозначают буквой «d» (dices) или «к», (костей) после которых указывается количество сторон. Помимо привычных многим шестигранных кубиков (d6), используются четырёх- (d4), восьми- (d8), десяти- (d10), двенадцати- (d12) и двадцатигранные (d20) кости. Используется также обозначение d100, d% или «процентный кубик», представляющий собой два десятигранника, один из которых используется для определения количества десятков, а второй — единиц.

2.1 Постановка задачи и план решения

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

План решения

На рис. 2.2 показан предлагаемый дизайн формы.


Рисунок кости
Счет игрока

Рис 2.2 (Интерфейс игры)

Назначение каждого элемента управления:

1) элемент управления Image — для графического представления игральной кости (одной ее грани);

2) надписи — для показа количества выпадений того или иного числа и для подписей к ним;

3) кнопки:

· Выход — для завершения программы по щелчку на ней;

· Начать — чтобы начать бросание по щелчку на кнопке;

· Остановить — чтобы остановить бросание по щелчку на ней;

· Сброс — чтобы обнулить счет по щелчку на кнопке.

В этой программе присутствует повторяющийся процесс (бросание кости и вывод результата) через регулярные интервалы времени. В такой ситуации удобно использовать элемент управления Timer (Таймер).


Таблица 2.2 (Процедура для таймера)

Получить случайное число от1 до 6
123456
Загрузить изображение 1.bmpЗагрузить изображение 2.bmpЗагрузить изображение 3.bmpЗагрузить изображение 4.bmpЗагрузить изображение 5.bmpЗагрузить изображение 6.bmp

1. Кнопка «Начать» - вызов процедуры “qtimer”;

2. Кнопка «Остановить» - переменной PauseTime присвоить 0, тем самым остановить timer;

3. Кнопка «Сброс»- присвоить свойстве Caption 0, т.е. обнулить значения;

Создание интерфейса

Перед началом работы над программой, надо создать на любом графическом редакторе 6 изображений, в формате bmp.

Далее свойство caption элемента UserForm1, изменить на «Бросание Кости». Для элемента label1-21 ,размер шрифта установить 14 пт, свойство Color= white, BorderStyle = 0 fmBackStyle.

2.2 Описание программы

Процедура таймера

Private Sub qtimer()

Dim Кости, a, d, stav As Integer

Описываем переменные

stav = CDbl(TextBox2.Text)

‘Значение вводимое из TextBox2. преобразуем в числовое

PauseTime = 1

‘Увеличиваемвремятаймера

Start = timer

Do While timer < Start + PauseTime

‘Продолжать пока не истекло заданное время

DoEvents

Randomize

Кости = Int(Rnd * 6) + 1

‘Возвращает случайное число типа Single.

Необязательный атрибут. Single значение или любое допустимое выражение Single.

Если параметр numberТо функцией Rnd генерируется
Равно нулюПоследнее сгенерированное случайное число.
Меньше нуляКаждый раз одно и то же число. Number используется как начальное значение.
Больше нуляСледующее случайное число в последовательности.
Не задаетсяРавно нулю

Функция Rnd возвращает значение, которое меньше 1, но больше или равно нулю.

Cпособ генерации случайного числа в функции Rnd определяется значением параметра Number.

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

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

SelectCase Кость

Case 1

Выполняет один из блоков операторов в зависимости от значения выражения. Обязателен в операторе Case. Список возможных значений для testexpression

Image1.Picture = LoadPicture("1.bmp")

’Загружаем рисунок

Label1.Caption = Label1.Caption + 1

Case 6

Image1.Picture = LoadPicture("6.bmp")

Label6.Caption = Label6.Caption + 1

‘Если выпала шестерка, то увеличить счетчик

End Select

Loop

If stav = Кость Then

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

Если ставка совпала с выпавшим числом, то увеличить счетчик(банк) на 3, если же нет то уменьшить счетчик на 2.

Label15.Caption = Label15.Caption + 3

Else

Label15.Caption = Label15.Caption - 2

End If

End Sub

Процедуракнопки «Начать»

Private Sub CommandButton1_Click()

stav = CDbl(TextBox2.Text)

Label18.Visible = False

‘ Устанавливаем флаг фокуса надписи на ложь

If stav < 6 And stav > 0 Then

Проверяем была ли сделана ставка, если да то запускаем таймер,

qtimer

Else

‘если же нет, то меняем флаг фокуса и выводим надпись

Label18.Visible = True

Label18.Caption = "Вынесделалиставку!!!"

End If

‘Выводим текущий счет игрока

Label19.Caption = TextBox1.Text + " Вашвыигрыш = "

End Sub

Процедура кнопки «Остановить»

Private Sub CommandButton2_Click()

PauseTime = 0

‘Сбрасываем таймер на 0, тем самым останавливаем timer

End Sub

Процедурадлякнопки «Сброс»

Private Sub CommandButton3_Click()

Label1.Caption = "0"

Устанавливаем на 0 ,чтоб процедура qtimer не вызывала ошибку

Label19.Caption = ""

TextBox1.Text = ""

‘Очищаем поле text(ставка)

TextBox2.Text = ""

End Sub

Процедура для кнопки «Выход»

Private Sub CommandButton4_Click()

UserForm1.Hide

‘Скрываем форму

EndSub


3.Листинг программы

Private Sub qtimer()

Dim Кости, a, d, stav As Integer

stav = CDbl(TextBox2.Text)

PauseTime = 1

Start = timer

Do While timer < Start + PauseTime

DoEvents

Randomize

Кости = Int(Rnd * 6) + 1

Select Case Êîñòü

Case 1

Image1.Picture = LoadPicture("d:kosti1.bmp")

Label1.Caption = Label1.Caption + 1

Case 2

Image1.Picture = LoadPicture("d:kosti2.bmp")

Label2.Caption = Label2.Caption + 1

Case 3

Image1.Picture = LoadPicture("d:kosti3.bmp")

Label3.Caption = Label3.Caption + 1

Case 4

Image1.Picture = LoadPicture("d:kosti4.bmp")

Label4.Caption = Label4.Caption + 1

Case 5

Image1.Picture = LoadPicture("d:kosti5.bmp")

Label5.Caption = Label2.Caption + 1

Case 6

Image1.Picture = LoadPicture("d:kosti6.bmp")

Label6.Caption = Label6.Caption + 1

End Select

Loop

If stav = Кость Then

Label15.Caption = Label15.Caption + 3

Else

Label15.Caption = Label15.Caption - 2

End If

End Sub

Private Sub CommandButton1_Click()

stav = CDbl(TextBox2.Text)

Label18.Visible = False

If stav < 6 And stav > 0 Then

qtimer

Else

Label18.Visible = True

Label18.Caption = "Вынесделалиставку!!!"

End If

Label19.Caption = TextBox1.Text + " Вашвыигрыш = "

End Sub

Private Sub CommandButton2_Click()

PauseTime = 0

End Sub

Private Sub CommandButton3_Click()

Label1.Caption = "0"

Label2.Caption = "0"

Label3.Caption = "0"

Label4.Caption = "0"

Label5.Caption = "0"

Label6.Caption = "0"

Label15.Caption = "0"

Label19.Caption = ""

TextBox1.Text = ""

TextBox2.Text = ""

End Sub

Private Sub CommandButton4_Click()

UserForm1.Hide

End Sub

Модуль

Public PauseTime, Start, Finish, TotalTime


Заключение

В данной курсовой работе были рассмотрены стандартные операторы, функции и методы VBA

Тема работы с случайными числами является очень актуальной, так как случайные числа находят своё применение в приложениях различных типов и имеет большое практическое значение. Не одна задача современного программирования (в криптографии) не обходится без решения вопроса генерирования случайных данных.

Данная работа может быть использована студентами для изучения операторов, функция и методов VBA, которые позволяют выполнять различные задачи.


БИБЛИОГРАФИЧЕСКИЙСПИСОК

1. Гарнаев А.Ю. Самоучитель VBA. – СПб.: БХВ-Петербург, 2003. – 512 с.

2. Гарнаев А.Ю. Excel, VBA, Internet в экономике и финансах. СПб.: БХВ-Петербург, 2001.

3. Демидова Л.А., Пылькин А.Н. Программирование в среде VisualBasicforApplication. М.: Телеком, 2004.

4. Уокенбах Д. Профессиональное программирование на VBA в Excel 2002. Пер. с англ. – М.: Издательский дом «Вильямс», 2003. –784 с.

5. Блатнер П., Ульрих Л. и др. Использование MicrosoftExcel 2000. Специальное издание.: Пер. с англ.: Уч. пос. – М.: Издательский дом «Вильямс», 2000. –1024 с.


Нет нужной работы в каталоге?

Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
Физика
История
icon
136328
рейтинг
icon
5814
работ сдано
icon
2631
отзывов
avatar
История
Экономика
Маркетинг
icon
134459
рейтинг
icon
3014
работ сдано
icon
1323
отзывов
avatar
Химия
Экономика
Биология
icon
88378
рейтинг
icon
1981
работ сдано
icon
1250
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
50 038 оценок star star star star star
среднее 4.9 из 5
РГУП
Все четко и быстро, согласно указанным в заказе требованиям, спасибо!!))))
star star star star star
СамГУ
Очень хорошо проделанная работа! Доволен качеством и быстротой выполнения.
star star star star star
КГПУ им. В.П. Астафьева
Заказ выполнен досрочно. Информация по теме хорошо структурирована. Большое спасибо, реком...
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

Разработка ar-ресурса по информатике для школьников arloopa

Курсовая, Информатика и программирование

Срок сдачи к 17 мар.

только что

На профиле проведите границы фаций, подурочищ, урочищ

Другое, ландшафтоведение

Срок сдачи к 23 февр.

2 минуты назад

Я также пришлю готовый образец, чтобы вы могли лучше понять

Отчет по практике, Механика

Срок сдачи к 26 февр.

3 минуты назад

Виды устных форм договора, существующих в коммерческой деятельности

Реферат, Организация договорной работы

Срок сдачи к 2 мар.

6 минут назад

решение типовой задачи.

Онлайн-помощь, Высшая математика, физика, сопромат, прикладная теория колебаний

Срок сдачи к 26 февр.

7 минут назад

Практическая работа по дисциплине «архитектура эвм и вычислительных систем»

Другое, «Архитектура ЭВМ и вычислительных систем», машиностроение, автоматика

Срок сдачи к 29 февр.

8 минут назад

Нужно решить , желательно с объяснением

Контрольная, Математика и основы экономики

Срок сдачи к 27 февр.

10 минут назад

Выполнение ккр по теме "стороны и третьи лица в гражданском процессе"

Контрольная, гражданский процесс

Срок сдачи к 3 мар.

11 минут назад

План-конспект

Другое, Педагогика

Срок сдачи к 26 февр.

11 минут назад

Полное решение по Вероятнлсть и Статистике

Другое, Вероятность и Статистика

Срок сдачи к 5 мар.

11 минут назад

Контрольная работа по основам тгв

Контрольная, теплогазоснабжение и вентиляция

Срок сдачи к 29 февр.

11 минут назад

Разработка структурной схемы расчета показателей надежности ИС

Курсовая, Информационные технологии

Срок сдачи к 9 мар.

11 минут назад
11 минут назад

решение задач

Решение задач, производственная санитария, физика, механика

Срок сдачи к 28 февр.

11 минут назад

В ходе предварительного следствия по уголовному делу № 432

Другое, правоохранительня деятельность

Срок сдачи к 23 февр.

11 минут назад

решить 2 задачи

Решение задач, металлические конструкции

Срок сдачи к 26 февр.

11 минут назад

Отредактировать готовый текст проекта

Курсовая, Индивидуальный проект, лингвистика

Срок сдачи к 28 февр.

11 минут назад

«Как Samsung стал мировым брендом»

Курсовая, реклама и PR

Срок сдачи к 31 мар.

11 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно