Добавил:
Negorov1337@gmail.com inst:vech.no_17 Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Laboratornaya_rabota_4_Postroenie_blok-skhem

.docx
Скачиваний:
20
Добавлен:
11.10.2020
Размер:
419.07 Кб
Скачать

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

Тема: Понятие алгоритма. Построение блок-схем линейных, разветвляющихся и циклических алгоритмов.

ТЕОРИЯ

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

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

------------------------------------------------------------------------------------------------

    1. Свойства алгоритма:

  • понятность – все действия должны входить в систему команд исполнителя, т.е. быть понятны ему;

  • дискретность - алгоритм делится на отдельные элементарные шаги;

  • определенность - каждая команда однозначно определяет действие исполнителя;

  • конечность (результативность) - алгоритм должен завершаться за конечное число шагов.

  • массовость – алгоритм позволяет решать целый класс похожих задач.

-------------------------------------------------------------------------------------------------

    1. Способы записи алгоритма:

1. Словесно-формульный

Пример.

Алгоритм деления обыкновенных дробей

1. Числитель первой дроби умножить на знаменатель второй;

2. Знаменатель второй дроби умножить на числитель второй;

3. Записать дробь, числитель которой есть результат

выполнения пункта 1, а знаменатель - результат

выполнения пункта 2.

2. Графический способ (в виде блок-схемы )

Блок схема – это графическое представление алгоритма при помощи стандартных обозначений. Блок схемы составляются в соответствии с ГОСТами. ГОСТы алгоритмов: ГОСТ 19.002-80, ГОСТ 19.003-80. На схемах алгоритмов выполняемые действия изображаются в виде отдельных блоков, которые соединяются между собой линиями связи в порядке выполнения действий. На линиях связи могут ставиться стрелки, причем, если направление связи слева направо или сверху вниз, то стрелки не ставятся. Блоки нумеруются. Внутри блока дается информация о выполняемых действиях.

Таблица 1 – Основные блоки, используемые при составлении алгоритмов
Название
Обозначение
Назначение
Пуск, Останов
Начало-конец алгоритма
Процесс
Любое вычислительное действие
Решение
Проверка условия
Цикл с параметром
Модификатор
Цикл с пред (пост) условием
Ввод-вывод
Ввод-вывод данных
Документ
Вывод на печатающее устройство
Соединитель
Используется на линиях разрыва
Комментарий
Комментарий

3. Запись алгоритма в виде последовательности команд для ЭВМ

Алгоритм, записанный на одном из языков программирования называется программой.

Типы алгоритмов

Алгоритмы могут быть: линейные, разветвляющиеся и циклические.

Линейные алгоритмы

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

Пример 1: составить алгоритм обмена значений переменных a и b.

Команды

a

b

c

a=5, b=12

5

12

-

c=a

5

12

5

a=b

12

12

5

b=c

12

5

5



П ример 2: Составить алгоритм обмена значений переменных a и b без использования дополнительной переменной.

Команды

a

b

a=3, b=7

3

7

a=a+b

10

7

b=a-b

10

3

a=a-b

7

3



П ример 3: составить алгоритм вычисления a8, используя не более 3х действий умножения (возведение в степень не использовать)

a: 2 ->4 ->16 -> 256

a=a*a | a2

a=a*a | a4

a=a*a | a8

Команды

a

a=2

2

a=a*a

4

a=a*a

16

a=a*a

256



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

Команды

a

b

a=2

2

-

a=a*a

22

-

b=a

22

22

a=a*a

24

22

a=b*a

26

22



Алгоритмы с ветвлением

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

Полная форма

Неполная форма

Пример 5. Вычислить выражение для введенного x.

Исходные данные: x.

Результат: y, или ‘функция не определена’

проверяемый случай

x>=0

y

результат

x=9

9>=0

да

y=

y=

x=-9

-9>=0

нет

-

функция не определена



П ример 6. Вычислить выражение для введенного x.

проверяемый случай

x>=0

y

результат

x=9

9>=0

да

y=

y=

x=-9

-9>=0

нет

-

функция не определена



Пример 7. Выбрать максимальное из 2х чисел a и b.

1 вариант 2 вариант

проверяемый случай

x

y

результат

a=9

b=15

9>15

нет

15>9

да

15

a=18

b=3

18>3

да

-

18

a=7

b=7

7>7

нет

7>7

нет

числа равны



Пример 8. Выбрать максимальное из трех чисел a, b, c.

проверяемый случай

x

max

y

результат

a=9

b=15

c=2

9>15

нет

15

2>15

нет

15

a=8

b=3

с=22

8>3

да

8

22>8

да

22

a=12

b=9

c=1

17>9

нет

17

1>17

нет

17



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

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

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

Существует три вида циклов:

 Цикл с параметром (арифметический)

 Цикл с предусловием

 Цикл с постусловием

а) Арифметический цикл – цикл, в котором заранее известно число его повторений.

б) Цикл с предусловием. Применяется для выполнения тела цикла несколько раз, при проверке условия до выполнения тела цикла.

в) Цикл с постусловием. Применяется при необходимости выполнения тела цикла несколько раз до проверки условия выхода из цикла.

Задание к лабораторной работе

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

  1. По длине ребра куба найти площадь грани, площадь полной поверхности и объем куба.

  2. Найти площадь кольца с радиусами r1 и r2.

  3. Вычислить площадь треугольника по трем сторонам(по формуле Герона).

  4. Вычислить площадь параллелограмма по двум сторонам и углу между ними, заданному в градусах.

  5. Вычисление суммы цифр введенного натурального двухзначного числа.

  6. По координатам трёх вершин некоторого треугольника найти его площадь и периметр.

  7. Вводятся Х и Y. Если Х больше Y, то произвести их обмен.

  8. Из чисел A, B, C, D выбрать максимальное.

  9. Введено четырехзначное число. Найти количество четных цифр.

  10. Введено трехзначное число. Найти сумму четных цифр.

  11. Введено четырехзначное число. Найти среднее арифметическое нечетных цифр.

  12. Определить, существует ли треугольник с заданными сторонами a, b, c.

  13. Найти сумму делителей числа n.

  14. Найти сумму 1 + 1/3 + 1/5 +...(N слагаемых).

  15. Подсчитать сумму двухзначных чисел, сумма цифр которых не превышает 7.

  16. Задана арифметическая прогрессия 2; 5; … . Определите наименьшее количество членов прогрессии, начиная с первого, сумма которых превышает 50.

  17. Вывести таблицу значений функции y= sin2x – cosx на интервале [-,] с шагом /10.

  18. Найти сумму: S = х+2х+3х... (n слагаемых)