Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
11-АЛГ.doc
Скачиваний:
70
Добавлен:
09.02.2016
Размер:
816.64 Кб
Скачать

Основные принципы структурного программирования

Программирование — это процесс составления компьютерной программы на основе некоторого алгоритма. Структурное программирование основывается на двух важнейших принципах:

  • последовательной детализации алгоритма;

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

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

  • линейной (последовательной) структуры (Рис. 7);

  • разветвляющейся (ветвящейся) структуры (Рис. 8, Рис. 9);

  • циклической структуры (Рис. 10, Рис. 11).

Рис. 7

Рис. 8

Рис. 9

Рис. 10

Рис. 11

Методические материалы для практического занятия №11

Тема: Постановка задачи. Составление алгоритма в виде блок-схемы.

Количество часов: 2.

ЛинеЙныЕ алгоритмЫ

Упражнение 1

Задача. Найти сумму двух данных чисел.

Дано: a, b — слагаемые.

Требуется: sum — сумма значений а и b.

Метод решения: sum = a + b.

Словесная форма алгоритма:

Запросить значение переменной а

Запросить значение переменной b

Записать в переменную sum значение выражения a+b

Вывести значение переменной sum

Блок-схема:

Анализ полученных результатов.

  1. а = 4; b = 10. sum = 14.

  2. а = –10; b = –11. sum = –21.

  3. а = 45; b=10,5. sum=55,5.

Упражнение 2

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

Дано: x и y — катеты прямоугольного треугольника.

Требуется: z — гипотенуза прямоугольного треугольника.

Метод решения: z = .

Словесная форма алгоритма:

Запросить значение переменной x

Запросить значение переменной y

.

Вывести значение переменной z

Блок-схема:

Анализ полученных результатов.

  1. x = 3; y = 4. z = 5.

  2. x = 11; y = 12. z = 16,28.

  3. x = 25; y=30. z=39,05.

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

упражнение 3

Задача. Найти максимум из двух чисел.

Дано: a, b — заданные числа.

Требуется: max — максимум из чисел а и b.

Метод решения: если a>b, то max присвоить a, иначе b.

Словесная форма записи алгоритма:

Запросить значение переменной a

Запросить значение переменной b

Если a>b, то max := a, иначе max:=b

Вывести значение переменной max

Блок-схема:

Анализ полученных результатов.

a = 3; b = 4. max = 4.

a = 11; b = 2. max =11.

a = 25; b=25. max =25.

Упражнение 4

Задача. Найти максимум из трех чисел.

Дано: Переменные a, b, с.

Требуется: max — максимум из чисел а, b, с.

Метод решения. Если a>b, то max:=a, иначе max:=b. Если c>max, то max:=c.

Словесная форма записи алгоритма:

Запросить значение переменной a

Запросить значение переменной b

Запросить значение переменной c

Если a>b, то max := a, иначе max := b

Если c>max, то max := c

Вывести значение переменной max

Блок-схема:

Анализ полученных результатов.

  1. а = 4; b = 10; c = 4. max = 10.

  2. а = –10; b = 12; c = 1. max = 12.

  3. а = 45; b=10,5; c = 14. max=45.

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

Упражнение 5

Задача. Найти сумму первых n натуральных чисел.

Дано: n — количество первых натуральных чисел.

Требуется: S = 1 + 2 + …+ n — сумма первых n натуральных чисел.

Метод решения: Sn = Sn-1 + n.

Словесная форма записи алгоритма:

Запросить значение переменной n

i:=1

S:=0

Пока i<=n повторять

S := S+i

i := i+1

Конец цикла

Вывести значение переменной S

Блок-схема:

Тестирование алгоритма

Зададим количество суммируемых первых натуральных чисел n = 5. Мы должны получить значение суммы первых пяти натуральных чисел S = 15. Проведем трассировку алгоритма и запишем значения переменных i и S на каждом шаге в таблицу.

До входа в цикл:

S:=0

i:=1

РАБОТА ЦИКЛА

i на входе в тело цикла

Условие цикла

S

i на выходе из тела цикла

1

1≤5? ДА

S:=S+i

0+1 =  1 S

i:=i+1

1 +1 = 2  i

2

2≤5? ДА

S:=S+i

i:=i+1

1+2 = 3 S

2 += 3  i

3

3≤5? ДА

S:=S+i

i:=i+1

3+3 = 6  S

3 += 4  i

4

4≤5? ДА

S:=S+i

i:=i+1

6+= 10 S

4 += 5  i

5

5≤5? ДА

S:=S+i

i:=i+1

10+5 = 15 S

5 += 6  i

6

6≤5? НЕТ

ВЫХОД ИЗ ЦИКЛА

Упражнение 6 

Задача. Дано n чисел. Найти их сумму.

Дано: n — количество чисел; х1, х2, ..., хn — числа, вводимые пользователем

Требуется: S = x1 + x2 + …+ xn — сумма n чисел.

Метод решения: Sn = Sn-1 + xn.

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

Словесная форма записи алгоритма:

Запросить значение переменной n

i:=1

S:=0

Пока i<=n повторять

Запросить x

S := S+x

i := i+1

Конец цикла

Вывести значение переменной S

Блок-схема:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]