- •Введение. Установка среды программирования
- •2. История языка Basic
- •3. Установка Visual Basic
- •Лабораторная работа №1. Интерфейс Visual Basic. Создание первого проекта
- •Теоретическая часть
- •1 . Первое знакомство
- •5. Стандартная панель инструментов
- •Практическая часть
- •Лабораторная работа №2. Изменение свойств компонентов. Метод Print
- •Теоретическая часть
- •1. Состав панели управления
- •2. Окно свойств и редактора кода
- •3. Свойства элементов управления
- •3.1 Свойства элемента Form
- •3.2 Свойства элемента TextBox
- •3.3. Свойства компонента CommandButton
- •Объект.Print [Список вывода]
- •Объект.Cls Практическая часть
- •Лабораторная работа №3. Работа с простейшим графическим объектом Visual Basic
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №4. Работа с арифметическими выражениями и функциями
- •Теоретическая часть
- •1. Арифметические выражения Visual Basic.
- •2. Встроенные функции Visual Basic
- •3. Функции преобразования
- •Str (число)
- •Val (символьное выражение)
- •Практическая часть
- •Лабораторная работа №5. Решение простейших математических задач с использованием линейных алгоритмов
- •Теоретическая часть
- •1. Типы данных
- •2. Объявление переменных
- •Public / Private / Dim Имя_переменной [As Тип_переменной]
- •Оператор_объявления_типа Строка_интервалов_имен
- •3. Константы Visual Basic
- •4. Область видимости переменной
- •Public / Private / Dim Имя_переменной [As Тип_переменной]
- •Имя_формы.Имя_переменной
- •Практическая часть
- •Лабораторная работа №6. Программирование ветвлений с использованием оператора If
- •Теоретическая часть
- •1. Конструкция If … Then … End If
- •2. Конструкция If … Then … Else … End If
- •3. Конструкция If … Then … Else If… End If
- •Практическая часть
- •Лабораторная работа №7. Программирование ветвлений с использованием оператора Case
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №8. Программирование циклов
- •Теоретическая часть
- •1. Цикл For…Next
- •2. Цикл For Each … Next
- •3. Цикл Do While … Loop
- •4. Цикл Do Until … Loop
- •5. Цикл Do … Loop While
- •6. Цикл Do … Loop Until
- •7. Цикл While … Wend
- •Практическая часть
- •Лабораторная работа №9. Разработка приложений для обработки массивов
- •Теоретическая часть
- •1. Объявление массивов
- •2. Массивы с фиксированной границей и динамические массивы.
- •UBound (имяМассива [, измерение]) Практическая часть
- •Лабораторная работа №10. Разработка приложений с использованием методов рисованИя графических примитивов
- •Теоретическая часть
- •1. Графическая поверхность
- •2. Графические примитивы
- •Практическая часть
- •Лабораторная работа №11. Построение графиков и диаграмм
- •Лабораторная работа №12. Применение пользовательских диалоговых окон
- •Теоретическая часть
- •1. Окно и функция InputBox
- •2. Окно MsgBox
- •MsgBox Текст сообщения [,Константа] [,Заголовок]
- •3. Функция MsgBox()
- •Практическая часть
- •Лабораторная работа №13. Разработка компьютерного теста с использованием Visual Basic
- •Теоретическая часть
- •Лабораторная работа №14. Создание пользовательского меню и панели инструментов
- •Теоретическая часть
- •Call Имя процедуры ([Список Параметров Вызова]),
- •Практическая часть
- •Лабораторная работа №15. Создание текстового редактора
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №16. Разработка мультимедиа-приложений
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №17. Макросы: запись, запуск, чтение
- •Теоретическая часть
- •Обычно макрос содержит следующие элементы.
- •Практическая часть
- •Лабораторная работа №18. Создание форм рабочего листа
- •Теоретическая часть
- •1. Когда необходимо использовать vba в Excel
- •2. Объект Application
- •3. Объект Workbook
- •4. Объект Worksheet
- •5. Объект Range
- •Инициализация и отображение диалогового окна
- •Практическая часть Создание пользовательской формы
- •Создание пользовательской формы
- •Практические задания по программированию на vba
- •Лабораторная работа №19. Создание книги лабораторных работ с автоматизированным выбором страниц книги
- •Практическая часть
- •Лабораторная работа №20. Моделирование процессов
- •Теоретическая часть
- •Лабораторная работа №21. Создание сводных таблиц в vba
- •Теоретическая часть Практическая часть
- •Лабораторная работа №22. Работа с компонентом Chart
- •Теоретическая часть Практическая часть
- •Лабораторная работа №23. Работа с базами данных в Visual Basic
- •Теоретическая часть Практическая часть
- •Лабораторная работа №24. Работа с базами данных в Excel с использованием Visual Basic
- •Теоретическая часть Практическая часть
- •Лабораторная работа №25. Обработка данных на рабочем листе Теоретическая часть Практическая часть
Практическая часть
Задание 1. Задача нахождения максимума из двух чисел.
Постановка задачи
Составить программу, находящую максимальное число из двух чисел введенных пользователем.
Ход работы.
Создайте папку Лабораторная_работа_№6, а в ней папку – 6.1.
Запустите программу Microsoft Visual Basic 6.0.
В появившемся окне выберите тип приложения STANDARD.exe и нажмите кнопку «Открыть».
Разместите на форме 2 компонента CommandButton, 3 компонента Label, 2 компонента TextBox.
Установите свойства компонентов в соответствии с Таблицей 6.1. Примерный внешний вид приложения приведен на Рис.6.1
Таблица 6.1 – Значения свойств компонентов приложения «Максимум»
Компонент |
Свойство |
Значение |
Form1 |
Caption |
Максимальное из двух чисел |
Name |
frmМаксимум |
|
MinButton, MaxButton |
False |
|
Command1 |
Caption |
Выяснить максимум |
Name |
cmdMax |
|
Command2 |
Caption |
Очистить |
Name |
cmdO4istka |
Окончание таблицы 6.1
TextBox1, TextBox2 |
Text |
|
Label1 |
Caption |
Первое число |
Label2 |
Caption |
Второе число |
Label3 |
Caption |
|
Для всех компонентов свойство Font и Color – по своему усмотрению У компонентов CommandButton свойство Style = 1 Graphical |
Откройте окно программного кода (View - Code).
В верхних строках программного кода опишите переменные входных и выходных данных:
Dim a As Single, b As Single
Щелкните два раза по кнопке «Выяснить максимум» и напишите обработчик события Click (необходимые комментарии приведены после апострофов):
Private Sub CmdMax_Click()
a = Val(Text1.Text) 'получение числа a из поля Text1
b = Val(Text2.Text) 'получение числа b из поля Text2
If (a > b) Then 'Задаем условие, которое необходимо проверить
Label3.Caption = Str(a) + " больше " + Str(b)'действия, если условие верно
Else
Label3.Caption = Str(b) + " больше " + Str(a)'действия, если условие неверно
End If
End Sub
Напишите обработчик события Click для кнопки «Очистить», применив навыки, полученные при выполнении предыдущих лабораторных работ
Сохраните проект (выбрав File – Save frmМаксимум.frm и Save Максимум.vbp) в папке 6.1.
Проверьте работоспособность проекта, запустив его на выполнение.
Создайте exe-файл программы с помощью команды File → Make Максимум.exe.
Выйдите из среды Visual Basic.
Запустите на выполнение файл Максимум.exe и убедитесь, что проект работает автономно, как любые другие Windows-приложения.
Задание 2. Программа вычисления значения функции.
Постановка задачи
Составить программу, которая вычисляет значение функции в зависимости от введенного пользователем значения аргумента X по формуле:
Программа также должна иметь кнопку для очистки полей ввода и вывода данных
Ход работы.
Создайте папку Лабораторная_работа_№6, а в ней папку – 6.2.
Запустите программу Microsoft Visual Basic 6.0.
В появившемся окне выберите тип приложения STANDARD.exe и нажмите кнопку «Открыть».
Р азместите на форме 2 компонента CommandButton, 3 компонента Label, 1 компонент TextBox, 1 компонент Image, в котором будет находиться изображение формулы функции.
Установите свойства компонентов в соответствии с Таблицей 6.2. Примерный внешний вид приложения приведен на Рис.6.2
Таблица 6.2 – Значения свойств компонентов приложения «Значение функции»
Компонент |
Свойство |
Значение |
Form1 |
Caption |
Значение функции |
Name |
frmФункция |
|
MinButton, MaxButton |
False |
|
Command1 |
Caption |
Вычислить значение функции |
Name |
cmdY |
|
Label1 |
Caption |
Введите значение аргумента X: |
Label2 |
Caption |
Значение функции равно: |
Label3 |
Caption |
|
Command2 |
Caption |
Очистить |
Name |
cmdO4istka |
|
TextBox1 |
Text |
|
Image1 |
Picture |
Загрузите изображение с формулой функции |
Для всех компонентов свойство Font и Color – по своему усмотрению У компонентов CommandButton свойство Style = 1 Graphical |
Откройте окно программного кода (View - Code).
В верхних строках программного кода опишите переменные входных и выходных данных:
Dim x As Single, y As Single
Щелкните два раза по кнопке «Вычислить значение функции» и напишите обработчик события Click (необходимые комментарии приведены после апострофов):
Private Sub CmdY_Click()
x = Val(Text1.Text) 'получение числа X из поля Text1
If (x > 0) Then 'Задаем условие, которое необходимо проверить
y = 2 / x 'действия, если x>0
Else
If (x = 0) Then 'действия, если x=0
y = sin(x)
Else
y = 2 – (x^2)+(3^x)
End If
End If
Label3.Caption = Str(y) 'показываем ответ
End Sub
Напишите обработчик события Click для кнопки «Очистить», применив навыки, полученные при выполнении предыдущих лабораторных работ
Сохраните проект (выбрав File – Save frmФункция.frm и Save Функция.vbp) в папке 6.2.
Проверьте работоспособность проекта, запустив его на выполнение.
Создайте exe-файл программы с помощью команды File → Make Функция.exe.
Выйдите из среды Visual Basic.
Запустите на выполнение файл Функция.exe и убедитесь, что проект работает автономно, как любые другие Windows-приложения.
Подведем итоги
В работе были использованы новые
операторы:
If…Then…Else – условный оператор, позволяющий составить программу, работающую в зависимости от выполнения или невыполнения условия
Задания для самостоятельного выполнения
1. Составьте конспект по теоретической части лабораторной работы. Выполненное задание покажите преподавателю.
2. Написать программу, которая вычисляет частное от деления двух чисел. Программу должна проверять правильность введенных пользователем данных и, если они неверные (делитель равен нулю), выдавать сообщение об ошибке.
3. Написать программу вычисления стоимости покупки с учетом скидки. Скидка в 10% предоставляется, если сумма покупки больше 1000 руб.
4. Написать программу вычисления стоимости покупки с учетом скидки. Скидка в 3% предоставляется в том случае, если сумма покупки больше 500 руб., в 5% - если сумма покупки больше 1000 руб.
5. Написать программу проверки знания даты основания Санкт-Петербурга (1703 г.). В случае неверного ответа пользователя программа должна выводить правильный ответ.
6. Написать программу проверки знания даты начала Второй мировой войны (1939 г.). В случае неверного ответа пользователя программа должна выводить правильный ответ.
7. Написать программу проверки знания истории архитектуры. Программа должна вывести вопрос и три варианта ответа. Пользователь должен выбрать правильный ответ и ввести его номер.
8. Написать программу, которая выводит пример на умножение двух однозначных чисел, запрашивает ответ пользователя, проверяет его и выводит сообщение «Правильно!» или «Вы ошиблись» и правильный результат.
9. Написать программу, которая проверяет, делится ли на три целое число, введенное с клавиатуры.
10. Написать программу определения стоимости разговора по телефону с учетом скидки 20%, предоставляемой по субботам и воскресеньям.
11. Написать программу, которая вычисляет оптимальный вес пользователя, сравнивает его с реальным и выдает рекомендацию о необходимости поправиться или похудеть. Оптимальный вес вычисляется по формуле: рост (в сантиметрах) - 100.
12. Написать программу, которая проверяет, не приведет ли суммирование двух заданных чисел к переполнению (т.е. их сумма более 32767).
13. Даны три действительные числа. Возвести в квадрат те из них, значения которых неотрицательны, и в четвертую степень — отрицательные.
14. Даны целые числа a, b. Если числа не равны, то заменить каждое из них одним и тем же числом, равным большему из исходных, а если равны, то заменить числа нулями.
15. Определить, равен ли квадрат заданного трехзначного числа кубу суммы цифр этого числа.
16. Определить, является ли целое число N четным двузначным числом.
17. Подсчитать количество отрицательных чисел среди чисел а, b, c.
18. Услуги телефонной сети оплачиваются по следующему правилу: за разговоры до А минут в месяц оплачиваются В р., а разговоры сверх установленной нормы оплачиваются из расчета С р. в минуту. Написать программу, вычисляющую плату за пользование телефоном для введенного времени разговоров за месяц.
19. Программа-льстец. На экране появляется вопрос «Кто ты: мальчик или девочка? Введи Д или М». В зависимости от ответа на экране должен появиться текст «Мне нравятся девочки!» или «Мне нравятся мальчики!».
20. Составить программу, определяющую результат гадания на ромашке — «любит — не любит», взяв за исходное данное количество лепестков n.
21. Определить, является ли шестизначный номер билета счастливым: счастливым считается билет, у которого сумма первых трех цифр равна сумме последних трех цифр.
22. Дано двузначное число. Написать программу, определяющую, превышает ли сумма его цифр число, которое вводится с клавиатуры.
23. Проверить, делится ли введенное трехзначное число нацело на сумму цифр, составляющих это число.
24. Написать программу для вычисления функции:
25. Написать программу, запрашивающую у пользователя три разных целых положительных числа и находящую сумму двух наименьших из них.
Вопросы для контроля
1. Перечислите варианты структуры условного алгоритма If…Then…Else. В каких случаях они применяются?
2. Какие логические связки можно применить для объединения двух и более условий?
3. Какого типа должно быть выражениями между ключевыми словами If и Then?