Основы визуального программирования

  • Вид работы:
    Методичка
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    1,62 Мб
  • Опубликовано:
    2014-10-10
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Основы визуального программирования














МЕТОДИЧЕСКИЕ УКАЗАНИЯ

Основы визуального программирования

1. Начальные сведения

.1 Назначение и применение ЭВМ

ЭВМ предназначена для автоматической обработки цифровой, алфавитно-цифровой информации. Можно условно выделить три крупные области применения ЭВМ:

. Информационные системы и средства коммуникации - поиск, обработка, хранение, передача информации, создание банка данных, расширение доступа к образованию, облегчению быта и т.д.

. Автоматизация и управление различными видами работ человека - автоматизированные системы научных исследований (АСНИ), система автоматизации проектных работ (САПР), автоматизированные системы управления производством (АСУП), гибкие автоматизированные производства (ГАП) и др.

. Математическое моделирование объектов и процессов разнообразной природы, вычислительный эксперимент.

1.2 Этапы решения задач на ЭВМ

Основными этапами решения задач с применением ЭВМ являются:

. Постановка задачи и ее математическое описание.

. Выбор численных методов решения (построение методики решения).

. Алгоритмизация.

. Программирование.

. Отладка программы.

. Непосредственное решение задачи на ЭВМ.

. Обработка результатов расчета и их применение.

Разработка алгоритма - необходимый этап в процессе решения задачи на ЭВМ. Алгоритм - конечная последовательность точно определенных действий, приводящих к решению поставленной задачи.

Алгоритмы представляются в виде блок - схемы и в виде операторной записи при помощи символов - операторов или в виде перечисления этапов решения обычным текстом.

Блок - схема - графическое изображение алгоритма в виде последовательности блоков с помощью геометрических фигур.

2. Описание языка Visual Basic

.1 Общая характеристика алгоритмического языка Visual Basic

Разработка приложения VISUAL BASIC состоит из следующих шагов:

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

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

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

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

Код программы на VISUAL BASICе состоит из последовательности команд, которые называются операторами. Оператор - это синтаксическая единица языка программирования, которая определяет некоторое действие. Обычно оператор располагается на одной строке, но его можно продолжить на другой строке с помощью символа продолжения строки - знак «_» (подчеркивание). На одной строке можно записывать несколько операторов, разделяя их знаком «:» (двоеточие).

2.2 Символы языка VISUAL BASIC

Алфавит VISUAL BASIC включает:

) двадцать шесть латинских букв: А, В, С, D, Е, F, G, H, I, J, К, L, М, N, О, Р, Q, R, S, Т, U, V, W, X, Y, Z;

) десять арабских цифр: 1, 2, 3, 4, 5, 6, 7, 8, 9, 0;

) знаки: «. «точка, «, «запятая, «: «двоеточие, «; «точка с запятой,

«» «кавычки, «» «апостроф;

) знаки арифметических операций: «+ «сложение, «- «вычитание,

«* «умножение, «/ «деление, «^ «возведение в степень;

) круглые скобки: «(» открывающая скобка, «) «закрывающая скобка;

) «└┘» пробел;

) знаки операций отношения: «< «меньше, «> «больше, «>= «больше или равно, «< > «или «> < «не равно, «<=» меньше или равно, «= «равно;

) знаки: «$ «знак доллара, «& «коммерческое «и «, «@ «коммерческое «эт «, «\ «косая черта слева направо, «% «процент, «# «номер, «? «вопросительный знак, «! «восклицательный знак;

) буквы русского алфавита «А, Б, В,…., Я «.

2.3 Простейшие конструкции языка VISUAL BASIC

Числа. Для отделения целой части числа от дробной части используется точка (см. табл. 2.1).

Таблица 2.1. Примеры записи чисел на VISUAL BASICе

Число

Запись на VISUAL BASICе

Тип

3,46

3.46

Фиксированная запятая

0,0058

58Е-4

Плавающая запятая

150000

15Е 4

Плавающая запятая

75

75%

Целый


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

При присвоении идентификатора в VISUAL BASICе следует придерживаться следующих правил:

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

Например, A, A2, C. В качестве букв используются буквы латинского алфавита.

. Имя не может содержать пробел, точку, восклицательный знак, а также символы @, &, $, #.

. Имена не должны содержать более 255 символов.

. Не следует использовать имена, совпадающие с названиями функций, инструкций и методов языка VISUAL BASIC.

. Нельзя использовать одни и те же имена переменных, отличающихся только типом.

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

Константа - данное, значение, которого однозначно определяется написанием и не может быть изменено.

Переменная - параметр, значение которого в процессе выполнения программы принимать различные значения.

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

Объявление данных. Каждую величину необходимо объявить в начале программы: указать ее тип. В VISUAL BASICе используется 14 стандартных типов данных (8 из них приведены в табл. 2.2).

Таблица 2.2. Тип данных

Название

Тип

Интервал

Boolean

Логические данные

True / False

Byte

Целые положительные числа

0÷255

Date

Дата

1.01.00÷31.12.9999

Integer

Целые числовые значения

-32768÷32767

Long

«Длинные» целые числа

-2147483648÷2147483648

Single

Числовые значения с плавающей точкой

3,402823E+32÷1,401298E-45 Для положительных и отрицательных значений

String

Символьные (строковые) данные

Длина строки 1÷64 кб

Variant

Для хранения любых данных



При первом использовании переменной VISUAL BASIC временно присваивает переменной тип Variant и пустое значение.

Оператор Dim служит для объявления типов переменных. Синтаксис конструкции Dim следующий:

Dim «Имя переменной 1» [индексы] [As «тип»] «Имя

переменной 2» [индексы] [As «тип»]…

Пример:

Dim Y As Integer, X As Single

Данные, объявленные в Dim, доступны только на уровне модуля формы или той процедуры, где были объявлены. Для определения области видимости данных используются также Public и Private. Синтаксис Public и Private аналогичен синтаксису Dim.

Public - глобальная (открытая переменная,

данные доступны всему приложению.

Private - данные доступны на уровне модуля формы.

Стандартные функции. Стандартные функции (см. табл. 2.3, 2.4) имеют аргумент, заключенный в круглые скобки. В качестве аргумента можно употреблять любое арифметическое выражение. Аргумент тригонометрической функции задается в радианах. Для перевода значения, заданного в градусах, в радианы можно использовать формулу:

<значение в радианах> = <значение в градусах> * р/180.

Для арктангенса значение угла находится в интервале (-р/2; р/2).

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

arcsin(x)=arctg (x/),(x)=arctg()/x),(x)=arctg (1/x).

Таблица 2.3. Стандартные функции

Название функции

Математическое определение

Запись на VISUAL BASICе

1

Синус

sin x

SIN(X)

2

Косинус

cos x

COS(X)

3

Тангенс

tg x

TAN(X)

4

Арктангенс

arctg x

ATN(X)

5                возвращает константу e (экспоненту e≈2.718282), возведенную в степень x e(X)



 

6

Натуральный логарифм

ln x

LOG(X)

7

Десятичный логарифм

lg x

LOG(X)/LOG(10)

8

Знак сигнатуры

SGN(X)


9

Абсолютная величина

|x|

ABS(X)

10

Квадратный корень

SQR(X)


11

Возвращает целую часть x, отбрасывает любую дробную часть; если x является отрицательным числом, то возвращает ближайшее отрицательное целое, большее, чем или равное


FIX(X)

12

Возвращает целую часть x, отбрасывает дробную часть; если x является отрицательным числом, то возвращает ближайшее отрицательное целое, меньшее, чем или равное

[x]

INT(X)

13

Случайное число в интервале [0,1]


RND

14

Случайное число в интервале [0, n], n-целое


RND(n)

15

Округляет x с точностью до a знаков


ROUND (x, a)

16

Число р

р

4*ATN(1)


Таблица 2.4. Стандартные функции для работы со строками

Функция (аргумент)

Возвращает / действие

CInt(строка)

Преобразование строкового типа в числовые данные целого типа

CStr(число)

Преобразование числового выражения в строковый тип

InStr (S1, S2)

Является ли данная строка S2 частью другой строки S1, выдает номер позиции, с которой начинается подстрока. Если подстрока не найдена, InStr возвращает нулевое значение (False)

Mid (строка, N[, L])

Замещает в строке с определенного N-символа L символов из другой строки

Left (строка, № до позиции)

Возвращает определенное число символов с начала строки

Right (строка, № с позиции)

Возвращает определенное число символов с конца строки

Len(строка)

Длина текущей строки

Trim(строка)

Уничтожает пробелы в начале и конце строки

Space (число пробелов)

Строка, состоящая из одних пробелов, число символов в строке определяется параметром в скобках

Str(число)

Преобразование числового выражения в строку

Val(строка)

Преобразование строки в вещественное число


2.4 Выражения

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

Выражение можно определить:

Операнд [знак операции операнд} [знак операции операнд]…

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

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

Таблица 2.5. Арифметические операции

Операция

Описание

+

Сложение

-

Вычитание

*

Умножение

/

Деление

\

Деление для целых чисел

Mod

Остаток от деления двух целых чисел

^ или □

Возведение в степень

&

Конкатенация (объединение) двух строк


Если в арифметическом выражении имеется несколько различных арифметических операций, то порядок их выполнения задается правилами приоритета (см. табл. 2.6)

Таблица 2.6. Порядок выполнения операций

Операция

Приоритет

Тип действий

()

1

Вычисление в круглых скобках

Функция

2

Вычитание значения функции

Унарный + Унарный -

3

Унарные операции

*, /, \, mod

4

Операции умножения

+, -

5

Операции сложения

=, <>, <=, >=, <, >

6

Операции отношения


Примеры записи арифметических выражений:

cosx COS (X^3)^2

 X^(4/3)

 (m^3+EXP (2*COS(X)))/(X^2-n*Y^3)^(1/3)

Логическое выражение. Логические выражения используются в математической логике и их также называют Булевыми выражениями, по имени математика Дж. Буля. Используются следующие знаки логических операций:

Not - логическое отрицание НЕ;

- And - логическое умножение И;

Or - логическое сложение ИЛИ;

Xor - исключительное ИЛИ;

Eqv - логическая эквивалентность;

Imp - логическая импликация.

Возможна одновременная проверка нескольких условий, соединенных словами: AND, OR и XOR (см. табл. 2.7).

Таблица 2.7. Логические операции (тип Boolean)

Операция

Описание

a AND b

a и b. Условие выполнено, если выполняются все проверяемые условия одновременно

a OR b

a или b. Условие считается выполненным, если выполняется хотя бы одно из проверяемых условий

NOT a

Не a

a XOR b

Если оба условия имеют одинаковое значение, то результат False. Если только одно из связываемых условий True, то результат True


Логические операции объединяют логические величины, которые могут принимать два значения: True (Истина) или False (Ложь). Результат логической операции также принимает одно из двух значений: True (Истина) или False (Ложь).

Операндами логического выражения являются:

логические константы;

логические переменные;

обращения к функциям, возвращающим логические значения;

выражения отношения;

заключенные в скобки логические выражения.

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

> - больше;

< - меньше;

>= - больше или равно;

<= - меньше или равно;

= - равно;

<> - не равно.

Символьное выражение. Определена одна операция с символьными данными - конкатенация (сцепление), позволяющая объединять несколько строк в одну. Знак операции - «+» или «&».

Операндами символьного выражения могут быть:

символьная константа;

символьная переменная:

элемент символьного массива (string);

обращение к процедуре-функции, возвращающей символьное значение;

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

Пример:

NameS = «Иван»= «Иванов»+ SurNameS дает результат «ИванИванов» Следует обратить внимание, что необходимые пробелы нужно расставлять самостоятельно.

2.5 Структура программы на языке VISUAL BASIC

Программы линейной структуры на языке VISUAL BASIC

Линейная программа должна состоять из следующих операторов (см. рис. 2.1): ввода данных, присваивания, вывода (печать) результатов расчета. Линейный вычислительный процесс сводится к последовательным вычислениям арифметических выражений, причем последовательность вычислений полностью соответствует порядку записи математических зависимостей в постановке задачи.

Оператор-комментарий. Для пояснений отдельных конструкций в программном коде используются комментарии. Строки комментария начинаются со слова REM (REMARK) или со знака «’» (апостроф). Комментарии можно вставлять в любом месте процедуры. При выполнении приложения комментарий выделяется зеленым цветом.

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

«Идентификатор» = «выражение»

Пример:

R=20.52: X1=A+SIN (X^2-A)/(A+B)

Или

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

Пример:

Shape1. Shape = Circle (В элементе Shape1 реализован круг).

Form1. Caption = «Пример» (В заголовке формы появится слово «Пример»).

Form 1. BackColor = vbRed (Цвет фона формы - красный).

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

InputBox («Сообщение» [, «Заголовок»] [, «По умолчанию»])

Сообщение - текстовая строка или строковая переменная (не более 1024 символа). Заголовок - это заголовок выводимого окна; если параметр отсутствует, то используется имя приложения. По умолчанию - строковое выражение, которое предлагается ввести пользователю.

Пример:

A = InputBox («Введите значение А»)

Возвращаемое InputBox значение имеет тип String. Поэтому необходимо предварительно преобразовать получаемое значение в числовой вид с помощью функции Val.

A= Val (InputBox («Введите значение А»))

Для ввода данных можно использовать также такие элементы управления, как метка Label и текстовое окно TextBox.

Текстовое окно Textbox позволяет вводить и выводить данные на форму. Его можно использовать как в обычном (однострочном) режиме, так и в многострочном. В процессе выполнения приложения текст, вводимый пользователем, хранится в свойстве Text. Возвращаемое в программу значение имеет тип String. Поэтому необходимо предварительно преобразовать получаемое значение в числовой вид с помощью функции Val:

A = Val (Text1. Text)

Свойство Text можно устанавливать и в процессе проектирования в окне Properties. Аналогичным образом для ввода данных можно использовать метку Label. В отличие от текстового окна для ввода используется свойство Caption.

Вывод данных. Для вывода данных можно использовать функцию вывода Msgbox, которая при выполнении активизирует свое стандартное диалоговое окно сообщений на экране. Функция позволяет выводить как числовые, так и текстовые сообщения на экран. Окно может иметь кнопки OK, Cancel, Yes, No. Синтаксис записи функции для создания стандартного окна вывода следующий:

Msgbox «Сообщение» [, Атрибуты] [, Заголовок]

Сообщение - это текст, который записывается в «кавычках» - «Сообщение». Атрибуты задаются числовыми константами либо системными константами, либо их не задают вовсе - определяет количество выводимых кнопок, стиль используемого стандартного значка. Заголовок - это заголовок выводимого окна; если параметр отсутствует, то используется имя приложения.

Пример:

Msgbox «Деление на ноль», 0, «Пример использования Msgbox»

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

Таблица 2.8. Стандартные значения атрибутов для Msgbox

Константа

Значение

Описание

VbOkOnly

0

Наличие кнопки OK

VbOkCancel

1

Наличие кнопок OK и Cancel

VbYesNoCancel

3

Наличие кнопок Yes, No и Cancel

VbYesNo

4

Наличие кнопок Yes и No

VbCritical

16

Значок критического сообщения

VbQuestion

32

Значок - Вопрос с предупреждением

VbExclamation

48

Значок - Предупреждение

VbInformation

64

Значок - Информационное сообщение

 

«Имя объекта». Print «Список вывода»

Этот метод действует на объект, на который будут выводиться значения. По умолчанию метод Print выводит указанный в нем список вывода значений на активную форму. Если в списке есть запятые, то значения переменных будут выводиться на форму по зонам, по 14 позиций в каждой зоне. Если в списке используется знак «;», то данные выводятся через один пробел:

Print «x =»; x; «y =»; y

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

Если список вывода заканчивается знаком «;», то строка вывода, записанная в следующем операторе Print будет, присоединена к первой в месте вывода. Причем операторы Print могут располагаться в разных частях программного кода.

Пример:

Print «x =»; x;«y =»; y

Если список вывода отсутствует, то образуется пустая строка. Если в программе несколько таких «пустых» операторов вывода, то соответственно столько же будет пустых строк на объекте вывода данных.

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

«Имя объекта». Font. «свойство» = «значение»

Пример:

Text1. Font. Name = «Arial». Font. Size = 20. Font. Bold =True

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

Для задания формата выводимого значения переменной используется функция Format, которая имеет два аргумента:

имя переменной, выводимое значение которой форматируется;

тип формата для выводимого значения.

Пример:

Print Format (Z, «###.##»)

Символ «#» используется для задания количества цифр в выводимом числе, для целой части и после точки для дробной части числа. Если значение переменной необходимо вывести на другую форму, надо явно указать объект, на который действует метод Print.

Пример:

Forma5. Print A1, C2, R. Print Y. Picture3. Print х1, х2

Для вывода определенного числового значения в заданном формате синтаксис записи метода будет следующим:

Format («числовое выражение», «строка формата»)

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

Пример:

Me. Print Format (7841.12340234, «####.###»)

дает результат 7841.123. Незначащие нули в начале и конце числа игнорируются. Для вывода незначащих нулей используется формат «000.00».Если необходимо вывести символы «-», «+», «$», «(», «)» или пробел, то их размещают непосредственно в формате.

Оператор END. Оператор END указывает на физический конец программы. При выполнении оператора END закрываются все открытые файлы и останавливается выполнение программы.

Пример 1, Вычислить значение функции

,

где , , m - номер варианта, n - последнее значение номера группы.

Решение. Работа выполняется в следующей последовательности:

1. Запустить VISUAL BASIC. В окне New Project выбрать Стандартный.EXE вкладки New (новый) и кликнуть по кнопке «Открыть».

. На экране появится новый проект и форма Project1 - Form1 (Form), содержание которой нужно заполнить необходимыми компонентами, с помощью которых можно будет выполнить необходимые вычисления.

. Во-первых, необходимы элементы, которые будут использоваться для ввода данных m и n. Используем для этой цели элементы Text1 и Text2. Во-вторых, необходимы элементы, в которых будут отражены результаты вычисления x, t и y. Используем для этой цели элементы Text3, Text4 и Text5.

. Для оформления надписей для обозначения текстовых окон Text1, Text2, Text3, Text4 и Text5 можно использовать метки Label1, Label2, Label3, Label4 и Label5 соответственно.

. Для выполнения функций вычисления необходима одна кнопка Command1. Это будет «Старт». Вторая кнопка Command2 выполняет функцию завершения работы приложения - кнопка «Финиш».

. Теперь следует все указанные выше компоненты вынести на форму. Для этого на панели стандартных элементов находим значок одного из компонент, активизируем его и «переносим» на форму: рисуем условный прямоугольник в том месте формы, где будет предположительно находиться этот элемент, учитывая при этом его размеры.

. Аналогичные действия выполняем поочередно для каждого элемента, пока на форме не появятся все 12 элементов.

. Далее изменяем свойства объектов, используя страницу свойств Properties. Для изменения свойств элементов следует активизировать элемент - выделить его на форме. Далее для выделенного элемента в окне свойств можно вносить изменения: для Command1 изменить свойство Caption = ‘Старт», для Command2 - свойство Caption = ‘Финиш». Для остальных элементов задать значения свойств:

Text1. Text = ‘‘

Text2. Text = ‘‘

Text3. Text = ‘‘. Text = ‘‘. Text = ‘‘. Caption = ‘Введите значение m‘. Caption = ‘Введите значение n

Label3. Caption = ‘Вывод значения x

Label4. Caption = ‘Вывод значения t

Label5. Caption = ‘Вывод значения y

Заготовку формы для примера 1 с измененными свойствами смотрите на рис. 2.1.

Рис. 2.1. Заготовка формы для примера 1 с измененными свойствами.

. Для создания программного кода в проводнике проекта или в меню View выбрать команду Code.

В окне Project1 - Form1 (Code) выбрать в списке General название кнопки 1 и кликнуть по ней. В результате появится заготовка записи программного кода для Command1 с инициированием для нее события Click. Значения m, n пользователь должен ввести в окна Text1, Text2. Но в текстовом окне данные получаются также текстовые, типа Single. Поэтому используем функцию Val() для перевода в числовой тип Single, который объявлен для переменных m, n в начале программы в операторе Dim. Для вывода значений x, t, y используется функция Round(), которая округляет количество знаков после запятой до трех.

. Аналогичные действия выполняем в отношении кнопки 2. Для Command2 будет выполняться одно действие - закрыть приложение. Это выполняет команда End.

. Программный код для примера 1 (см. блок - схему линейного вычислительного процесса на рис. 2.2.) будет иметь вид:

Private Sub Command1_Click()

Rem Лабораторная работа 1-1, вариант 15

Dim m, n, x, t, y As Single=Val (Text1. Text)=Val (Text2. Text)=EXP (-SQR (N/M))t=LOG (M/SQR(N))+7.21y=(COS (x^2-SQR(t))+SIN (x-t^(1/3)))/(SIN (t-x^(1/4))^2+1.731)Text3. Text = Round (x, 3). Text = Round (t, 3). Text = Round (y, 3)SubSub Command2_Click() Sub

. Для сохранения проекта надо выполнить команду меню File (файл) → Save Project As (Сохранить проект как). В диалоговом окне Save File As (Сохранить файл как) выбрать название диска, на котором должна быть создана папка для хранения файлов нового проекта. Далее для сохранения формы, следует набрать имя файла в поле ввода File Name (Имя файла), например Primer1-1, и нажать клавишу «Enter». Форма Form1 будет сохранена в файле с расширением Primer1-1.frm.

13. После сохранения формы следует сохранить проект. В VISUAL BASIC это происходит автоматически, после чего должно появиться диалоговое окно Save Project As - Сохранить проект. Следует набрать то же имя Primer1-1 и нажать клавишу «Enter». Файл проекта будет сохранен с расширением Primer1-1.vbp.

. Теперь запустить проект на выполнение. Выбираем команду RunStart или Shift+F5. В поле Text1 нужно ввести значение m, в поле Text2 - значение m - после чего нажать кнопку «Старт». В окнах Text3, Text4 и Text5 появились значения x, t, y. Для завершения работы приложения следует нажать кнопку «Финиш».

Процедуры пользователя. Различают два типа пользовательских процедур:

1)  процедуры типа функция (Function);

2)       процедуры типа подпрограммы (Sub).

Синтаксис записи для Function следующий:

Function <Имя функции> (<Аргумент1> As <тип> (,<Аргумент2> As <тип>, …)] As <тип>

где <Аргумент1>, <Аргумент2> и т.д. - формальные параметры процедуры.

Пример 2. Вычислить значение функции

,

где , m - номер варианта, n - последнее значение номера группы.

Решение. Работа выполняется в следующей последовательности:

. Запустить VISUAL BASIC. В окне New Project выбрать Стандартный.EXE вкладки New (новый) и кликнуть по кнопке «Открыть».

. На экране появится новый проект и форма Project1 - Form1 (Form), содержание которой нужно заполнить необходимыми компонентами, с помощью которых можно будет выполнить необходимые вычисления.

. Во-первых, необходимы элементы, которые будут использоваться для ввода данных m и n. Используем для этой цели элементы Text1 и Text2. Во-вторых, необходимы элементы, в которых будут отражены результаты вычисления z. Используем для этой цели элементы Text3.

. Для оформления надписей для обозначения текстовых окон Text1, Text2 и Text3 можно использовать метки Label1, Label2 и Label3 соответственно.

. Чтобы процедура пользователя была доступна на всех формах приложения, ее текст следует записать в специальном окне Module - модуль приложения. Программный код такой программы будет храниться в файлах приложения с расширением *.bas.

Function fnf (x As Single, y As Single) As Single= Cos (x ^ 2 + y ^ 2)Function

6. Для выполнения функций вычисления необходима одна кнопка Command1. Это будет «Старт». Вторая кнопка Command2 выполняет функцию завершения работы приложения - кнопка «Финиш».

. Теперь следует все указанные выше компоненты вынести на форму. Для этого на панели стандартных элементов находим значок одного из компонент, активизируем его и «переносим» на форму: рисуем условный прямоугольник в том месте формы, где будет предположительно находиться этот элемент, учитывая при этом его размеры.

. Аналогичные действия выполняем поочередно для каждого элемента, пока на форме не появятся все 8 элементов.

. Далее изменяем свойства объектов, используя страницу свойств Properties. Для изменения свойств элементов следует активизировать элемент - выделить его на форме. Далее для выделенного элемента в окне свойств можно вносить изменения: для Command1 изменить свойство Caption = ‘Старт», для Command2 - свойство Caption = ‘Финиш». Для остальных элементов задать значения свойств:

Text1. Text = ‘‘

Text2. Text = ‘‘

Text3. Text = ‘‘. Caption = ‘Введите значение m‘2. Caption = ‘Введите значение n

Label3. Caption = ‘Вывод значения z

Заготовку формы для примера 2 с измененными свойствами смотрите на рис. 2.3.

. Для создания программного кода в проводнике проекта или в меню View выбрать команду Code.

В окне Project1 - Form1 (Code) выбрать в списке General название кнопки 1 и кликнуть по ней. В результате появится заготовка записи программного кода для Command1 с инициированием для нее события Click. Значения m, n пользователь должен ввести в окна Text1, Text2. Но в текстовом окне данные получаются также текстовые, типа Single. Поэтому используем функцию Val() для перевода в числовой тип Single, который объявлен для переменных m, n в начале программы в операторе Dim. Для вывода значения z используется функция Round(), которая округляет количество знаков после запятой до трех.

. Аналогичные действия выполняем в отношении кнопки 2. Для Command2 будет выполняться одно действие - закрыть приложение. Это выполняет команда End.

Рис. 2.2. Заготовка формы для примера 2 с измененными свойствами

. Программный код для примера 2 будет иметь вид:

Private Sub Command1_Click()

Rem Лабораторная работа 1-2, вариант 15

Dim m, n, z As Single= Val (Text1. Text)= Val (Text3. Text)= (fnf (m / n, -2 * n) + fnf (3 * (m + n), -5.5 * m)) / 2. Text = Round (z, 3)SubSub Command2_Click()Sub

. Для сохранения проекта надо выполнить команду меню File (файл) → Save Project As (Сохранить проект как). В диалоговом окне Save File As (Сохранить файл как) выбрать название диска, на котором должна быть создана папка для хранения файлов нового проекта. Далее для сохранения формы, следует набрать имя файла в поле ввода File Name (Имя файла), например Primer1-2, и нажать клавишу «Enter». Форма Form1 будет сохранена в файле с расширением Primer1-2.frm.

. После сохранения формы следует сохранить проект. В VISUAL BASIC это происходит автоматически, после чего должно появиться диалоговое окно Save Project As - Сохранить проект. Следует набрать то же имя Primer1-2 и нажать клавишу «Enter». Файл проекта будет сохранен с расширением Primer1-2.vbp.

. Теперь запустить проект на выполнение. Выбираем команду RunStart или Shift+F5. В поле Text1 нужно ввести значение m, в поле Text2 - значение n - после чего нажать кнопку «Старт». В окнах Text3 появилось значение z. Для завершения работы приложения следует нажать кнопку «Финиш».

Программы разветвляющейся структуры на языке VISUAL BASIC

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

Оператор условного перевода. Использование условных операторов и операторов цикла, называемых также управляющими структурами, позволяет написать программу, которая будет «принимать решения» из альтернативно возможных вариантов и повторять операции.

Условные операторы проверяют, имеет ли условие значение True или False, и в зависимости от результата указывают один или несколько вариантов возможных решений. Обычно условие является выражением, которое использует оператор сравнения для сравнения одного значения переменной с другим.

Оператор условного перехода выполняет определенные действия в зависимости от значения условия. Синтаксис оператора условного перехода следующий:

Короткая форма

If «условие» Then «оператор»

Или

If «условие» Then

«оператор»

End If

Дословно: «Если условие истинно, то выполнить «оператор».

Пример:

If (N>=10) and (M<=20) Then Print «Интервал»

Полная форма

If «условие» Then

«оператор 1»

Else «оператор 2»If

Дословно: «Если условие истинно, то выполнить «оператор 1», иначе выполнять «оператор 2»».

Пример:

If d > 0 Then x = а + bPrint «Решения нет»If

Если при проверке условия должны выполняться сразу несколько операторов, то условный оператор записывается в блочной форме:

If «условие» Then

«оператор 1»

«оператор 2»

…….If

Или

If <условие> Then

«Группа операторов 1»

«Группа операторов 2»If

Допускаются многократно вложенные конструкции If then Else, имеющие столько уровней вложения, сколько необходимо. Однако вместо многократно вложенных конструкций If then Else в некоторых случаях удобнее использовать оператор выбора.

Оператор выбора. Если имеется несколько операторов, которые необходимо исполнить в случае истинности некоторого условия, то конструкция If then Else может быть очень громоздкой. Оператор выбора Select Case предназначается альтернативой условному оператору и позволяет выполнить несколько вариантов выбора, в этом случае оператор Select Case оценивает выражение только один раз - в начале управляющей структуры - и выполняет выбор ветви из набора условий. Синтаксис оператора выбора следующий:

Select Case «Переменная или выражение»

Case «A

«операторы 1»

Case «A

«операторы 2»

…….

Case «An»

«операторы n»

Case Else

«операторы»

End Select

Управление переходит к той строке, для которой значение Аi совпадает со значением «переменной или выражения». Если «переменная или выражение» содержит значение А1, расположенное по порядку после первого ключевого слова Case, то в этом случаи выполняются «операторы 1». Если «переменная или выражение» не равно ни одному из значений А1, А2,…, Аn, то выполняется «иначе». Если при нескольких значениях Аi необходимо выполнить один (одни) и тот же оператор, то список должен быть записан через запятую.

Пример:

Case «A2, A2, A2,»

«операторы

Пример:

Select Case B122=y +21, 3, 5=1012=12Select

Пример:

Select Case Mes12, 1, 2. Text = ‘зима’3, 4, 5. Text = ‘весна’6, 7, 8. Text = ‘лето’9, 10, 11. Text = ‘осень’Else. Caption = ‘номер задан неверно’Select

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

Пример 3. Вычислить


где .

Решение. Работа выполняется в следующей последовательности:

1. Запустить VISUAL BASIC. В окне New Project выбрать Стандартный.EXE вкладки New (новый) и кликнуть по кнопке «Открыть».

. На экране появится новый проект и форма Project1 - Form1 (Form), содержание которой нужно заполнить необходимыми компонентами, с помощью которых можно будет выполнить необходимые вычисления.

. Во-первых, необходимы элементы, которые будут использоваться для ввода данных m и n. Используем для этой цели элементы Text1 и Text2. Во-вторых, необходимы элементы, в которых будут отражены результаты вычисления x, y. Используем для этой цели элементы Text3, Text4.

. Для оформления надписей для обозначения текстовых окон Text1, Text2 и Text3 можно использовать метки Label1, Label2, Label3 и Label4 соответственно.

. Для выполнения функций вычисления необходима одна кнопка Command1. Это будет «Старт». Вторая кнопка Command2 выполняет функцию завершения работы приложения - кнопка «Финиш».

. Теперь следует все указанные выше компоненты вынести на форму. Для этого на панели стандартных элементов находим значок одного из компонент, активизируем его и «переносим» на форму: рисуем условный прямоугольник в том месте формы, где будет предположительно находиться этот элемент, учитывая при этом его размеры.

. Аналогичные действия выполняем поочередно для каждого элемента, пока на форме не появятся все 10 элементов.

. Далее изменяем свойства объектов, используя страницу свойств Properties. Для изменения свойств элементов следует активизировать элемент - выделить его на форме. Далее для выделенного элемента в окне свойств можно вносить изменения: для Command1 изменить свойство Caption = ‘Старт», для Command2 - свойство Caption = ‘Финиш». Для остальных элементов задать значения свойств:

Text1. Text = ‘‘

Text2. Text = ‘‘

Text3. Text = ‘‘. Text = ‘‘. Caption = ‘Введите значение m

Label2. Caption = ‘Введите значение n

Label3. Caption = ‘Вывод значения x

Label4. Caption = ‘Вывод значения y

Заготовку формы для примера 3 с измененными свойствами смотрите на рис. 2.4.

. Для создания программного кода в проводнике проекта или в меню View выбрать команду Code.

В окне Project1 - Form1 (Code) выбрать в списке General название кнопки 1 и кликнуть по ней. В результате появится заготовка записи программного кода для Command1 с инициированием для нее события Click. Значения m, n пользователь должен ввести в окна Text1, Text2. Но в текстовом окне данные получаются также текстовые, типа Single. Поэтому используем функцию Val() для перевода в числовой тип Single, который объявлен для переменных m, n в начале программы в операторе Dim. Для вывода значений x, y используется функция Round(), которая округляет количество знаков после запятой до трех.

Рис. 2.3. Заготовка формы для примера 3 с измененными свойствами

. Аналогичные действия выполняем в отношении кнопки 2. Для Command2 будет выполняться одно действие - закрыть приложение. Это выполняет команда End.

. Программный код для примера 3 будет иметь вид (см. блок - схему разветвляющегося вычислительного процесса на рис. 2.5.):

Private Sub Command1_Click()

Rem Лабораторная работа 2-1, вариант 15

Dim m, n, x, y As Single= Val (Text1. Text)= Val (Text2. Text)= 3 * Cos (m / n)x < 0 Then= x ^ 2 + 3 * x - 7x >= 0 And x < 1 Then= 2 * x - 1= Exp(x)If. Text = Round (x, 3). Text = Round (y, 3)SubSub Command2_Click()

End Sub

. Для сохранения проекта надо выполнить команду меню File (файл) → Save Project As (Сохранить проект как). В диалоговом окне Save File As (Сохранить файл как) выбрать название диска, на котором должна быть создана папка для хранения файлов нового проекта. Далее для сохранения формы, следует набрать имя файла в поле ввода File Name (Имя файла), например Primer2-1, и нажать клавишу «Enter». Форма Form1 будет сохранена в файле с расширением Primer2-1.frm.

. После сохранения формы следует сохранить проект. В VISUAL BASIC это происходит автоматически, после чего должно появиться диалоговое окно Save Project As - Сохранить проект. Следует набрать то же имя Primer2-1 и нажать клавишу «Enter». Файл проекта будет сохранен с расширением Primer2-1.vbp.

. Теперь запустить проект на выполнение. Выбираем команду RunStart или Shift+F5. В поле Text1 нужно ввести значение m, в поле Text2 - значение n - после чего нажать кнопку «Старт». В окнах Text3 и Text4 появились значения x, y. Для завершения работы приложения следует нажать кнопку «Финиш».

Циклические вычислительные процессы на языке VISUAL BASIC

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

Операторы цикла. Использование циклов в VISUAL BASICе дает возможность повторного выполнения набора инструкций - операторов. Некоторые циклы повторяют инструкции, пока условие имеет значение False, другие - пока значение условия равно True.

Имеются также циклы, которые повторяют набор инструкций определенное число раз. Такие циклы называются циклами с параметром ForNext.

Циклы ForNext используют в качестве счетчика параметр - переменную, значение которой увеличивается (уменьшается) при каждом выполнении цикла. Синтаксис записи оператора цикла с параметром следующий:

For «параметр цикла»= «начальное значение» to «конечное значение» [step «шаг»]

«Тело цикла»

Next «параметр цикла»

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

Пример:

Dim At1 As Integer, j As Integer=0j=2 to 20 step 2=At1+jj«Сумма равна» & At1

 

Неопределенные циклы. Неопределенные циклы выполняются в зависимости от условия. Если условие выхода из цикла находится в конце цикла, то такой цикл называется циклом с постусловием. Синтаксис записи оператора цикла с постусловием следующий:

Do

«Тело цикла»

Loop Until «Условие»

Условие проверяется после того, как операторы, входящие в цикл, будут выполнены хотя бы один раз. Цикл работает до тех пор, пока «Условие» является ложным.

Аналогичным такому циклу является цикл вида:

Do

«Тело цикла»

Loop While «Условие»

Условие проверяется после того, как операторы, составляющие тело цикла, будут выполнены хотя бы один раз. Цикл работает до тех пор, пока «Условие» остается истинным.

Пример:

Do

Pr = Input Box («Введите пароль»)

Loop Until Pr = «QWERTY»

Если условие выхода из цикла находится в начале цикла, то такой цикл называется циклом с предусловием. Синтаксис записи оператора цикла с предусловием следующий:

Do Until «Условие»

«Тело цикла»

Loop

Цикл выполняется до тех пор, пока «Условие» является ложным. Если условие истинно, то цикл выполняться не будет.

Или цикл вида:

Do While «Условие»

«Тело цикла»

Loop

Цикл называется «петля». Условие проверяется, до того как выполняется тело цикла, будут выполнены хотя бы один раз. Цикл продолжает свою работу, пока «Условие» остается истинным.

Пример:

Const n As Integer =8

Dim S As Integer, j As Integer=0: j=2Until S>n=S+j^2=j+1. Caption = S

Разновидностью циклов с предусловием является цикл типа Wend. Если условие истинно, то выполняется тело цикла. Если условие ложно, то цикл ни разу не выполнится.

While «Условие»

«Тело цикла»

Wend

В программе можно использовать операторы Exit Do или Exit For, с помощью которых происходит переход выполнения программы к оператору, следующему за неопределенным циклом.

Пример 4. Определить

,

где .

Решение. Работа выполняется в следующей последовательности:

. Запустить VISUAL BASIC. В окне New Project выбрать Стандартный.EXE вкладки New (новый) и кликнуть по кнопке «Открыть».

. На экране появится новый проект и форма Project1 - Form1 (Form), содержание которой нужно заполнить необходимыми компонентами, с помощью которых можно будет выполнить необходимые вычисления.

. Во-первых, необходимы элементы, которые будут использоваться для ввода данных m и n. Используем для этой цели элементы Text1 и Text2. Во-вторых, необходимы элементы, в которых будут отражены результаты вычисления P, V. Используем для этой цели элементы Text3, Text4.

Для оформления надписей для обозначения текстовых окон Text1, Text2, Text3 и Text4 можно использовать метки Label1, Label2, Label3 и Label4 соответственно.

. Для выполнения функций вычисления необходима одна кнопка Command1. Это будет «Старт». Вторая кнопка Command2 выполняет функцию завершения работы приложения - кнопка «Выход».

. Теперь следует все указанные выше компоненты вынести на форму. Для этого на панели стандартных элементов находим значок одного из компонент, активизируем его и «переносим» на форму: рисуем условный прямоугольник в том месте формы, где будет предположительно находиться этот элемент, учитывая при этом его размеры.

. Аналогичные действия выполняем поочередно для каждого элемента, пока на форме не появятся все 10 элементов.

. Далее изменяем свойства объектов, используя страницу свойств Properties. Для изменения свойств элементов следует активизировать элемент - выделить его на форме. Далее для выделенного элемента в окне свойств можно вносить изменения: для Command1 изменить свойство Caption = ‘Старт», для Command2 - свойство Caption = ‘Выход ‘. Для остальных элементов задать значения свойств:

Text1. Text = ‘‘

Text2. Text = ‘‘

Text3. Text = ‘‘. Text = ‘‘. Caption = ‘Введите значение m

Label2. Caption = ‘Введите значение n

Label3. Caption = ‘Вывод значения P

Label4. Caption = ‘Вывод значения V

Заготовку формы для примера 4 с измененными свойствами смотрите на рис. 2.6.

9. Для создания программного кода в проводнике проекта или в меню View выбрать команду Code.

В окне Project1 - Form1 (Code) выбрать в списке General название кнопки 1 и кликнуть по ней. В результате появится заготовка записи программного кода для Command1 с инициированием для нее события Click. Значения m, n пользователь должен ввести в окна Text1, Text2. Но в текстовом окне данные получаются также текстовые, типа Single. Поэтому используем функцию Val() для перевода в числовой тип Single, который объявлен для переменных m, n в начале программы в операторе Dim. Для вывода значений P, V используется функция Round(), которая округляет количество знаков после запятой до трех.

Рис. 2.4. Заготовка формы для примера 4 с измененными свойствами

. Аналогичные действия выполняем в отношении кнопки 2. Для Command2 будет выполняться одно действие - закрыть приложение. Это выполняет команда End.

. Программный код для примера 4 будет иметь вид (см. блок - схему циклического вычислительного процесса на рис. 2.7):

Private Sub Command1_Click()

Rem Лабораторная работа 3-1, вариант 15

Dim m, n, P, V As Single, k As Integer= Val (Text1. Text)= Val (Text2. Text)= 1k = 1 To 15= P * n ^ 2 / Sqr (m * k ^ 2 + 1)k= m * P= (m + n) * P ^ 2 - 2.54 * P + 77.85. Text = Round (P, 3). Text = Round (V, 3)SubSub Command2_Click()

End Sub

. Для сохранения проекта надо выполнить команду меню File (файл) → Save Project As (Сохранить проект как). В диалоговом окне Save File As (Сохранить файл как) выбрать название диска, на котором должна быть создана папка для хранения файлов нового проекта. Далее для сохранения формы, следует набрать имя файла в поле ввода File Name (Имя файла), например Primer3-1, и нажать клавишу «Enter». Форма Form1 будет сохранена в файле с расширением Primer3-1.frm.

. После сохранения формы следует сохранить проект. В VISUAL BASIC это происходит автоматически, после чего должно появиться диалоговое окно Save Project As - Сохранить проект. Следует набрать то же имя Primer3-1 и нажать клавишу «Enter». Файл проекта будет сохранен с расширением Primer3-1.vbp.

. Теперь запустить проект на выполнение. Выбираем команду RunStart или Shift+F5. В поле Text1 нужно ввести значение m, в поле Text2 - значение n - после чего нажать кнопку «Старт». В окнах Text3 и Text4 появились значения P, V. Для завершения работы приложения следует нажать кнопку «Выход».

Пример 5 Составить таблицу значений функции y при изменении значений переменной x на отрезке [2, 6] с шагом h=0,5:

 

Решение. Работа выполняется в следующей последовательности:

. Запустить VISUAL BASIC. В окне New Project выбрать Стандартный.EXE вкладки New (новый) и кликнуть по кнопке «Открыть».

. На экране появится новый проект и форма Project1 - Form1 (Form), содержание которой нужно заполнить необходимыми компонентами, с помощью которых можно будет выполнить необходимые вычисления.

. Во-первых, необходимы элементы, которые будут использоваться для ввода данных m и n. Используем для этой цели элементы Text1 и Text2. Во-вторых, необходим элемент, в котором будут отражены результаты табулирования x, y. Используем для этой цели элемент List1, List2.

Для оформления надписей для обозначения окон Text1, Text2, List1, List2 можно использовать метки Label1, Label2, Label3 и Label4 соответственно.

. Для выполнения функций вычисления необходима одна кнопка Command1. Это будет «Старт». Вторая кнопка Command2 выполняет функцию завершения работы приложения - кнопка «Выход».

. Теперь следует все указанные выше компоненты вынести на форму. Для этого на панели стандартных элементов находим значок одного из компонент, активизируем его и «переносим» на форму: рисуем условный прямоугольник в том месте формы, где будет предположительно находиться этот элемент, учитывая при этом его размеры.

. Аналогичные действия выполняем поочередно для каждого элемента, пока на форме не появятся все 10 элементов.

. Далее изменяем свойства объектов, используя страницу свойств Properties. Для изменения свойств элементов следует активизировать элемент - выделить его на форме. Далее для выделенного элемента в окне свойств можно вносить изменения: для Command1 изменить свойство Caption = ‘Старт», для Command2 - свойство Caption = ‘Выход ‘. Для остальных элементов задать значения свойств:

Text1. Text = ‘‘

Text2. Text = ‘‘

Text3. Text = ‘‘. Text = ‘‘. Caption = ‘Введите значение m

Label2. Caption = ‘Введите значение n

Label3. Caption = ‘Значения x

Label4. Caption = ‘Значения y

Заготовку формы для примера 5 с измененными свойствами смотрите на рис. 2.8.

9. Для создания программного кода в проводнике проекта или в меню View выбрать команду Code.

В окне Project1 - Form1 (Code) выбрать в списке General название кнопки 1 и кликнуть по ней. В результате появится заготовка записи программного кода для Command1 с инициированием для нее события Click. Значения m, n пользователь должен ввести в окна Text1, Text2. Но в текстовом окне данные получаются также текстовые, типа Single. Поэтому используем функцию Val() для перевода в числовой тип Single, который объявлен для переменных m, n в начале программы в операторе Dim. Для вывода значений x, y используется функция Round(), которая округляет количество знаков после запятой до трех.

. Аналогичные действия выполняем в отношении кнопки 2. Для Command2 будет выполняться одно действие - закрыть приложение. Это выполняет команда End.

. Программный код для примера 5 будет иметь вид (см. блок - схему циклического вычислительного процесса на рис. 2.9):

Sub Command1_Click()Лабораторная работа 3-2, вариант 15= Val (Text1. Text)= Val (Text2. Text)x = 2 To 6 Step 0.5

y = (Exp(-X) + 5 * m) / (X + n)= Str (Round(x, 3))= Str (Round(y, 3)). AddItem (XB). AddItem (YB)x

End SubSub Command2_Click()Sub

. Для сохранения проекта надо выполнить команду меню File (файл) → Save Project As (Сохранить проект как). В диалоговом окне Save File As (Сохранить файл как) выбрать название диска, на котором должна быть создана папка для хранения файлов нового проекта. Далее для сохранения формы, следует набрать имя файла в поле ввода File Name (Имя файла), например Primer3-2, и нажать клавишу «Enter». Форма Form1 будет сохранена в файле с расширением Primer3-2.frm.

Рис. 2.5. Заготовка формы для примера 5 с измененными свойствами

13. После сохранения формы следует сохранить проект. В VISUAL BASIC это происходит автоматически, после чего должно появиться диалоговое окно Save Project As - Сохранить проект. Следует набрать то же имя Primer3-2 и нажать клавишу «Enter». Файл проекта будет сохранен с расширением Primer3-2.vbp.

. Теперь запустить проект на выполнение. Выбираем команду RunStart или Shift+F5. В поле Text1 нужно ввести значение m, в поле Text2 - значение n - после чего нажать кнопку «Старт». В окнах List1 и List2 появилась таблица значений x, y. Для завершения работы приложения следует нажать кнопку «Выход».

Пример 6. Составить таблицу значений функции z=f (x; y) при изменении значений переменной x на отрезке [a, b] с шагом h, переменной y на отрезке [c, d] с шагом l: , где a=1, b=2, h=0,2; c=2, d=4, l=0,4.

Решение. Работа выполняется в следующей последовательности:

. Запустить VISUAL BASIC. В окне New Project выбрать Стандартный.EXE вкладки New (новый) и кликнуть по кнопке «Открыть».

. На экране появится новый проект и форма Project1 - Form1 (Form), содержание которой нужно заполнить необходимыми компонентами, с помощью которых можно будет выполнить необходимые вычисления.

. Во-первых, необходимы элементы, которые будут использоваться для ввода данных m и n. Используем для этой цели элементы Text1 и Text2. Во-вторых, необходимы элементы, в которых будут отражены табличные значения x, y и z. Используем для этой цели элемент MSFlexGrid1.

Для оформления надписей для обозначения окон Text1 и Text2 можно использовать метки Label1 и Label2 соответственно.

. Для выполнения функций вычисления необходима одна кнопка Command1. Это будет «Старт». Вторая кнопка Command2 выполняет функцию завершения работы приложения - кнопка «Выход».

. Теперь следует все указанные выше компоненты вынести на форму. Для этого на панели стандартных элементов находим значок одного из компонент, активизируем его и «переносим» на форму: рисуем условный прямоугольник в том месте формы, где будет предположительно находиться этот элемент, учитывая при этом его размеры.

. Аналогичные действия выполняем поочередно для каждого элемента, пока на форме не появятся все 7 элементов.

. Далее изменяем свойства объектов, используя страницу свойств Properties. Для изменения свойств элементов следует активизировать элемент - выделить его на форме. Далее для выделенного элемента в окне свойств можно вносить изменения: для Command1 изменить свойство Caption = ‘Старт», для Command2 - свойство Caption = ‘Выход ‘. Для остальных элементов задать значения свойств:

Text1. Text = ‘‘

Text2. Text = ‘‘

Label1. Caption = ‘Введите значение m=

Label2. Caption = ‘Введите значение n=

Заготовку формы для примера 6 с измененными свойствами смотрите на рис. 2.10.

Рис. 2.6. Заготовка формы для примера 6 с измененными свойствами

. Для создания программного кода в проводнике проекта или в меню View выбрать команду Code. В окне Project1 - Form1 (Code) выбрать в списке General название кнопки 1 и кликнуть по ней. В результате появится заготовка записи программного кода для Command1 с инициированием для нее события Click. Значения m, n пользователь должен ввести в окна Text1, Text2. Но в текстовом окне данные получаются также текстовые, типа Single. Поэтому используем функцию Val() для перевода в числовой тип Single, который объявлен для переменных m, n в начале программы в операторе Dim. Для вывода значений x, y и z используется функция Round(), которая округляет количество знаков после запятой до трех.

. Аналогичные действия выполняем в отношении кнопки 2. Для Command2 будет выполняться одно действие - закрыть приложение. Это выполняет команда End.

. Программный код для примера 6 будет иметь вид (см. блок - схему циклического вычислительного процесса на рис. 2.11):

Private Sub Command1_Click()

Rem Лабораторная работа 3-3, вариант 15

m = Val (Text1. Text)= Val (Text2. Text). Row = 0. Col = 0. Text = «x= \ y=»y = 2 To 4.01 Step 0.4. Row = 0. Cols = MSFlexGrid1. Cols + 1. Col = MSFlexGrid1. Cols - 1. Text = CStr(y)yx = 1 To 2.01 Step 0.2. Col = 0. Rows = MSFlexGrid1. Rows + 1. Row = MSFlexGrid1. Rows - 2. Text = CStr(x)x= 1y = 2 To 4.01 Step 0.4= 1x = 1 To 2.01 Step 0.2= (x ^ 2 - y ^ 2 + m) / (x ^ 2 + y ^ 2) / n= Round (z, 3). Col = i. Row = j. Text = CStr(z)= j + 1x= i + 1ySubSub Command2_Click()

End Sub

. Для сохранения проекта надо выполнить команду меню File (файл) → Save Project As (Сохранить проект как). В диалоговом окне Save File As (Сохранить файл как) выбрать название диска, на котором должна быть создана папка для хранения файлов нового проекта. Далее для сохранения формы, следует набрать имя файла в поле ввода File Name (Имя файла), например Primer3-3, и нажать клавишу «Enter». Форма Form1 будет сохранена в файле с расширением Primer3-3.frm.

. После сохранения формы следует сохранить проект. В VISUAL BASIC это происходит автоматически, после чего должно появиться диалоговое окно Save Project As - Сохранить проект. Следует набрать то же имя Primer3-3 и нажать клавишу «Enter». Файл проекта будет сохранен с расширением Primer3-3.vbp.

. Теперь запустить проект на выполнение. Выбираем команду RunStart или Shift+F5. В поле Text1 нужно ввести значение m, в поле Text2 - значение n - после чего нажать кнопку «Старт». В окне MSFlexGrid1 появилась таблица значений x, y, z. Для завершения работы приложения следует нажать кнопку «Выход».

Обработка массивов данных

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

Чтобы получить доступ к нужной ячейки, нужно указать имя массива и его индекс. Индекс записывается в круглых скобках после имени массива. Если нужно присвоить, например, значение 5 третьему элементу массива A, нужно написать A(3) = 5.

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

Индекс может быть переменной. Если нужно всем пяти элементам массива A присвоить значение 5, можно написать

For I = 1 TO 5(I) = 5I

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

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

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

Пример:

Dim Tab1 (5) As Integer        - описан массив из 6 целых чисел

Dim Tab2 (5,6) As Integer     - описан массив, содержащий 6 столбцов и 7 строк целых чисел

Dim Tab3 (2 To 13) As Single        - описан массив 12 чисел вещественного типа

Dim Tab4 (1 To 3, 2 To 8) As Single       - описан массив из 7 строк и 3 столбцов чисел вещественного типа.

В VISUAL BASICе допускается описание массивов, имеющих до 60 размерностей. Для обработки массивов используются вложенные циклы For Next.

Обработка массивов, а также ввод - вывод массивов осуществляется поэлементно.

Например, ввод одномерного массива A, содержащего 10 элементов, можно осуществить при помощи операторов

Dim Tab1 (1 To 5, 1 To 5) As Integer, Nc As Integer, Nw As Integer

For Nw = 1 To 5Nc = 1 To 5. Col = Nc. Row = Nw. Text = tab1 (Nw-1, Nc-1)NcNw

Пример 7. Даны два массива xi и yi (i=1,10). Составить программу для вычисления суммы квадратов положительных xi.

Решение. Работа выполняется в следующей последовательности:

1. Запустить VISUAL BASIC. В окне New Project выбрать Стандартный.EXE вкладки New (новый) и кликнуть по кнопке «Открыть».

. На экране появится новый проект и форма Project1 - Form1 (Form), содержание которой нужно заполнить необходимыми компонентами, с помощью которых можно будет выполнить необходимые вычисления.

. Во-первых, необходим элемент, в котором будут отражены табличные значения x, и y. Используем для этой цели элемент MSFlexGrid1. Во-вторых, необходим элемент, который будут использоваться для работы с файлом данных x и y. Используем для этой цели элемент CommonDialog1 (Диалоговое окно для выбора файла).

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

. Первая кнопка Command1 выполняет функцию открытия внешнего файла приложения - кнопка «Открыть файл». Вторая кнопка Command2 выполняет функцию вычисления. Это будет «Вычислить». Третья кнопка Command3 выполняет функцию завершения работы приложения - кнопка «Выход».

. Теперь следует все указанные выше компоненты вынести на форму. Для этого на панели стандартных элементов находим значок одного из компонент, активизируем его и «переносим» на форму: рисуем условный прямоугольник в том месте формы, где будет предположительно находиться этот элемент, учитывая при этом его размеры.

. Аналогичные действия выполняем поочередно для каждого элемента, пока на форме не появятся все 6 элементов.

. Далее изменяем свойства объектов, используя страницу свойств Properties. Для изменения свойств элементов следует активизировать элемент - выделить его на форме. Далее для выделенного элемента в окне свойств можно вносить изменения: для Command1 изменить свойство Caption = ‘Открыть файл», для Command2 - свойство Caption = ‘Вычислить» и для Command3 - свойство Caption = ‘Выход». Для остальных элементов задать значения свойств:

Label1. Caption = ‘Сумма квадратов всех x(i)>0 равна‘

Заготовку формы для примера 7 с измененными свойствами смотрите на рис. 2.12.

. Для создания программного кода в проводнике проекта или в меню View выбрать команду Code.

В окне Project1 - Form1 (Code) выбрать в списке General название кнопки 1 и кликнуть по ней. В результате появится заготовка записи программного кода для Command1 с инициированием для нее события Click.

Рис. 2.7. Заготовка формы для примера 7 с измененными свойствами.

. Аналогичные действия выполняем в отношении кнопок 2 и 3. Для Command3 будет выполняться одно действие - закрыть приложение. Это выполняет команда End.

Dim s As String, f As String, a As Double, b As Double Лабораторная работа 4-1, вариант 15

Private Sub Command1_Click()

For i = 0 To 9. Row = 0. Col = i= Val (MSFlexGrid1. Text)a > 0 Then b = b + a ^ 2i. Caption = Label1. Caption + CStr(b)SubSub Command2_Click(). ShowOpen= CommonDialog1. FileNamef For Input As 1i = 0 To 19Input #1, si <= 9 Then MSFlexGrid1. Row = 0 Else MSFlexGrid1. Row = 1i <= 9 Then MSFlexGrid1. Col = i Else MSFlexGrid1. Col = i - 10. Text = siSubSub Command3_Click()Sub

. Для сохранения проекта надо выполнить команду меню File (файл) → Save Project As (Сохранить проект как). В диалоговом окне Save File As (Сохранить файл как) выбрать название диска, на котором должна быть создана папка для хранения файлов нового проекта. Далее для сохранения формы, следует набрать имя файла в поле ввода File Name (Имя файла), например Primer4-1, и нажать клавишу «Enter». Форма Form1 будет сохранена в файле с расширением Primer4-1.frm.

. После сохранения формы следует сохранить проект. В VISUAL BASIC это происходит автоматически, после чего должно появиться диалоговое окно Save Project As - Сохранить проект. Следует набрать то же имя Primer4-1 и нажать клавишу «Enter». Файл проекта будет сохранен с расширением Primer4-1.vbp.

. Теперь запустить проект на выполнение. Выбираем команду RunStart или Shift+F5. Нажать кнопку «Открыть файл» и открыть файл с исходными данными xi. После этого нажать кнопку «Выполнить». Значение суммы квадратов положительных xi появляется на форме. Для завершения работы приложения следует нажать кнопку «Выход».

Пример 8. Дан массив Ci,j, i=0,1,2,3,4, j=0,1,2,3,4. Найти

 

Решение. Работа выполняется в следующей последовательности:

1. Запустить VISUAL BASIC. В окне New Project выбрать Стандартный.EXE вкладки New (новый) и кликнуть по кнопке «Открыть».

. На экране появится новый проект и форма Project1 - Form1 (Form), содержание которой нужно заполнить необходимыми компонентами, с помощью которых можно будет выполнить необходимые вычисления.

. Во-первых, необходим элемент, в котором будут отражены табличные значения Ci,j. Используем для этой цели элемент MSFlexGrid1. Во-вторых, необходим элемент, который будут использоваться для работы с файлом данных Ci,j. Используем для этой цели элемент CommonDialog1 (Диалоговое окно для выбора файла).

. Для ввода исходных данных Ci,j из текстового файла необходима одна кнопка Command1 - кнопка «Открыть файл».

. Вторая кнопка Command2 выполняет функцию вычисления. Это будет «Найти Zi,j». Третья кнопка Command3 выполняет функцию завершения работы приложения - кнопка «Выход».

. Теперь следует все указанные выше компоненты вынести на форму. Для этого на панели стандартных элементов находим значок одного из компонент, активизируем его и «переносим» на форму: рисуем условный прямоугольник в том месте формы, где будет предположительно находиться этот элемент, учитывая при этом его размеры.

. Аналогичные действия выполняем поочередно для каждого элемента, пока на форме не появятся все 5 элементов.

. Далее изменяем свойства объектов, используя страницу свойств Properties. Для изменения свойств элементов следует активизировать элемент - выделить его на форме. Далее для выделенного элемента в окне свойств можно вносить изменения: для Command1 изменить свойство Caption = ‘Открыть файл», для Command2 - свойство Caption = ‘Найти Zi,j‘ и для Command3 - свойство Caption = ‘Выход».

Заготовку формы для примера 8 с измененными свойствами смотрите на рис. 2.14.

Рис. 2.8. Заготовка формы для примера 8 с измененными свойствами

. Для создания программного кода в проводнике проекта или в меню View выбрать команду Code.

В окне Project1 - Form1 (Code) выбрать в списке General название кнопки 1 и кликнуть по ней. В результате появится заготовка записи программного кода для Command1 с инициированием для нее события Click.

. Аналогичные действия выполняем в отношении кнопок 2 и 3. Для Command3 будет выполняться одно действие - закрыть приложение. Это выполняет команда End.

. Программный код для примера 8 будет иметь вид (см. блок - схему циклического вычислительного процесса на рис. 2.15):

Dim s As String, f As String, a As Double Лабораторная работа 4-2, вариант 15

Private Sub Command1_Click()

For i = 0 To 4j = 0 To 4. Row = i. Col = j= Val (MSFlexGrid1. Text)a >= 1 Then. Text = «1»a > 0 And a < 1 ThenZ (i, j)=C (i, j). Text = «0»IfjiSubSub Command2_Click(). ShowOpen= CommonDialog1. FileNamef For Input As 1i = 0 To 4j = 0 To 4Input #1, s. Row = i. Col = j. Text = sjiSubSub Command3_Click()Sub

. Для сохранения проекта надо выполнить команду меню File (файл) → Save Project As (Сохранить проект как). В диалоговом окне Save File As (Сохранить файл как) выбрать название диска, на котором должна быть создана папка для хранения файлов нового проекта. Далее для сохранения формы, следует набрать имя файла в поле ввода File Name (Имя файла), например Primer4-2, и нажать клавишу «Enter». Форма Form1 будет сохранена в файле с расширением Primer4-2.frm.

. После сохранения формы следует сохранить проект. В VISUAL BASIC это происходит автоматически, после чего должно появиться диалоговое окно Save Project As - Сохранить проект. Следует набрать то же имя Primer4-2 и нажать клавишу «Enter». Файл проекта будет сохранен с расширением Primer4-2.vbp.

. Теперь запустить проект на выполнение. Выбираем команду RunStart или Shift+F5. Нажать кнопку «Открыть файл» и открыть файл с исходными данными Ci,j. После этого нажать кнопку «Найти Zi,j». В окне MSFlexGrid1 появилась таблица значений Zi,j. Для завершения работы приложения следует нажать кнопку «Выход».

Литература

компьютер программа алгоритмический

1 С.В. Симоновича и др. Информатика. Базовый курс. Санкт-Петербург: Издательский дом Питер. 2002, - 640 с.

2 А.В. Могилев, Н.И. Пак, Е.К. Хеннер. Информатика. - 3-е изд., перераб. и доп. - М.: Издательский центр «Академия», 2004, - 848 с.

3 М.Д. Князева. Программирование на Visual Basic 6. Учеб. Пособие. - М.: КУДИЦ-ОБРАЗ, 2006. - 176 с.

Похожие работы на - Основы визуального программирования

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!