Понятия алгоритма и программы 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Понятия алгоритма и программы



Введение

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

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

В целях изучения и получения практических навыков программирования используется язык программирования Visual Basic, который дает возможность решать любые современные задачи разработки приложений. Язык Visual Basic представляет собой интегрированную среду разработки — IDE (Integrated Development Environment), в которой имеется набор инструментов, облегчающих и значительно ускоряющих процесс разработки готового приложения. Такая реализация языка Visual Basic с полным правом позволяет отнести его к средствам быстрой разработки приложений — RAD (Rapid Application Development).

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

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

 

 

Раздел 1. Конструирование алгоритмов

 

Практическое занятие 1

Понятия алгоритма и программы

 

Пример 1.

Составить блок-схему алгоритма решения задачи: вычислить площадь пожара в виде круга при заданном радиусе (рис. 1.2).

 

Решение.

R – радиус, S – площадь пожара.

       
   
 
 
Рис. 1.2. Блок-схема алгоритма к примеру 1

 

 


Практические задания

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

2. Разработать блок-схему алгоритма решения задачи: вычислить процент присутствующих на занятии слушателей.

 

Контрольные вопросы

1. Дайте определение алгоритма.

2. Какие существуют формы представления алгоритмов?

3. Объясните понятие «дискретность алгоритма».

4. Назовите основные элементы блок-схем алгоритма и их назначение.

5. Назовите базовые структуры алгоритмов.

Практическое занятие 2

Разветвляющийся алгоритм

 

Пример 2.

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

 

Решение.

Т1, Т2, – показания температурного датчика.

       
   
 
 
Рис. 1.3. Блок-схема алгоритма к примеру 2


Пример 3.

Составить блок-схему алгоритма решения задачи: определить максимальное время прибытия пожарных автомобилей из 3 пожарных частей к месту пожара (рис. 1.4).

Решение.

t1, t2, t3 – время прибытия пожарного автомобиля из 1, 2 и 3 пожарной части соответственно.

       
 
 
   
Рис. 1.4. Блок-схема алгоритма к примеру 3


Практические задания

 

1. Составить блок-схему алгоритма решения задачи: определить средний балл 4 слушателей по результатам контрольной работы. Если средний балл ≥ 3, то вывести сообщение «Контрольная работа написана удовлетворительно».

2. Составить блок-схему алгоритма решения задачи: найти минимальное количество пожаров по данным из 2 районов, вычислить разницу.

3. Составить блок-схему алгоритма вычисления значения функции:

Контрольные вопросы

1. Какой алгоритм называется разветвляющимся?

2. Приведите пример разветвляющегося алгоритма.

 

 

Практическое занятие 3

Циклический алгоритм

 

Пример 4.

Составить блок-схему алгоритма решения задачи: вычислить площадь пожара в виде круга при 10 значениях радиуса (рис. 1.5).

Решение.

R – радиус, S – площадь пожара.

 

В этой задаче необходимо 10 раз повторить одни и те же действия:

- ввод значений переменной R;

- вычисление площади по формуле S = π·R2;

- вывод полученного в результате значения S.

 

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

В данном случае параметр цикла является счетчиком, определяющим, который раз выполняются команды тела цикла. Обозначим его переменной i.

i = 1, 2, …, 10.

       
   
 
 
Рис. 1.5. Блок-схема алгоритма к примеру 4

 

 


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

Пример 5.

Составить блок-схему алгоритма решения задачи: площадь разлива нефтепродуктов составляет S м2, каждый час площадь увеличивается на
5 %. Какая будет площадь разлива через 4 часа (рис. 1.6)?

Решение.

S – площадь разлива нефтепродуктов в начальный момент времени;

5 % - изменение площади за час.

Алгоритм решения задачи должен иметь циклическую структуру с параметром, где параметр – номер часа.

i = 1, 2, 3, 4.

 

       
   
 
 
Рис. 1.6. Блок-схема алгоритма к примеру 5

 


Практические задания

 

1. Составить блок-схему алгоритма решения задачи: вычислить средний балл успеваемости 3 слушателей для 5 значений оценок.

2. Составить блок-схему алгоритма вычисления значения функции:

y =

3. Составить блок-схему алгоритма решения задачи: на начальный момент времени площадь пожара составляет S м2, за минуту она уменьшается на 10 %. Через сколько минут площадь пожара станет меньше или равным R м2?

 

Контрольные вопросы

1. Какой алгоритм называется циклическим?

2. Дайте определение цикла с предусловием.

3. Дайте определение цикла с постусловием.

4. Что такое тело цикла?

5. Приведите пример циклического алгоритма.

 

 

Практическое занятие 4

Пример 6.

Составить блок-схему алгоритма решения задачи: найти сумму значений элементов числового массива (рис. 1.7).

Решение.

А – имя массива, i – счетчик элементов массива, k – количество элементов массива, Sum – сумма значений элементов массива.

 

 
 

       
 
 
   
Рис. 1.7. Блок-схема алгоритма к примеру 6


Пример 7.

Составить блок-схему алгоритма решения задачи: найти отрицательные элементы числового массива (вывести в отдельный массив) (рис. 1.8).

Решение.

А – имя исходного массива, i – счетчик элементов исходного массива А, k – количество элементов исходного массива А, В – имя массива отрицательных элементов, j – счетчик элементов массива В.

 

 

       
 
 
   
Рис. 1.8. Блок-схема алгоритма к примеру 7

 

 


Практические задания

 

1. Составить блок-схему алгоритма решения задачи: вычислить сумму положительных элементов числового массива.

2. Составить блок-схему алгоритма решения задачи: подсчитать количество элементов числового массива, значения которых равны нулю.

3. Составить блок-схему алгоритма решения задачи: найти максимальный элемент числового массива.

4. Составить блок-схему алгоритма решения задачи: сложить элементы двух числовых массивов А и В. Результат записать в массив С.

5. Составить блок-схему алгоритма решения задачи: найти среднее значение из отрицательных элементов числового массива.

Контрольные вопросы

1. Дайте определение массива.

2. Дайте определение индекса массива.

3. Виды массивов.

4. Запишите, что такое одномерный массив.

5. Приведите пример циклического алгоритма?

Практическое занятие 5

Двумерные массивы

 

Пример 8.

Составить блок-схему алгоритма решения задачи: дан двумерный массив А(n, m). Каждый элемент умножить на 20. Вывести новый массив (рис. 1.9).

Решение.

А – имя массива, i – счетчик строк, j – счетчик столбцов, n – количество строк, m – количество столбцов.

       
 
 
   
Рис. 1.9. Блок-схема алгоритма к примеру 8


Пример 9.

Составить блок-схему алгоритма решения задачи: найти сумму значений элементов главной диагонали двумерного массива А(3, 3) (рис. 1.10).

Решение.

Главной диагональю двумерного массива называют совокупность элементов, имеющих одинаковые индексы (i = j). В данном случае главную диагональ матрицы А(3, 3) составляют элементы А(1, 1), А(2, 2), А(3, 3).

Сумма значений элементов главной диагонали матрицы вычисляется по формуле: S = А(1, 1) + А(2, 2) + А(3, 3).

А(3, 3) – исходный массив, i – счетчик строк и столбцов, S – сумма значений элементов главной диагонали.

       
 
 
   
Рис. 1.10. Блок-схема алгоритма к примеру 9

 


Практические задания

 

1. Составить блок-схему алгоритма решения задачи: найти строчку матрицы в которой находится максимальный элемент.

2. Составить блок-схему алгоритма решения задачи: найти сумму значений элементов последнего столбца матрицы.

Контрольные вопросы

 

1. Что называется двумерным массивом?

2. Приведите пример двумерного массива.

 

Задачи для самостоятельного решения

1. Составить блок-схему алгоритма решения задачи: найти разность наибольшего и наименьшего значений элементов числового массива.

2. Составить блок-схему алгоритма решения задачи: найти произведение значений всех ненулевых элементов числового массива.

3. Составить блок-схему алгоритма решения задачи: найти количество отрицательных элементов числового массива.

4. Составить блок-схему алгоритма решения задачи: все отрицательные элементы числового массива заменить на ноль.

5. Составить блок-схему алгоритма решения задачи: найти номер минимального элемента числового массива.

6. Составить блок-схему алгоритма решения задачи: найти среднее значение элементов числовой матрицы.

7. Составить блок-схему алгоритма решения задачи: вычислить сумму значений положительных элементов в каждой строке матрицы.

8. Составить блок-схему алгоритма решения задачи: вычислить произведение значений элементов главной диагонали матрицы.

9. Составить блок-схему алгоритма решения задачи: найти номер столбца с минимальным значением элемента числовой матрицы.

10. Составить блок-схему алгоритма решения задачи: вычислить количество отрицательных и положительных элементов матрицы.

Раздел 2. Разработка компьютерных
программ в среде Visual Basic

 

Лабораторная работа 1

Диалоговая форма программы

Спроектируйте диалоговую форму программы с использованием элементов управления (рис. 2.10).

На форме располагаются 4 надписи, 3 текстовых поля для ввода чисел, 1 - для вывода результата; 2 кнопки: 1 для выполнения расчета (Вычислить), 1 для выхода из программы (Выход).

 

 

В окне свойств объектов определите свойства каждого элемента управления:

 

Таблица 2.6

Свойства элементов управления

Элемент управления Свойство Имя Свойство Caption
Форма Form1 Вычисление объема гаражного бокса
Надпись1 Label1 Вычисление объема гаражного бокса по формуле: V=A*B*C
Надпись2 Label2 Длина (А)
Надпись3 Label3 Ширина (В)
Надпись4 Label4 Высота (С)
Текстовое поле1 Длина -
Текстовое поле2 Ширина -
Текстовое поле3 Высота -
Текстовое поле4 Объем -
Кнопка1 Command1 Вычислить
Кнопка2 Command2 Выход

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

переменная = выражение

Аргумент переменная задает имя переменной, которой будет присвоено значение выражения, стоящего справа от знака равенства. Например:

А = 10

N = "Иванов"

Рассмотрим функции, необходимые для использования в программе:

Функция Val преобразовывает символьную строку в численное значение. Синтаксис функции:

Val (символьное выражение)

Функция Str преобразовывает численное значение в символьное представление. Синтаксис функции:

Str (число)

Программный код

 

'Процедура вычисления объема

Private Sub Command1_Click()

'Присвоение переменным входных данных

A = Val(Длина.Text)

B = Val(Ширина.Text)

C = Val(Высота.Text)

'Вычисление объема

V = A * B * C

'Вывод результата

Объем.Text = Str(V)

End Sub

'Процедура завершения программы

Private Sub Command2_Click()

End

End Sub

 

Практическое задание

1. Создайте собственную диалоговую форму путем изменения расположения элементов управления.

2. Измените свойства Имя элементов управления в окне свойств и в программном коде.

Контрольные вопросы

 

1. Назовите назначение функции Val.

2. Назовите назначение функции Str.

 

 

Лабораторная работа 3

Else

Конструкции для обработки ложного условия

End If

Ключевые слова If и End if имеют тот же смысл, что и в конструкции If...Then. Если заданное в конструкции условие не выполняется и конструкция содержит ключевое слово Else, Visual Basic выполнит последовательность конструкций, расположенных непосредственно за Else. После чего управление перейдет к конструкции, следующей после End If.

Например:

 

If x >= 0 Then

Label1.Caption = "Значение больше или равно 0"

Else

Labell.Caption = "Значение меньше 0"

End If

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

При размещении в форме нескольких групп переключателей каждая логическая группа должна помещаться в объект-контейнер, например Frame (Рамка). В этом случае, для создания в форме группы переключателей необходимо сначала поместить в форму рамку, а затем разместить в ней поочередно необходимое количество переключателей, используя для этого кнопку OptionButton на панели элементов управления.

В качестве примера рассмотрим разработку программы расчета среднего или поиска максимума из площадей пожаров.

Входные данные: площади 2 пожаров (А, В).

Выходные данные: средняя площадь (Avg) или максимум (Max).

Разработка алгоритма:


Диалоговая форма программы

Спроектируйте диалоговую форму программы с использованием элементов управления (рис. 2.12).

На форме располагаются 1 рамка (Выбор операции), 2 переключателя (Средняя площадь и Максимум), 3 текстовых надписи, 2 текстовых поля для ввода чисел, 1 - для вывода результата; 2 кнопки: 1 для выполнения операции (ОК), 1 для выхода из программы (Выход).

В окне свойств объектов определите свойства каждого элемента управления:

Таблица 2.7

Свойства элементов управления

Элемент управления Свойство Имя Свойство Caption
Форма Form1 Вычисления
Рамка Frame1 Выбор операции
Переключатель1 Option1 Средняя площадь
Переключатель2 Option2 Максимум
Надпись1 Label1 Площадь 1 пожара
Надпись2 Label2 Площадь 2 пожара
Надпись3 Label3 Результат
Текстовое поле1 Площадь1 -
Текстовое поле2 Площадь2 -
Текстовое поле3 Результат -
Кнопка1 Command1 ОК
Кнопка2 Command2 Выход

Программный код

 

'Процедура расчета среднего значения и поиска максимума

Private Sub Command1_Click()

'Вычисление среднего

If Option1.Value = True Then

Результат.Text = (Val(Площадь1.Text) + Val(Площадь2.Text)) / 2

ElseIf Option2.Value = True Then

'Поиск максимума

If Val(Площадь1.Text) > Val(Площадь2.Text) Then

Результат.Text = Val(Площадь1.Text)

Else: Результат.Text = Val(Площадь2.Text)

End If

End If

End Sub

'Процедура завершения программы

Private Sub Command2_Click()

End

End Sub

Практическое задание

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

 

Контрольные вопросы

 

1. Объясните работу конструкции If.. Then.

2. Объясните работу конструкции If.. Then.. Else.

3. Объясните работу элемента управления Option Button.

 

 

Лабораторная работа 4

Диалоговая форма программы

Спроектируйте интерфейс программы с использованием элементов управления (рис. 2.13).

На форме располагаются 4 текстовых надписи (одна из них пустая), 2 текстовых поля для ввода данных, 1 - для вывода результата; раскрывающийся список для выбора операции; 4 кнопки: 1 для ввода размера (количество элементов) массива (Ввод размера), 1 для ввода элементов массива (Ввод массива), 1 для выполнения операции (ОК), 1 для выхода из программы (Выход).

 


Свойства объектов

В окне свойств объектов определите свойства каждого элемента управления:

Таблица 2.8

 

Свойства элементов управления

Элемент управления Свойство Имя Свойство Caption
     
Форма Form1 Операции с одномерным массивом
Надпись1 Label1 Размер
Надпись2 Label2 Элементы
Надпись3 Label3 *
Надпись4 Label4 Выбор операции
Текстовое поле1 РазмерМассива -
Текстовое поле2 ЭлементыМассива -
Текстовое поле3 Результат -
Кнопка1 Command1 Ввод размера
Кнопка2 Command2 Ввод массива
Кнопка3 Command3 ОК
Кнопка4 Command4 Выход
Раскрывающийся список Combo1 -

* - пустая надпись (надпись выводится в зависимости от типа операции)

В текстовых полях необходимо стереть заданный по умолчанию текст. В раскрывающемся списке в свойстве List наберите список операций: Сумма и Минимум.

 

Программный код

 

'Установка индексации элементов массива (начинается с 1)

Option Base 1

'Объявление переменной целого типа для ввода размера массива

Dim size As Integer

'Объявление переменной целого типа (флага) для обеспечения многократного ввода данных

Dim f As Integer

'Объявление имени массива и максимального количества элементов

Dim A(100)

'Процедура ввода размера массива

Private Sub Command1_Click()

size = Val(РазмерМассива.Text)

Command1.Enabled = False

'Установка курсора в окно ввода элементов массива

ЭлементыМассива.SetFocus

'Активация кнопки ввода элементов массива в случае ее деактивации

If Command1.Enabled = False Then

Command2.Enabled = True

'Установка флага на единицу

f = 1

End If

'Очистка формы

Form1.Cls

'Очистка текстового поля

Результат.Text = ""

'Очистка надписи

Label3.Caption = ""

End Sub

'Процедура ввода элементов массива

Private Sub Command2_Click()

'Установка курсора в окно ввода элементов массива

ЭлементыМассива.SetFocus

'Объявление счетчика элементов массива (статическая переменная)

Static i

'Если флаг содержит единицу (повторный ввод данных) устанавливаем счетчик элементов массива на 0 и флаг устанавливаем на 0

If f = 1 Then

i = 0

f = 0

End If

'Операция ввода элементов массива

If i <= size Then

A(i+1) = Val(ЭлементыМассива.Text)

i = i + 1

'Очистка текстового поля ввода элементов массива

ЭлементыМассива.Text = ""

End If

'Деактивация кнопки ввода элементов массива и их вывод (индекс больше или равен количеству элементов массива)

If i >= size Then

Command2.Enabled = False

Command1.Enabled = True

Combo1.SetFocus

For i = 1 To size

Print Spc(1); A(i);

Next

End If

End Sub

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

Private Sub Command3_Click()

'Объявление переменных для хранения результатов обработки массива данных

Dim min As Double

Dim sum As Double

'Поиск минимального элемента

If Combo1.Text = "Минимум" Then

min = A(1)

For i = 1 To size

If A(i) <= min Then

min = A(i)

End If

Next

'Вывод минимального элемента

Label3.Caption = "Минимум"

Результат.Text = Str(min)

End If

'Вычисление суммы элементов массива

If Combo1.Text = "Сумма" Then

sum = 0

For i = 1 To size

sum = sum + A(i)

Next

'Вывод суммы элементов массива

Label3.Caption = "Сумма"

Результат.Text = Str(sum)

End If

End Sub

'Процедура выхода из программы

Private Sub Command4_Click()

End

End Sub

 

Практическое задание

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

 

Контрольные вопросы

 

1. Объясните работу конструкции For… Next.

2. Объясните работу элемента управления ComboBox.

 

 

Лабораторная работа 5

Цель

Создание программы обработки двумерного массива А(5,5).

Входные данные: элементы массива.

Выходные данные: максимальный элемент (М), сумма элементов (Sum).

Разработка алгоритма: алгоритмы разработаны на предыдущих занятиях.

Диалоговая форма

Спроектируйте интерфейс программы, состоящий из 2 форм с использованием элементов управления (рис. 2.14, рис. 2.15).

На первой форме располагаются 7 текстовых надписей (одна из них пустая), 5 текстовых полей для ввода данных, 1 - для вывода результата; список для выбора операции; 3 кнопки: 1 для построчного ввода элементов матрицы (Ввод данных), 1 для выполнения операции (ОК), 1 для выхода из программы или ввода новой матрицы (Выход/Ввод новой матрицы); 2 флажка: 1 для вывода элементов матрицы, 2 для ввода новой матрицы; 1 рамка.

Расположение пустой надписи

 

На второй форме располагаются 1 текстовая надпись, 25 текстовых полей для вывода данных; 1 кнопка (Закрыть) для закрытия формы.

Свойства объектов

В окне свойств объектов определите свойства каждого элемента управления для 2 диалоговых форм:

 

Таблица 2.9

Свойства элементов управления первой диалоговой формы

Элемент управления Свойство Имя Свойство Caption
     
Форма Form1 Операции с двумерным массивом
Надпись1 Label1  
Надпись2 Label2  
Надпись3 Label3  
Надпись4 Label4  
Надпись5 Label5  
Надпись6 Label6 Выбор операции
Надпись7 Label7 *
Текстовое поле1 Первый -
Текстовое поле2 Второй -
Текстовое поле3 Третий -
Текстовое поле4 Четвертый -
Текстовое поле5 Пятый -
Текстовое поле6 Результат -
Кнопка1 Command1 Ввод данных
Кнопка2 Command2 ОК
Кнопка3 Command3 Выход/Ввод новой матрицы
Список List1 -
Флажок1 Check1 Вывод элементов матрицы
Флажок2 Check2 Ввод новой матрицы
Рамка1 Frame1 Ввод данных

 

* - пустая надпись (надпись выводится в зависимости от типа операции)

 

В текстовых полях необходимо стереть заданный по умолчанию текст. В списке в свойстве List наберите список операций: Максимум и Сумма.

 

Таблица 2.10

Свойства элементов управления второй диалоговой формы

Элемент управления Свойство Name Свойство Caption
Форма Form2 Вывод элементов матрицы
Надпись1 Label1 Элементы матрицы
Массив из 25 элементов Текстовое поле * Text1 -
Кнопка1 Command1 Закрыть

* - для создания массива из 25 текстовых полей выполните следующие операции: создайте текстовое поле Text1, выделите это текстовое поле и скопируйте с помощью контекстного меню (Copy), вставьте скопированное текстовое поле в форму (Paste), подтвердите запрос о создании массива текстовых полей, построчно вставьте 25 полей (5х5) (рис. 2.15)

Программный код

Для первой диалоговой формы:

 

'Установка индексации элементов массива (начинается с 1)

Option Base 1

'Объявление квадратной матрицы из целых чисел

Dim A(5, 5) As Integer

'Объявление переменной целого типа для контроля повторного ввода данных

Dim f As Integer

'Процедура построчного ввода элементов матрицы

Private Sub Command1_Click()

'Объявление счетчика строки матрицы

Static i

'Если переменная f содержит единицу (повторный ввод данных)

'обнуляем счетчик строк матрицы и переменной f присваиваем ноль

If f = 1 Then

i = 1

f = 0

End If

'Построчный ввод элементов матрицы

If i <= 5 Then

A(i+1, 1) = Val(Первый.Text)

A(i+1, 2) = Val(Второй.Text)

A(i+1, 3) = Val(Третий.Text)

A(i+1, 4) = Val(Четвертый.Text)

A(i+1, 5) = Val(Пятый.Text)

i = i + 1

'Деактивация кнопки после окончания ввода элементов матрицы

If i >= 5 Then

Command1.Enabled = False

End If

End If

'Очистка текстовых полей

Первый.Text = ""

Второй.Text = ""

Третий.Text = ""

Четвертый.Text = ""

Пятый.Text = ""

'Установка курсора в текстовое поле

Первый.SetFocus

End Sub

'Процедура выполнения операций по обработке матрицы

Private Sub Command2_Click()

'Проверка включения флажка на вывод элементов матрицы

If Check1.Value = 1 Then

'Вывод элементов матрицы в форму

For j = 1 To 5

Form2.Text1(j-1).Text = A(1, j)

Next

For j = 6 To 10

Form2.Text1(j-1).Text = A(2, j - 5)

Next

For j = 11 To 15

Form2.Text1(j-1).Text = A(3, j - 10)

Next

For j = 16 To 20

Form2.Text1(j-1).Text = A(4, j - 15)

Next

For j = 21 To 25

Form2.Text1(j-1).Text = A(5, j - 20)

Next

'Открытие формы с элементами матрицы

Form2.Show

End If

'Объявление переменных

Dim M As Integer

Dim Sum As Integer

'Определение максимального элемента

If List1.Text = "Максимум" Then

M = A(1, 1)

For i = 1 To 5

For j = 1 To 5

If A(i, j) >= M Then

M = A(i, j)

End If

Next j

Next i

'Вывод максимального элемента в текстовое поле

Результат.Text = Str(M)

'Вывод надписи "Максимум"

Label7.Caption = "Максимум"

End If

'Определение суммы элементов матрицы

If List1.Text = "Сумма" Then

Sum = 0

For i = 1 To 5

For j = 1 To 5

Sum = Sum + A(i, j)

Next j

Next i

'Вывод суммы элементов матрицы в текстовое поле

Результат.Text = Str(Sum)

'Вывод надписи "Сумма"

Label7.Caption = "Сумма"

End If

End Sub

'Процедура выхода из программы/ввода новой матрицы

Private Sub Command3_Click()

'Проверка включения флажка на ввод новой матрицы

If Check2.Value = 1 Then

'Проверка активации кнопки ввода данных

If Command1.Enabled = False Then

Command1.Enabled = True

f = 1

End If

'Установка курсора в текстовое поле

Первый.SetFocus

'Очистка текстового поля

Результат.Text = ""

'Очистка надписи

Label7.Caption = ""

'Выход из программы

Else: End

End If

End Sub

Для второй диалоговой формы:

 

’Процедура скрытия формы с элементами матрицы

Private Sub Command1_Click()

Form2.Hide

End Sub

 

Практическое задание

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

 

Контрольные вопросы

 

1. Объясните работу элемента управления ListBox.

2. Объясните работу элемента управления CheckBox.

 

 

Лабораторная работа 6

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

...

End Select

 

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

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

 

Таблица 2.11

Функции, предназначенные для обработки символьных данных

Функция Назначение
Asc Возвращает ASCII-код символа
Left Возвращает указанное количество символов с начала строки
Len Возвращает количество символов в строке
Mid Возвращает заданное количество символов из произвольного места строки

 

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

Синтаксис функций:

Left(выражение, число символов)

Right(выражение, число символов)

Mid(выражение, номер позиции, [ число символов ])

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

Content= "Выделение подстроки"

Print Left(Content, 3) возвращает "Выд"

Print Right (Content, 6) возвращает "строки"

Print Mid (Content, 11,3) возвращает "под"

В качестве примера рассмотрим создание программы обработки символьных данных.

Входные данные: символьные данные.

Выходные данные: сложение (конкатенация) символьных данных, определение количества символов в слове, удаление части слова, вывод числового кода символа.

Диалоговая форма

Спроектируйте интерфейс программы, состоящий из 1 формы с использованием элементов управления (рис. 2.16).

На форме располагаются 4 текстовых надписи (3 из них пустые), 3 текстовых поля для ввода и вывода данных; раскрывающийся список для выбора операции; 2 кнопки: 1 для выполнения операции (ОК), 1 для выхода из программы (Выход).

 
 


 

Свойства объектов



Поделиться:


Последнее изменение этой страницы: 2017-02-07; просмотров: 1058; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 54.166.170.195 (0.386 с.)