Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Кафедра информационного и программно-математического↑ Стр 1 из 5Следующая ⇒ Содержание книги
Поиск на нашем сайте
Факультет прикладной математики и информатики Кафедра информационного и программно-математического Обеспечения автоматизированных производств ОСНОВЫ ПРОГРАММИРОВАНИЯ НА VISUAL BASIC 6.0 В ДВУХ ЧАСТЯХ ЧАСТЬ 1 Учебно-методическое пособие для студентов географического факультета специальности 1-31 02 01 «География» специализация 1-31 02 01 – 01 «гидрометеорология» 1-31 02 01 – 03 «геоинформационные системы» Авторы: доцент Рафеенко Е.Д., доцент Соболева Т.В. МИНСК ЗНАКОМСТВО СО СРЕДОЙ VISUAL BASIC
Для запуска Visual Basic 6.0 следует нажать: Пуск-Программы-Microsoft Visual Basic 6.0 – Microsoft Visual Basic 6.0. В результате на экране появится диалоговое окно New Project (Новый проект), показанное на рисунке 1, в котором нужно выбрать тип создаваемого приложения, например Стандартный Exe. Из этого же окна можно загрузить уже существующий проект, для чего следует перейти на вкладку Существующее. Рисунок 1 – Диалоговое окно New Project в Visual Basic 6
После нажатия на кнопку Открыть, пользователь оказывается в рабочей среде Visual Basic, показанной на рисунке 2. В левой части экрана на рисунке 2 размещается окно панели инструментов Toolbox, в котором находятся элементы управления, доступные для размещения их на форме. Справа вверху располагается Проводник проекта (Project Explorer), в котором отображаются все составные части проекта: формы и модули не связанные с формами. Он позволяет быстро переключаться между окном формы и редактором. Непосредственно под ним находится окно Свойства (Properties) – панель свойств, которая позволяет настроить форму и объекты на ней, установить для них различные свойства: размеры, цвет, шрифт, название и т.д. Окно в центре экрана носит имя Проект1 – Form1 (Form). Внутри него находится другое окно с названием Form1, которое содержит сетку из точек — форму, которую можно модифицировать. Сетка используется для выравнивания элементов управления на экране.
Рисунок 2 – Основные окна среды Visual Basic
Панель инструментов
Панель инструментов (рисунок 3) содержит заготовки будущих элементов управления. В таблице 1 приведены названия некоторых элементов управления. Для выбора нестандартных компонентов необходимо выбрать из меню Проект (Project) – Компоненты (Components) нужный элемент и нажать кнопку Применить.
Рисунок 3 – Панель стандартных элементов управления
Таблица 1 – Названия элементов управления (номера компонент приведены в соответствии с их нумерацией на рисунке 3)
СОЗДАНИЕ ПРОСТЕЙШЕГО ПРИЛОЖЕНИЯ VISUAL BASIC ЛАБОРАТОРНАЯ РАБОТА № 1 Программирование выражений. Ввод-вывод данных Объявление переменных Следить за типами переменных в Visual Basic помогает оператор Option Explicit. Для того чтобы он автоматически появлялся в каждом создаваемом модуле, необходимо выполнить следующую последовательность действий: выбрать из меню Сервис (Tools) команду Опции (Options), щелкнуть ярлычок Редактор (Editor) и пометить флажок Требовать определение переменной (Require Variable Declaration) (см. рисунок 7).
Рисунок 7 – Настройки редактора кода _______________________________________________________________ ВНИМАНИЕ: Оператор Option Explicit запрещает использование переменных, необъявленных в явном виде. Переменные лучше всего объявлять оператором Dim, указывая при этом их тип. Тогда переменные легко читать и отличать от элементов управления и других объектов, в именах которых есть свои префиксы, а чтобы узнать тип нужной переменной, достаточно обратить внимание на блок операторов Dim в начале модуля или процедуры. Весьма распространенная и очень опасная ошибка — некорректное объявление оператором Dim сразу нескольких переменных одного типа. Необходимо явно определять тип каждой переменной в операторе Dim. _______________________________________________________________
Синтаксисоператора Dim: Dim ИмяПеременной As ТипПеременной [=Значение]
Пример правильного описания переменных: Выражения Выражение — это единица программного кода, которая определяет способ вычисления некоторого значения. Запись в тексте программного кода отличается от обычной математической записи. Операции, используемые в выражениях, подразделяются на ü арифметические, ü логические, ü строковые. Различают унарные и бинарные операции. Унарный знак плюс «+» перед величиной не изменяет её значения. Унарный знак минус «-» перед величиной изменяет её знак. К бинарным операциям (участвуют не одна величина, а две) относятся сложение, вычитание, умножение, деление. Операции выполняются в соответствии с их приоритетом (см. таблицу 2). Таблица 2 – Порядок выполнения операций
В таблице 3 приведены наиболее часто используемые стандартные математические функции Visual Basic. Таблица 3 – Стандартные математические функции
Примечание. Аргумент тригонометрических функций задается в радианах.
Ввод данных
Ввод данных в программу можно осуществить с помощью функции InputBox, которая при выполнении программы выводит собственное диалоговое окно (рисунок 8). Синтаксис функции вызова диалогового окна следующий: InputBox (Prompt, [ Title ], [ Default ], [ XPos ], [ YPos ], [ HelpFile ], [ Context ] ) As String Параметр Prompt определяет текст, отображающийся в диалоговом окне как приглашение. Title отвечает за надпись заголовка, если этот параметр не указан, то отображается название приложения. Default определяет значение по умолчанию, отображаемое в строке ввода. Параметры XPos и YPos указывают координаты верхнего левого угла окна. По умолчанию окно отображается посредине экрана. XPos и YPos нужно использовать совместно. Параметры HelpFile и Context позволяют открывать определенные файлы справочной системы. Все параметры, указанные в квадратных скобках, являются необязательными. Примервызова функции InputBox: s = InputBox ("Введите значение x", "Пример")
Рисунок 8 – Диалоговое окно InputBox Функция InputBox возвращает строку, введенную пользователем (при нажатии кнопки Отмена (Cancel) возвращается пустая строка). Возвращаемое значение имеет тип String. Поэтому, если необходимо работать с вводимым числовым значением, его нужно преобразовать с использованием функции Val:
x = Val (InputBox ("Введите значение x", "Пример"))
Для ввода данных можно использовать также элемент управления текстовое поле – TextBox. Текстовое поле TextBox позволяет вводить и выводить данные на форму. Его можно использовать как в обычном (однострочном) режиме, так и в многострочном. В процессе выполнения приложения текст, вводимый пользователем, хранится в свойстве Text. Возвращаемое в программу значение имеет тип String. Поэтому необходимо предварительно преобразовать получаемое значение в числовой вид с помощью функции Val:
x = Val (Text1.Text)
Свойство Text можно устанавливать и в процессе проектирования формы в окне Properties. Вывод данных
Для вывода данных можно использовать функцию MsgBox, которая при выполнении активизирует своё стандартное диалоговое окно сообщений на экране. Функция позволяет выводить как числовые, так и текстовые сообщения на экран. Окно может иметь кнопки OK, Cancel, Yes, No и др.Синтаксис функции для создания стандартного окна вывода следующий:
MsgBox (Prompt, [ Buttons As VbMsgBoxStyle=vbOkOnly ], [ Title ] [ HelpFile ], [ Context ] ) As As VbMsgBoxResult Параметр Prompt задает строку вывода. Title отвечает за надпись заголовка (как и для функции InputBox). Параметр Buttons определяет набор кнопок, которые выводятся в окне MsgBox. По умолчанию значение этого параметра равно vbOkOnly, т.е. на окне присутствует только одна кнопка OK.
Пример использования стандартного окна сообщений (рисунок 9): MsgBox ("Деление на ноль",,"Пример") Рисунок 9 – MsgBox с одной кнопкой Пример использования MsgBox с тремя кнопками (рисунок 10): MsgBox ("Деление на ноль", vbYesNoCancel)
Рисунок 10 – MsgBox с тремя кнопками
Пример использования MsgBox со значком (рисунок 11): MsgBox ("Деление на ноль", vbExclamation) Рисунок 11 – MsgBox со значком
В приложении можно использовать стандартные кнопки и значки, значения некоторых из них приведены в таблице 4. Таблица 4 – Стандартные значения атрибутов для MsgBox
Для вывода данных также могут использоваться текстовое окно TextBox и метка Label.
Пример использования для вывода данных элемента TextBox:
Text1.Text = "Таблица"
Пример использования метки Label. В отличие от текстового окна, для вывода используется свойство Caption.
Label1.Caption= "Результат" Label2.Caption= 5 + 6
Пример выполнения лабораторной работы № 1 Расположить на форме командную кнопку RUN и метки. Щелчок по кнопке вызывает запрос исходных данных x, y, z (использовать функцию ввода InputBox) и вычисление следующих арифметических выражений: , , . Результаты вычислений выводить в метки. Код программы:
Private Sub Command1_Click() Dim x As Double, y As Double, z As Double Const Pi=2.14159 x = Val(InputBox("Введите x", "Пример к лабораторной № 1")) y = Val(InputBox("Введите y", "Пример к лабораторной № 1")) z = Val(InputBox("Введите z", "Пример к лабораторной № 1")) Label1.Caption = (2 * Cos(x - Pi / 6)) / (1 / 3 + Sin(y) ^ 2) Label2.Caption = 1 + z ^ 2 / (3 + z ^ 2) Label3.Caption =(Exp(-x * y)) * Sqr(x + 1) + (Exp(-x * z)) *_ Sqr(x + 1.5) Text1.Text = "Выполнил студент Иванов А.В." End Sub
На рисунке 12 приведен пример оформления формы к лабораторной работе №1. Рисунок 12 – Результат работы программы Варианты заданий для самостоятельной работы Расположить на форме командную кнопку с надписью RUN и метки. Щелчок по кнопке вызывает запрос исходных данных (использовать функцию ввода InputBox) и вычисление арифметических выражений. Вариант 1. , , Исходные данные: x, y, z. Вариант 2. , , . Исходные данные: a, b, t. Вариант 3. , , . Исходные данные: x, a, b. Вариант 4. , , . Исходные данные: x, a, b. Вариант 5. , , . Исходные данные: x, a, b. Вариант 6. , , . Исходные данные: x, a, b. Вариант 7. , , . Исходные данные: m, c, t. Вариант 8. , , . Исходные данные: x, a, b. Вариант 9. , , . Исходные данные: x, y, z. Вариант 10. , , . Исходные данные: x, a, b. Вариант 11. , , . Исходные данные: x, a, b. Вариант 12. , , . Исходные данные: x, a, b.
ЛАБОРАТОРНАЯ РАБОТА № 2 Оператор выбора В разветвляющемся алгоритме последовательность выполнения шагов изменяется в зависимости выполнения от некоторых условий. Осуществляется выбор одного из двух/нескольких возможных вариантов. Разветвляющийся алгоритм содержит блок проверки условия и, в зависимости от результата проверки, выполняется та или иная последовательность шагов. Блок-схема Visual Basic Рисунок 13 – Оператор условного перехода Кроме того, возможно многократное дублирование условия, указываемого после If, для этого используется следующая форма:
If Условие1 Then Серия 1 [ ElseIf Условие2 Then Серия 2] … [ ElseIf УсловиеN Then Серия N] [ Else Серия N+1] End If Если имеется несколько операторов (групп операторов), которые необходимо исполнить в случае истинности некоторого условия, то конструкция If … Then … Else … может быть очень громоздкой. Оператор выбора Select Case оценивает выражение только один раз — в начале управляющей структуры — и выполняет выбор ветви из набора условий. Синтаксис оператора выбора следующий: Select Case <переменная или выражение> Case <А1> <Операторы 1> Case <А2> <Операторы 2> … Case <Аn> <Операторы n> Case Else <Операторы> End Select Блок-схема Visual Basic
Рисунок 14 – Оператор Select Case ЛАБОРАТОРНАЯ РАБОТА № 3 ЛАБОРАТОРНАЯ РАБОТА № 4 Loop Цикл выполняется до тех пор, пока выражение условия ложно. Иначе выполняется переход к оператору, следующему после Loop. Если условие истинно, то цикл выполняться не будет. Или Do While <условие > <тело цикла> Loop
В данном случае цикл выполняется до тех пор, пока выражение условия истинно. Разновидностью циклов с предусловием является цикла типа Wend. Если условие истинно, то выполняется тело цикла. Если условие ложно, то цикл ни разу не выполнится.
While <условие > <тело цикла> Wend
Вариант 1. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Вариант 2. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Вариант 3. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Вариант 4. . Вычисления продолжать до тех пор, пока не будет выполнено условие: . Вариант 5. Исходные данные: x. . Вычисления продолжать до тех пор, пока не будет выполнено условие: . Вариант 6. Исходные данные: x. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Вариант 7. Исходные данные: x. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Вариант 8. Исходные данные: x. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Вариант 9. Исходные данные: x. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Вариант 10. Исходные данные: x. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Вариант 11. Исходные данные: x. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Вариант 12. Исходные данные: x. . Вычисления продолжать до тех пор, пока значение очередного слагаемого не станет меньше, чем 0.0001. Дополнительные задания Вариант 13. Найти сумму цифр заданного натурального числа N. Вариант 14. Вычислить наибольший общий делитель заданных натуральных чисел A и B. Вариант 15. Определить число, получаемое выписыванием в обратном порядке цифр заданного натурального числа N. Вариант 16. Найти все делители заданного натурального числа N.
ЛАБОРАТОРНАЯ РАБОТА № 5 Многомерные массивы Visual Basic позволяет создавать многомерные массивы. При объявлении многомерного массива границы каждой размерности разделяются запятыми: Dim X(10, 20) As Integer ′описан двумерный массив, содержащий 11 строк и 21 столбец целых чисел Dim X(1 to 10, 1 to 20) As Integer ′описан двумерный массив, содержащий 10 строк и 20 столбцов целых чисел
Часть 1. Одномерные массивы Вариант 1. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольший элемент. Из массива X получить массив Y, поделив все элементы массива X на значение наибольшего элемента. Вывести в первую метку элементы исходного массива X, во вторую – элементы полученного массива Y. Вариант 2. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольший элемент. Заменить его значением суммы элементов, предшествующих ему. Вывести в метки элементы исходного и полученного массива. Вариант 3. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Определить среднее арифметическое элементов массива X, а также значение элемента, ближайшего к среднему и его номер. Вывести эти данные в метку, во вторую метку вывести элементы исходного массива. Вариант 4. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Сформировать массив Y по правилу: Y(1)=X(1)+X(N), Y(2)=X(2)+X(N -1) и т.д. Вывести элементы исходного массива X и полученного массива Y в метку. Вариант 5. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольший и наименьший элементы, поменять их местами. Вывести в первую метку элементы исходного массива, во вторую – элементы преобразованного массива. Вариант 6. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наименьший из положительных элементов. Вывести этот элемент в метку, во вторую метку вывести элементы исходного массива. Вариант 7. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Записать в массив Y элементы массива X, имеющие четные индексы, а в массив Z – элементы массива X, имеющие нечетные индексы. Вывести в первую метку элементы массива Y, во вторую – элементы массива Z. Вариант 8. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Записать в массив Y индексы нулевых элементов массива X. Вывести в первую метку элементы исходного массива X, во вторую – элементы полученного массива Y. Если нулевых элементов в массиве X нет, то вывести в метку соответствующее сообщение. Вариант 9. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольший элемент и его порядковый номер, если таких элементов несколько, то подсчитать их количество. Вывести этот элемент, его номер (или количество) в метку, во вторую метку вывести элементы исходного массива. Вариант 10. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Найти в массиве X наибольшее значение модуля разности между соседними элементами. Вывести в метку это значение, во вторую метку вывести исходный массив. Вариант 11. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Записать в массив Y элементы массива X, отсортированные в порядке возрастания. Вывести элементы исходного массива X и отсортированного массива Y в метки. Вариант 12. Расположить на форме командные кнопки «Заполнить массив» и «Выполнение проекта» и две метки. Щелчок по кнопке вызывает запрос N элементов массива X. Расположить элементы этого массива в следующем порядке: положительные, равные нулю, отрицательные. Вывести в метки исходный и преобразованный массивы. Часть 2. Двумерные массивы Вариант 1. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Требуется в каждой строке матрицы найти наибольший элемент, записать его в массив В. Вывести в первую метку элементы матрицы А, во вторую – элементы результирующего массива В. Вариант 2. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти наименьший элемент матрицы, а также номер строки и столбца, в которых он расположен. Вывести в первую метку элементы матрицы А, во вторую – найденный элемент, номер строки и столбца. Вариант 3. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Получить матрицу В, поменяв местами в исходной матрице А строки и столбцы. Вывести в первую метку элементы матрицы А, во вторую – элементы матрицы В. Вариант 4. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти наименьший элемент матрицы. Записать нули в строку, в которой находится наименьший элемент. Вывести в метки элементы исходной и преобразованной матриц. Вариант 5. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти количество положительных, отрицательных, нулевых элементов матрицы, вывести эти значения в метку, во вторую метку вывести элементы исходной матрицы. Вариант 6. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Записать на место отрицательных элементов матрицы нули, а на место положительных – единицы. Вывести в метки элементы исходной и преобразованной матриц. Вариант 7. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти в каждой строке матрице наибольший элемент поместить его на место первого элемента строки. Вывести в метки элементы исходной и преобразованной матриц. Вариант 8. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти сумму элементов, стоящих над главной диагональю матрицы. Присвоить это значение элементам, стоящим на главной диагонали матрицы A. Вывести в метки элементы исходной и преобразованной матриц. Вариант 9. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Требуется для каждой строки матрицы найти произведение элементов, записать его в массив В. Вывести в первую метку элементы матрицы А, во вторую – элементы результирующего массива В. Вариант 10. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Поменять местами в матрице А первую и последнюю строки. Вывести в метку элементы исходной и преобразованной матриц. Вариант 11. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Записать в массив В номера строк матрицы А, сумма элементов которых четна. Вывести в первую метку элементы матрицы А, во вторую – элементы массива B. Вариант 12. Расположить на форме командные кнопки «Ввод исходных данных», «Высчитать» и две метки. Щелчок по кнопке вызывает запрос элементов матрицы А(5х5). Найти сумму элементов, стоящих на главной диагонали. Вывести в полученное значение в первую метку, во вторую метку вывести элементы исходной матрицы. Факультет прикладной математики и информатики Кафедра информационного и программно-математического
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-07-16; просмотров: 251; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.147.27.154 (0.009 с.) |