Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

31201512-23 / 31201512-23

.doc
Скачиваний:
36
Добавлен:
31.05.2015
Размер:
313.34 Кб
Скачать

10

Министерство образования Республики Беларусь

Белорусский национальный технический университет

Строительный факультет

Кафедра "Строительная механика"

Контрольная работа № 1

по дисциплине "Информатика"

на тему "Программирование алгоритмов с линейной,

разветвляющейся и циклической структурами

в среде Visual Basic"

Выполнил: студент Серехан В.С.

группа 31201512

зачетная книжка № 31201512-23

Проверил:

Минск 2012

Содержание

стр.

1. Задание 1 3

2. Задание 2 3

2.1. Блок-схема алгоритма задачи 3

2.2. Порядок разработки приложения 5

2.3. Программный код проекта 5

2.4. Тестовый пример и экранная форма разработанного проекта 5

3. Задание 3 6

3.1. Блок-схема алгоритма задачи 6

3.2. Порядок разработки приложения 8

3.3. Программный код проекта 8

3.4. Тестовый пример и экранная форма разработанного проекта 8

Литература 10

1. Задание 1

Виды представления алгоритмов

Существуют следующие формы представления алгоритма:

  • словесная (текстуальная) (для достаточно сложных алгоритмов описание становится слишком громоздким и ненаглядным, вследствие этого такая форма представления обычно используется лишь на начальных стадиях разработки алгоритма);

  • графическая (форма представления алгоритмов является более компактной и наглядной: алгоритм изображается в виде последовательности связанных между собой блоков (символов), каждый из которых соответствует выполнению одного или нескольких операторов, такое графическое представление называется блок-схемой алгоритма);

  • на языках программирования (алгоритм, записанный на языке программирования, называется программой).

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

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

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

2. Задание 2

Условие: Разработать алгоритм и приложение в среде Visual Basic, позволяющее вычислить значение Z по формуле. Алгоритм представить в виде блок-схемы.

2.1. Блок-схема алгоритма задачи

В блок-схеме необходимо предусмотреть ввод исходных данных, проверку

условия, вывод результата.

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

В блоке 2 производится ввод исходных данных. В блоках 3 и 4 определяем максимум. В блоке 5 происходит проверка условия: a+b+c>=0, если ответ положительный – высчитываем значения z. Если же ответ отрицательный переходим в блок 6. В нем происходит проверка условия: a>=0. При положительном ответе высчитываем значение z, при отрицательном - переходим в блок 7. В блоке 7 проверяем условие a<0, при положительном ответе высчитываем значение z, при отрицательном присваиваем значению z=”Ошибка”. В блоке под номером 8 выводим результат z.

Блок-схема задачи приведена на рис.2.1

Рис. 2.1. Блок-схема алгоритма задачи

2.2. Порядок разработки приложения

Создаем новый проект в VisualBasic. На чистую форму проекта вставляем нужные компоненты. В событии кнопки прописываем код программы. Проверяем на работоспособность и возникновение ошибок. Создаем исполняемый exe файл.

2.3. Программный код проекта

Private Sub Command1_Click()

'Описание переменных

Dim a, b, c, z, x1, x2 As Single

Dim max1, max2 As Single

'Ввод исходных данных

a = Text1

b = Text2

c = Text3

'Вычисление максимума

x1 = b + c

x2 = b - c

If a > x1 Then max1 = a Else max1 = b + c

If c > x2 Then max2 = c Else max2 = b - c

'Реализация алгоритма

If a + b + c >= 0 Then z = 1.5 * max1 - Abs(c) Else If a >= 0 Then z = 2.2 * (1 - a) + (b / Abs(c + 1)) Else If a < 0 Then z = max2 + (a * a) Else z = "Ошибка"

Text4 = z

End Sub

2.4. Тестовый пример и экранная форма разработанного проекта

Зададим следующие значения для решения задачи.

A = -5; B = 5; C = 7

Результат выполнения программы приведен рис. 2.2.

Рис. 2.2. Форма разработанного приложения

3. Задание 3

Условие: Разработать алгоритм и приложение в среде Visual Basic, позво-

ляющее для последовательности элементов массива M с использованием циклов

вычислить значение Z, определяемое из таблицы. Алгоритм представить в виде

блок-схемы.

3.1. Блок-схема алгоритма задачи

В блок-схеме необходимо предусмотреть ввод исходных данных, проверку

условия, вывод результата.

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

В блоке 2 создаем цикл с параметром для ввода элементов массива. В блоке 3 вводим элементы массива. Создаем цикл с параметром в блоке 5 для вычисления значений. В блоке 6 и 7 вычисляем значение A. Значение параметра B вычисляем значение переменной B. Для вычисления значения C создаем цикл с параметром (блок 9).

Высчитывание значения Z происходит в блоке 11, а в 12 вывод его на экран.

Блок-схема задачи приведена на рис.3.1

Рис. 3.1. Блок-схема алгоритма задачи

3.2. Порядок разработки приложения

Создаем новый проект в VisualBasic. На чистую форму проекта вставляем нужные компоненты. В событии кнопки прописываем код программы. Проверяем на работоспособность и возникновение ошибок. Создаем исполняемый exe файл.

3.3. Программный код проекта

Private Sub Command1_Click()

Dim m(15) As Long

Dim a, b, c, z As Long

Dim x1, n As Long

x1 = 0

c = 1

n = Text2

'Создание и ввод массива

For i = 1 To 15

m(i) = Val(InputBox("Введите элемент"))

Label1 = Label1 + Chr(13) + Str(m(i))

Next i

For i = 1 To 15

'Вычисление А

If m(i) > 0 Then

x1 = x1 + 1

End If

If x1 = 2 Then

a = m(i)

End If

'Вычисление B

If i Mod 2 = 0 Then

Else

b = b + m(i)

End If

Next i

'Вычисление С

For i = 1 To n

If m(i) <> 0 Then

c = Abs(m(i)) * c

End If

Next i

c = c ^ (1 / n)

z = c + (a / 10) + (b / (10 + a))

Text1 = z

End Sub

3.4. Тестовый пример и экранная форма разработанного проекта

Зададим следующие значения для решения задачи.

N = 5

8; 6; -7; -3; 4; 5; 6; 7; -8; -10; -11; 6; 4; 2; 3.

Форма ввода элементов массива приведена на рис. 3.2

Результат выполнения программы приведен рис. 3.3.

Рис. 3.2. Форма ввода элементов массива

Рис. 2.3. Форма разработанного приложения

Литература

1. Информатика. Базовый курс. 2-е издание / Под ред. С.В. Симоновича –

Спб.: Питер, 2011. – 640 с.

2. Чичко А.Н. Информатика. Практикум: учебное пособие / А.Н. Чичко,

О.А. Сачек, О.И. Чичко – Мн.: БНТУ, 2011 – 399 с.

3. Культин Н.Б. Visual Basic для студентов и школьников / Изд. БХВ, Спб.:

Питер, 2010. – 416 с.

4. Трепачко В.М. Программирование задач на алгоритмическом языке

QBasic: методическое пособие по дисциплине "Информатика" для студентов спе-

циальности 1-70 02 11 "Промышленное и гражданское строительство" – Мн.:

БНТУ, 2005 – 62 с.

5. ГОСТ 19.701-90 ЕСПД. Схемы алгоритмов, программ, данных и систем.

Обозначения условные и правила выполнения. – Введ. 1992–01–01.– М.: Изд-во

стандартов, 1991. – 26 с.

6. Боглаев Ю.П. Вычислительная техника и программирование. – М.: Выс-

шая школа, 1990. – 543 с.

7. Фурунжиев Р.И. – Вычислительная техника: практикум. – Мн.: Вышэйшая

школа, 1985. – 254 с.