Лекция 1 по теме "Алгоритмизация и программирование".

  • ppt
  • 02.05.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Алгоритмизация.ppt

ОСНОВЫ АЛГОРИТМИЗАЦИИ

Паскаль

02.05.2020

2

Алгоритм – это последовательность действий, которые должен выполнить исполнитель для достижения конкретной цели.

Алгоритм содержит несколько шагов.
Шаг – отдельное законченное действие.

02.05.2020

3

Исполнитель - это объект, умеющий выполнять определенный набор действий. (человек, животное, робот, компьютер).
Система команд исполнителя (СКИ) – это все команды, которые исполнитель умеет выполнять.
Среда исполнителя – обстановка, в которой функционирует исполнитель.

02.05.2020

4

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

Дискретность (прерывность, раздельность) – разбиение алгоритма на шаги;
Понятность – каждый шаг алгоритма должен быть понятен исполнителю;
Точность - указание последовательности шагов;
Результативность - получение результата за конечное число шагов;
Массовость – использование алгоритма для решения однотипных задач.

02.05.2020

5

Задание

Назови исполнителей следующих видов работ:
уборка мусора во дворе;
обучение детей в школе;
вождение автомобиля;
ответ у доски;
приготовление пищи;
печатание документа на принтере.

Сформулируй СКИ для каждого из этих исполнителей, назови среду каждого исполнителя.

02.05.2020

6

Способы описания алгоритма:

Словесный (письменно или устно);
Графический (стрелками, рисунками, блок – схемами);
Программный (алгоритмический язык).

02.05.2020

7

Графический способ

Блок начало/конец

Блок ввод/вывод

Блок действия

Блок условия

02.05.2020

8

Виды алгоритмов:

Линейный – содержит несколько шагов и все шаги выполняются последовательно друг за другом;
Разветвляющийся порядок выполнения шагов изменяется в зависимости от некоторых условий;
Циклический – определенная последовательность шагов повторяется несколько раз в зависимости от заданной величины (параметра цикла).

02.05.2020

9

1. Найдите произведение произвольных чисел А и В.

ЭТАПЫ РЕШЕНИЯ ЗАДАЧ НА ЭВМ

02.05.2020

11

1 этап. Постановка задачи

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

02.05.2020

12

2 этап. Анализ и исследование задачи, модели

анализ существующих аналогов;
анализ технических и программных средств;
pазpаботка математической модели;
разработка структур данных.

02.05.2020

13

3 этап. Разработка алгоритма

выбор метода проектирования алгоритма;
выбор формы записи алгоритма (блок-схемы, псевдокод и др.);
выбоp тестов и метода тестиpования;
проектирование алгоритма

02.05.2020

14

4 этап. Пpогpаммиpование

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

02.05.2020

15

5 этап. Тестиpование и отладка

синтаксическая отладка;
отладка семантики и логической стpуктуpы;
тестовые pасчеты и анализ pезультатов тестиpования;
совершенствование пpогpаммы

02.05.2020

16

6 этап. Получение и анализ результатов

Анализ результатов решения задачи и уточнение в случае необходимости математической модели с повторным выполнением этапов 2 — 5

02.05.2020

17

7 этап. Сопровождение программы

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

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

02.05.2020

19

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

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

02.05.2020

20

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

Входные данные: a, b, c.
Выходные данные: S, P.
 где r - полупериметр. 

                                                                                                

02.05.2020

21

Ветвление

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

02.05.2020

22

Блок-схемы

02.05.2020

23

3. Вычислить корни квадратного уравнения.

Входные данные: a, b, c.
Выходные данные: x1, x2.

02.05.2020

24

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

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

02.05.2020

25

Алгоритм циклической структуры с предусловием

Пока <условие>
повторять
<тело цикла>

02.05.2020

26

Алгоритм циклической структуры с постусловием

Выполнять <тело цикла>
до тех пор <условие>

02.05.2020

27

Алгоритм циклической структуры без условия

i - параметр

02.05.2020

28

Замечание

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

02.05.2020

29

Решение задач

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

02.05.2020

30

4. Найти наибольший общий делитель (НОД) двух натуральных чисел А и В.

Входные данные: А и В.
Выходные данные: А - НОД.

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

02.05.2020

31

5. Вычислить факториал числа N (N!=1 2 3 … N).

Входные данные: N- целое число, факториал которого необходимо вычислить.
Выходные данные: factorial- значение факториала числа N, произведение чисел от 1 до N, целое число.
Промежуточные данные: i- целочисленная переменная, принимающая значения от 2 до N с шагом 1, параметр цикла.

02.05.2020

32

02.05.2020

33

6. Вычислить сумму натуральных четных чисел, не превышающих N.

Входные данные: N - целое число.
Выходные данные: S - сумма четных чисел.
Промежуточные данные: i - переменная, принимающая значения от 2 до N с шагом 2, следовательно, также имеет целочисленное значение.

02.05.2020

34