Типы алгоритмов — Гипермаркет знаний. Б6




Теоретическая справка

Алгоритм – описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.

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

1. Дискретность (алгоритм должен состоять из конкретных действий, следующих в определенном порядке);

2. Детерминированность (любое действие должно быть строго и недвусмысленно определено в каждом случае);

3. Конечность (каждое действие и алгоритм в целом должны иметь возможность завершения);

4. Массовость (один и тот же алгоритм можно использовать с разными исходными данными);

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

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

1. Линейный алгоритм (описание действий, которые выполняются однократно в заданном порядке);

2. Циклический алгоритм (описание действий, которые должны повторятся указанное число раз или пока не выполнено задание);

3. Разветвляющий алгоритм (алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий)

Примеры решения задач

Исполнитель Чертёжник перемещается на координатной плоскости, оставляя след в виде линии. Чертёжник может выполнять команду Сместиться на (a, b) (где a,b – целые числа), перемещающую Чертёжника из точки c координатами (x, y) в точку с координатами (x + a, y + b). Если числа a, b положительные, значение соответствующей координаты увеличивается; если отрицательные – уменьшается.

Например, если Чертёжник находится в точке с координатами (9, 5), то команда Сместиться на

(1, -2) переместит Чертёжника в точку (10, 3).

Повтори k раз

Команда1 Команда2 Команда3

Конец

означает, что последовательность команд Команда1 Команда2 Команда3 повторится k раз. Чертёжнику был дан для исполнения следующий алгоритм:

Повтори 3 раз

Сместиться на (-2, -3) Сместиться на (3, 2) Сместиться на (-4, 0)

Конец

На какую одну команду можно заменить этот алгоритм, чтобы Чертёжник оказался в той же точке, что и после выполнения алгоритма?

1) Сместиться на (-9, -3)

2) Сместиться на (-3, 9)

3) Сместиться на (-3, -1)

4) Сместиться на (9, 3)

Решение:

Такое задание лучше всего решать последовательно.

В цикле Чертёжник выполняет последовательность команд

– Сместиться на (-2, -3)

– Сместиться на (3, 2)

– Сместиться на (-4, 0),

которую можно заменить одной командой Сместиться на (-2+3-4, -3+2+0), т.е. Сместиться на (-3, -1).

Так как цикл повторяется 3 раза, то полученная команда Сместиться на (-3, -1) выполнится 3 раза. Значит цикл можно заменить командой Сместиться на (-3*3, -1*3), т.е. Сместиться на (-9, -3). Таким образом, получаем команду Сместиться на (-9, -3) на которую можно заменить весь алгоритм.

Задачи для тренировки

1. Исполнитель Чертёжник пе­ре­ме­ща­ет­ся на ко­ор­ди­нат­ной плоскости, остав­ляя след в виде линии. Чертёжник может вы­пол­нять команду Сместиться на (a, b) (где a, b - целые числа), пе­ре­ме­ща­ю­щую Чертёжника из точки с координатами (x, у) в точку с ко­ор­ди­на­та­ми (x + а, у + b). Если числа a, b положительные, зна­че­ние соответствующей ко­ор­ди­на­ты увеличивается; если отрицательные, уменьшается.

Например, если Чертёжник на­хо­дит­ся в точке с координатами (4, 2), то ко­ман­да Сместиться на (2, −3) пе­ре­ме­стит Чертёжника в точку (6, −1).

Повтори k раз

Команда1 Команда2 Ко­ман­даЗ

Конец

означает, что по­сле­до­ва­тель­ность команд Команда1 Команда2 КомандаЗ по­вто­рит­ся k раз.

Чертёжнику был дан для ис­пол­не­ния следующий алгоритм:

Повтори 2 раз

Сместиться на (−6, −4)

После вы­пол­не­ния этого ал­го­рит­ма Чертёжник вер­нул­ся в ис­ход­ную точку. Какую ко­ман­ду надо по­ста­вить вместо ко­ман­ды Команда1 ?

1) Сместиться на (−2, −1)

2) Сместиться на (1, 1)

3) Сместиться на (−4, −2)

4) Сместиться на (2, 1)

2. Сместиться на (a, b)

Например, если Чертёжник на­хо­дит­ся в точке с ко­ор­ди­на­та­ми (4, 2), то ко­ман­да Сме­стить­ся на(2, −3) пе­ре­ме­стит Чертёжника в точку (6, −1).

Повтори k раз

Команда1 Команда2 Ко­ман­даЗ

Конец

Команда1 Команда2 КомандаЗ по­вто­рит­ся k раз.

Повтори 4 paз

Команда1 Сме­стить­ся на (3, 3) Сме­стить­ся на (1,−2) Конец

Сместиться на (−8, 12)

Команда1 ?

1) Сместиться на (−2, −4)

2) Сместиться на (4,−13)

3) Сместиться на (2, 4)

4) Сместиться на (−8, −16)

3. Исполнитель Чертёжник пе­ре­ме­ща­ет­ся на ко­ор­ди­нат­ной плоскости, остав­ляя след в виде линии. Чертёжник может вы­пол­нять ко­ман­ду Сместиться на (a, b) (где a, b - целые числа), пе­ре­ме­ща­ю­щую Чертёжника из точки с координатами (x, у) в точку с ко­ор­ди­на­та­ми (x + а, у + b). Если числа a, b положительные, зна­че­ние со­от­вет­ству­ю­щей ко­ор­ди­на­ты увеличивается; если отрицательные, уменьшается.

Повтори k раз

Команда1 Команда2 Ко­ман­даЗ

Конец

означает, что по­сле­до­ва­тель­ность ко­манд Команда1 Команда2 КомандаЗ по­вто­рит­ся k раз.

Чертёжнику был дан для ис­пол­не­ния сле­ду­ю­щий алгоритм:

Повтори 3 paз

Сместиться на (3, 9)

После вы­пол­не­ния этого ал­го­рит­ма Чертёжник вер­нул­ся в ис­ход­ную точку. Какую ко­ман­ду надо по­ста­вить вме­сто ко­ман­ды Команда1 ?

1) Сместиться на (3, 4)

2) Сместиться на (−5, −10)

3) Сместиться на (−9, −12)

4) Сместиться на (−3, −4)

4. Исполнитель Чертёжник пе­ре­ме­ща­ет­ся на ко­ор­ди­нат­ной плоскости, остав­ляя след в виде линии. Чертёжник может вы­пол­нять ко­ман­ду Сместиться на (a, b) (где a, b - целые числа), пе­ре­ме­ща­ю­щую Чертёжника из точки с координатами (x, у) в точку с ко­ор­ди­на­та­ми (x + а, у + b). Если числа a, b положительные, зна­че­ние со­от­вет­ству­ю­щей ко­ор­ди­на­ты увеличивается; если отрицательные, уменьшается.

Например, если Чертёжник на­хо­дит­ся в точке с ко­ор­ди­на­та­ми (4, 2), то ко­ман­да Сме­стить­ся на (2, −3) пе­ре­ме­стит Чертёжника в точку (6, −1).

Повтори k раз

Команда1 Команда2 Ко­ман­даЗ

Конец

означает, что по­сле­до­ва­тель­ность ко­манд Команда1 Команда2 КомандаЗ по­вто­рит­ся k раз.

Чертёжнику был дан для ис­пол­не­ния сле­ду­ю­щий алгоритм:

Повтори 3 paз

Команда1 Сме­стить­ся на (3, 2) Сме­стить­ся на (2, 1) Конец

Сместиться на (−9, −6)

После вы­пол­не­ния этого ал­го­рит­ма Чертёжник вер­нул­ся в ис­ход­ную точку. Какую ко­ман­ду надо по­ста­вить вме­сто ко­ман­ды Команда1 ?

1) Сместиться на (−6, −3)

2) Сместиться на (4, 3)

3) Сместиться на (−2, −1)

4) Сместиться на (2, 1)

5. Исполнитель Чертёжник пе­ре­ме­ща­ет­ся на ко­ор­ди­нат­ной плоскости, остав­ляя след в виде линии. Чертёжник может вы­пол­нять ко­ман­ду Сместиться на (a, b) (где a, b - целые числа), пе­ре­ме­ща­ю­щую Чертёжника из точки с координатами (x, у) в точку с ко­ор­ди­на­та­ми (x + а, у + b). Если числа a, b положительные, зна­че­ние со­от­вет­ству­ю­щей ко­ор­ди­на­ты увеличивается; если отрицательные, уменьшается.

Повтори k раз

Команда1 Команда2 Ко­ман­даЗ

Конец

означает, что по­сле­до­ва­тель­ность ко­манд Команда1 Команда2 КомандаЗ по­вто­рит­ся k раз.

Чертёжнику был дан для ис­пол­не­ния сле­ду­ю­щий алгоритм:

Повтори 2 paз

Команда1 Сме­стить­ся на (3, 3) Сме­стить­ся на (1, −2) Конец

Сместиться на (4, −6)

После вы­пол­не­ния этого ал­го­рит­ма Чертёжник вер­нул­ся в ис­ход­ную точку. Какую ко­ман­ду надо по­ста­вить вме­сто ко­ман­ды Команда1 ?

1) Сместиться на (6, −2)

2) Сместиться на (−8, 5)

3) Сместиться на (−12, 4)

4) Сместиться на (−6, 2)

6. Исполнитель Чертёжник пе­ре­ме­ща­ет­ся на ко­ор­ди­нат­ной плоскости, остав­ляя след в виде линии. Чертёжник может вы­пол­нять ко­ман­ду Сместиться на (a, b) (где a, b - целые числа), пе­ре­ме­ща­ю­щую Чертёжника из точки с координатами (x, у) в точку с ко­ор­ди­на­та­ми (x + а, у + b). Если числа a, b положительные, зна­че­ние со­от­вет­ству­ю­щей ко­ор­ди­на­ты увеличивается; если отрицательные, уменьшается.

Например, если Чертёжник на­хо­дит­ся в точке с координатами (4, 2), то ко­ман­да Сме­стить­ся на (2, −3) пе­ре­ме­стит Чертёжника в точку (6, −1).

Повтори k раз

Команда1 Команда2 Ко­ман­даЗ

Конец

означает, что по­сле­до­ва­тель­ность ко­манд Команда1 Команда2 КомандаЗ по­вто­рит­ся k раз.

Чертёжнику был дан для ис­пол­не­ния сле­ду­ю­щий алгоритм:

Повтори 4 paз

Команда1 Сме­стить­ся на (1, 3) Сме­стить­ся на (1, −2) Конец

Сместиться на (−4, −12)

После вы­пол­не­ния этого ал­го­рит­ма Чертёжник вер­нул­ся в ис­ход­ную точку. Какую ко­ман­ду надо по­ста­вить вме­сто ко­ман­ды Команда1 ?

1) Сместиться на (1,−2)

2) Сместиться на (12, 4)

3) Сместиться на (2, 11)

4) Сместиться на (−1, 2)

7. Исполнитель Чертёжник пе­ре­ме­ща­ет­ся на ко­ор­ди­нат­ной плоскости, остав­ляя след в виде линии. Чертёжник может вы­пол­нять ко­ман­ду Сместиться на (a, b) (где a, b - целые числа), пе­ре­ме­ща­ю­щую Чертёжника из точки с координатами (x, у) в точку с ко­ор­ди­на­та­ми (x + а, у + b). Если числа a, b положительные, зна­че­ние со­от­вет­ству­ю­щей ко­ор­ди­на­ты увеличивается; если отрицательные, уменьшается.

Например, если Чертёжник на­хо­дит­ся в точке с координатами (4, 2), то ко­ман­да Сме­стить­ся на (2, −3) пе­ре­ме­стит Чертёжника в точку (6, −1).

Повтори k раз

Команда1 Команда2 Ко­ман­даЗ

Конец

означает, что по­сле­до­ва­тель­ность ко­манд Команда1 Команда2 КомандаЗ по­вто­рит­ся k раз.

Чертёжнику был дан для ис­пол­не­ния сле­ду­ю­щий алгоритм:

Повтори 4 paз

Команда1 Сме­стить­ся на (3, 2) Сме­стить­ся на (2, 1) Конец

Сместиться на (−12, −8)

После вы­пол­не­ния этого ал­го­рит­ма Чертёжник вер­нул­ся в ис­ход­ную точку. Какую ко­ман­ду надо по­ста­вить вме­сто ко­ман­ды Команда1 ?

1) Сместиться на (−8, −4)

2) Сместиться на (−2, −1)

3) Сместиться на (7, 5)

4) Сместиться на (2, 1)

8. Вперёд n Направо m

Повтори 9 [Вперёд 50 На­пра­во 60]

1) правильный шестиугольник

2) правильный треугольник

3) незамкнутая ло­ма­ная линия

4) правильный девятиугольник

9. Исполнитель Че­ре­паш­ка пе­ре­ме­ща­ет­ся на экра­не компьютера, остав­ляя след в виде линии. В каж­дый кон­крет­ный мо­мент из­вест­но по­ло­же­ние ис­пол­ни­те­ля и на­прав­ле­ние его движения. У ис­пол­ни­те­ля су­ще­ству­ет две команды: Вперёд n (где n - целое число), вы­зы­ва­ю­щая пе­ре­дви­же­ние Че­ре­паш­ки на n шагов в на­прав­ле­нии движения; Направо m (где m - целое число), вы­зы­ва­ю­щая из­ме­не­ние на­прав­ле­ния дви­же­ния на m гра­ду­сов по ча­со­вой стрелке. За­пись Повтори k [Команда1 Команда2 КомандаЗ] означает, что по­сле­до­ва­тель­ность ко­манд в скоб­ках по­вто­рит­ся k раз.

Черепашке был дан для ис­пол­не­ния сле­ду­ю­щий алгоритм: Повтори 7 [Вперёд 70 На­пра­во 120] . Какая фи­гу­ра по­явит­ся на экране?

1) правильный шестиугольник

2) незамкнутая ло­ма­ная линия

3) правильный се­ми­уголь­ник

4) правильный треугольник

10. Исполнитель Че­ре­паш­ка пе­ре­ме­ща­ет­ся на экра­не компьютера, остав­ляя след в виде линии. В каж­дый кон­крет­ный мо­мент из­вест­но по­ло­же­ние ис­пол­ни­те­ля и на­прав­ле­ние его движения. У ис­пол­ни­те­ля су­ще­ству­ет две команды: Вперёд n (где n - целое число), вы­зы­ва­ю­щая пе­ре­дви­же­ние Че­ре­паш­ки на n шагов в на­прав­ле­нии движения; Направо m (где m - целое число), вы­зы­ва­ю­щая из­ме­не­ние на­прав­ле­ния дви­же­ния на m гра­ду­сов по ча­со­вой стрелке. За­пись Повтори k [Команда1 Команда2 КомандаЗ] означает, что по­сле­до­ва­тель­ность ко­манд в скоб­ках по­вто­рит­ся k раз.

Черепашке был дан для ис­пол­не­ния сле­ду­ю­щий алгоритм: Повтори 9 [Вперёд 70 На­пра­во 90] . Какая фи­гу­ра по­явит­ся на экране?

2) правильный девятиугольник

3) правильный восьмиугольник

4) правильный четырёхугольник

11. Исполнитель Че­ре­паш­ка пе­ре­ме­ща­ет­ся на экра­не компьютера, остав­ляя след в виде линии. В каж­дый кон­крет­ный мо­мент из­вест­но по­ло­же­ние ис­пол­ни­те­ля и на­прав­ле­ние его движения. У ис­пол­ни­те­ля су­ще­ству­ет две команды: Вперёд n (где n - целое число), вы­зы­ва­ю­щая пе­ре­дви­же­ние Че­ре­паш­ки на n шагов в на­прав­ле­нии движения; Направо m (где m - целое число), вы­зы­ва­ю­щая из­ме­не­ние на­прав­ле­ния дви­же­ния на m гра­ду­сов по ча­со­вой стрелке. За­пись Повтори k [Команда1 Команда2 КомандаЗ] означает, что по­сле­до­ва­тель­ность ко­манд в скоб­ках по­вто­рит­ся k раз.

Черепашке был дан для ис­пол­не­ния сле­ду­ю­щий алгоритм: Повтори 5 [Вперёд 80 На­пра­во 60] . Какая фи­гу­ра по­явит­ся на экране?

1) правильный пятиугольник

2) правильный треугольник

3) правильный ше­сти­уголь­ник

4) незамкнутая ло­ма­ная линия

12. Исполнитель Че­ре­паш­ка пе­ре­ме­ща­ет­ся на экра­не компьютера, остав­ляя след в виде линии. В каж­дый кон­крет­ный мо­мент из­вест­но по­ло­же­ние ис­пол­ни­те­ля и на­прав­ле­ние его движения. У ис­пол­ни­те­ля су­ще­ству­ет две команды: Вперёд n (где n - целое число), вы­зы­ва­ю­щая пе­ре­дви­же­ние Че­ре­паш­ки на n шагов в на­прав­ле­нии движения; Направо m (где m - целое число), вы­зы­ва­ю­щая из­ме­не­ние на­прав­ле­ния дви­же­ния на m гра­ду­сов по ча­со­вой стрелке. За­пись Повтори k [Команда1 Команда2 КомандаЗ] означает, что по­сле­до­ва­тель­ность ко­манд в скоб­ках по­вто­рит­ся k раз.

Черепашке был дан для ис­пол­не­ния сле­ду­ю­щий алгоритм: Повтори 5 [Вперёд 80 На­пра­во 90] . Какая фи­гу­ра по­явит­ся на экране?

1) незамкнутая ло­ма­ная линия

2) правильный девятиугольник

3) правильный пятиугольник

4) правильный четырёхугольник


Теоретическая справка

Примеры решения задач

Задачи для тренировки


Теоретическая справка

Примеры решения задач

Задачи для тренировки


Теоретическая справка

Примеры решения задач

Задачи для тренировки


Теоретическая справка

Примеры решения задач

Задачи для тренировки


Теоретическая справка

Примеры решения задач

Задачи для тренировки


Теоретическая справка

Примеры решения задач

Задачи для тренировки


Теоретическая справка

Примеры решения задач

Задачи для тренировки


Теоретическая справка

Примеры решения задач

Задачи для тренировки


Теоретическая справка

Примеры решения задач

Задачи для тренировки

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

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

Линейные алгоритмы;
алгоритмы с ветвлениями;
алгоритмы с повторениями.

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

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

Например, линейным является следующий алгоритм посадки дерева:

1) выкопать в земле ямку;
2) опустить в ямку саженец;
3) засыпать ямку с саженцем землей;
4) полить саженец водой.

С помощью блок-схемы данный алгоритм можно изобразить так:

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

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

Логику принятия решения можно описать так:

ЕСЛИ <условие> ТО <действия 1> ИНАЧЕ <действия 2>

Примеры:

ЕСЛИ хочешь бытьздоров , ТО закаляйся, ИНАЧЕ валяйся весь день на диване;
ЕСЛИ низко ласточки летают, ТО будет дождь, ИНАЧЕ дождя не будет;
ЕСЛИ уроки выучены, ТО иди гулять, ИНАЧЕ учи уроки.

В некоторых случаях <действия 2> могут отсутствовать;

ЕСЛИ <условие> ТО <действия 1>

Пример :

ЕСЛИ назвался груздем, ТО полезай в кузов.

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

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

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

Из трёх монет одинакового достоинства одна фальшивая (более легкая). Как ее найти с помощью одного взвешивания на чашечных весах без гирь?

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

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

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

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

Рассмотрим пример из математики.

Натуральное число называют простым, если оно имеет только два делителя: единицу и само это число1.

2, 3, 5, 7 - простые числа; 4, 6, 8 - нет. В III веке до нашей эры греческий математик Эратосфен предложил следующий алгоритм для нахождения всех простых чисел, меньших заданного числа n:

1) выписать все натуральные числа от 1 до n;
2) вычеркнуть 1;
3) подчеркнуть наименьшее из неотмеченных чисел;
4) вычеркнуть все числа, кратные подчеркнутому на предыдущем шаге;
5) если в списке имеются неотмеченные числа, то перейти к шагу 3, в противном случае все подчеркнутые числа - простые.

Это циклический алгоритм. При его выполнении повторение шагов 3-5 происходит, пока в исходном списке остаются неотмеченные числа.

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

Напомним, что число 1 не относят ни к составным (имеющим более двух делителей), ни к простым числам.

Самое главное

В зависимости от порядка выполнения команд можно выделить три типа алгоритмов:

> линейные алгоритмы;
> алгоритмы с ветвлениями;
> алгоритмы с повторениями.

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

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

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

Вопросы и задания

1. Какие алгоритмы называют линейными?
2. Приведите пример линейного алгоритма,
3. Исполнитель «Вычислитель» умеет выполнять только две команды: умножать на 2 и прибавлять Придумайте для него наиболее короткий план получения из О числа 50.
4. Какая форма организации действий называется ветвлением?
5. Какие условия должна была выполнить героиня скази «Гуси-лебеди»?
6. Приведите пример алгоритма, содержащего ветвление»
7. Прочитайте отрывок из стихотворения Дж. Родари «Чем пахнут ремесла?»:

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

Перефразируйте
о профессиях с помощью слов «ЕСЛИ... ТО»/

8. Вспомните, герои каких русских народных сказок совершают выбор, определяющий их судьбу.
9. Из 9 монет одинакового достоинства одна фальшивая (более легкая). За сколько взвешиваний на чашечных весах без гирь вы можете ее определить?
10. Какая форма организации действий называется повторением?
11. Приведите пример алгоритма, содержащего повторение.
12. В каких известных вам литературных произведениях имеет место циклическая форма организации действий?
13. Где окажется исполнитель, выполнивший 16 раз подряд следующую группу команд?

пройти 10 метров вперед

повернуть на 90° по часовой стрелке

14. Какую группу действий и сколько раз следует повторить при решении следующей задачи?

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

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

Используя эту блок-схему, разработайте рациональные алгоритмы получения из числа 0 чисел 1024 и 500.

Босова Л. Л. Информатика: Учебник для 6 класса / Л. Л. Босова. - 3-е изд., испр. и доп. - М.: БИНОМ. Лаборатория знаний, 2005. - 208 с.: ил.

Содержание урока конспект урока и опорный каркас презентация урока интерактивные технологии акселеративные методы обучения Практика тесты, тестирование онлайн задачи и упражнения домашние задания практикумы и тренинги вопросы для дискуссий в классе Иллюстрации видео- и аудиоматериалы фотографии, картинки графики, таблицы, схемы комиксы, притчи, поговорки, кроссворды, анекдоты, приколы, цитаты Дополнения рефераты шпаргалки фишки для любознательных статьи (МАН) литература основная и дополнительная словарь терминов Совершенствование учебников и уроков исправление ошибок в учебнике замена устаревших знаний новыми Только для учителей календарные планы учебные программы методические рекомендации

МБОУ «Глинновская СОШ»

Новооскольского района

Белгородской области

План – конспект урока

(9 класс)

«Алгоритмы, понятия алгоритма, свойства алгоритма. Исполнители алгоритма»

Подготовила:

Учитедь информатика

Тарасова Н.Г.

2011

Тема: Понятие алгоритмов, свойства алгоритма. Исполнители алгоритмов, система команд исполнителя. Способы записей алгоритмов. Формальное исполнение алгоритмов.

Тип урока : ознакомление с новым материалом.

Цели:

  1. Способствовать развитию алгоритмического мышления;
  2. Дать понятие алгоритма, рассказать о свойствах, дать классификацию алгоритмов;
  3. Познакомить с формой записи алгоритмов – блок-схема.

Оборудование : проектор, презентация.

Ход урока

1 орг. Момент

Приветствие, посадка, перекличка.

2 Актуализация опорного материала

Ребята, скажите пожалуйста, как вы понимаете слово алгоритм? Где нам приходится сталкиваться с этим понятием?

3 Изложение материала

Происхождение термина «алгоритм» связано с математикой. История его возникновения такова. В IX веке в Багдаде жил ученый ал(аль)-Хорезми (полное имя - Мухаммед бен Муса ал-Хорезми, т.е. Мухаммед сын Мусы из Хорезма), математик, астроном, географ. В одном из своих трудов он описал десятичную систему счисления и впервые сформулирован правила выполнения арифметических действии над целыми числами и обыкновенными дробями. Арабский оригинал этой книги был утерян, но остался латинский перевод XII в., по которому Западная Европа ознакомилась с десятичной системой счисления и правилами выполнения арифметических действий.

Ал-Хорезми стремился к тому, чтобы сформулированные им правила были понятными. Достичь этого в IX в., когда еще не была разработана математическая символика (знаки операций, скобки, буквенные обозначения и т.д.), было трудно. Однако ему удаюсь выработать четкий стиль строгого словесного предписания, который не давал читателю возможность уклониться от предписанного или пропустить какие-нибудь действия.

Правила в книгах см-Хорезми в латинском переводе начинались словами «Алгоризми сказал». В других латинских переводах автор именовался как Алгоритмус. Со временем было забыто, что Алгоризми (Алгоритмус) - это автор правил, и эти правила стали называть алгоритмами. Многие столетия разрабатывались алгоритмы для решения все новых и новых классов задач, но само понятие алгоритма не имело точного математического определения.

В настоящее время понятие алгоритма уточнено, и сделано в XX веке в рамках науки, называемой теорией алгоритмов.

Алгоритм - точное и понятное предписания исполнителю совершить последовательность действий направленных на решение поставленной задачи.

Алгоритм - четко организованное последовательное действие, приводящие к определенному результату.

Исполнитель алгоритма - это некоторая абстрактная или реальная система способная выполнять действие предписываемые алгоритмом (техническое, биологическое или биотехническое).

Технический исполнитель – банкомат;

Биологический - человек, живой организм;

Биотехника - искусственный интеллект.

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

Дискретность (раздельность, прерывность) – алгоритм должен быть записан в виде последовательности шагов или этапов.

Понятность исполнитель алгоритма должен знать, как этот алгоритм выполнять.

Определенность (детерминированность) каждое правило алгоритма должно быть четким, однозначным и не оставлять места для произвола.

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

Результативность (конечность) алгоритм должен приводить к решению задачи за конечное число шагов.

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

Способы записи алгоритмов

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

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

Формы записи алгоритмов :

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

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

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

Графические формы записи алгоритмов:

Основные алгоритмические структуры

Следование(линейный алгоритм) Циклы

Ветвление

Следование – команды выполняются одна за другой в том порядке, в котором они записаны в алгоритме.((Пример. Алгоритм открывания двери в квартиру: достать ключ, вставить в замочную скважину, повернуть нужное количество раз, достать ключ, открыть дверь. закрыть дверь)

Ветвление - данные влияют на ход выполнения алгоритма, т.е. в зависимости от условия выполняются те или иные действия алгоритма. (Пример, Алгоритм «попадания» в свою квартиру: позвонить в квартиру; если есть кто-то дома дождаться когда откроют дверь и войти в квартиру, если нет никого дома достать ключ; ...)

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

4 Применение полученных знаний

Задача исполнить команды алгоритма при а=1, b=2, с=3

Алгоритм и его свойства.

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

Исполнитель алгоритма - это тот объект или субъект, для управления которым составлен алгоритм.

Система команд исполнителя (СКИ) - это вся совокупность команд, которые исполнитель умеет выполнять.

Свойства алгоритма: понятность, точность, конечность.

Понятность: алгоритм составляется только из команд, входящих в СКИ исполнителя.

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

Конечность (или результативность): выполнение алгоритма должно приводить к результату за конечное число шагов.

Среда исполнителя: обстановка, в которой функционирует исполнитель.

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

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

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

Наибольшую распространенность получили способы: графический , словесный и в виде программ для ЭВМ .

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

Наименование блока Обозначение блока Содержание
Процесс
Обработка информации
Принятие решения
Логический блок проверки истинности или ложности некоторого условия
Передача данных
Ввод или вывод информации
Пуск, остановка
Начало или конец программы
Модификация
Организация циклического процесса - заголовок цикла

Совокупность блоков образует так называемую блок-схему алгоритма .

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

При записи алгоритмов в виде программ для ЭВМ используются языки программирования - системы кодирования предписаний и правила их использования. Для записи алгоритмов в виде программ характерна высокая степень формализации.

Алгоритмы работы с величинами. Основные алгоритмические структуры.

Величина - это отдельный информационный объект, который имеет имя, значение и тип.

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

Величины бывают постоянными и переменными.

Постоянная величина (константа) не изменяет своего значения в ходе выполнения алгоритма. Константа может обозначаться собственным значением (числа 10, 3.5) или символическим именем (число ).

Переменная величина может изменять значение в ходе выполнения алгоритма. Переменная всегда обозначается символическим именем (X, A, R5 и т.п.).

Тип величины определяет множество значений, которые может принимать величина, и множество действий, которые можно выполнять с этой величиной. Основные типы величин: целый, вещественный, символьный, логический.

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

А + В; 2*X-Y; K + L - sin(Х)

Команда присваивания - команда исполнителя, в результате которой переменная получает новое значение. Формат команды:

имя переменной>:=выражение>

Исполнение команды присваивания происходит в таком порядке: сначала вычисляется, затем, полученное значение присваивается переменной.

Пример. Пусть переменная А имела значение 6. Какое значение получит переменная А после выполнения команды: А:= 2 * А - 1?
Решение. Вычисление выражения 2*А - 1 при А=6 даст число 11. Значит новое значение переменной А будет равно 11.

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

Команда ввода - команда, по которой значения переменных задаются через устройства ввода (например, клавиатуру).

Пример: ввод А - ввод значения переменной А с клавиатуры компьютера.

Команда вывода: команда, по которой значение величины отображается на устройстве вывода компьютера (например, на мониторе).

Пример: вывод X - значение переменной X выводится экран.

Команда ветвления - разделяет алгоритм на два пути в зависимости от некоторого условия; затем исполнение алгоритма выходит на общее продолжение. Ветвление бывает полное и неполное. Описание ветвления в блок-схемах и на Алгоритмическом языке:

Здесь под серией понимается одна или несколько последовательных команд; кв - конец ветвления.

Команда цикла обеспечивает повторное выполнение последовательности команд (тела цикла) по некоторому условию.

Цикл с предусловием - цикл, выполнение которого повторяется, пока истинно условие цикла:

Цикл с параметром - повторное выполнение тела цикла, пока целочисленный параметр пробегает множество всех значений от начального (In) до конечного (Ik):

Пример. Даны две простые дроби. Составить алгоритм получения дроби, являющейся результатом их деления.
Решение. В алгебраической форме решение задачи выглядит следующим образом:
а/в: с/d = а*d/b*c = m/n
Исходными данными являются четыре целые величины: а, b, с, d. Результат - два целых числа m и n.

алг деление дробей
цел а, b, с, d, m, n
нач ввод а, b, с, d
m:=a*d
n:=b*c
вывод "Числитель=", m
вывод "Знаменатель=", n
кои

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

  1. Ефимова О., Морозов В., Угринович Н. Курс компьютерной технологии с основами информатики. Учебное пособие для старших классов. - М.: ООО "Издательство АСТ"; АВF, 2000 г.
  2. Задачник-практикум по информатике. В 2-х томах/Под ред. И.Семакина, Е.Хеннера. - М.: Лаборатория Базовых Знаний, 2001 г.
  3. Угринович Н. Информатика и информационные технологии. 10-11 класс- М.: Лаборатория Базовых Знаний, АО "Московские учебники", 2001 г.

Задачи и тесты по теме "Алгоритмы и исполнители"

  • Управление исполнителем Чертёжник - Алгоритмы 6 класс

    Уроков: 4 Заданий: 9 Тестов: 1

  • 2 Заданий: 9 Тестов: 1

Уважаемый ученик!

Знание Темы "Алгоритмы и исполнители" необходимо прежде всего для дальнейшего изучения программирования. В качестве базы для изучения программирования выбран язык программирования QBasic. Мы отказались от идеи включить в наш курс Visual Basic или какой-либо другой язык объектно-ориентированного программирования, так как такой подход пока не получил широкого применения в большинстве средних школ РФ. Кроме того, в основе объектно-ориентированного программирования лежат принципы классического программирования в Dos.

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

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

ТЕМА 8. ОСНОВЫ АЛГОРИТМИЗАЦИИ И ПРОГРАММИРОВАНИЯ

8.1. Понятие об алгоритме и исполнителе алгоритмов. Свойства алгоритмов

"Алгоритм" является фундаментальным понятием информатики. Представление о нем необходимо для эффективного применения вычислительной техники к решению практических задач. Алгоритм - это предписание исполнителю (человеку или автомату) выполнить точно определенную последовательность действий, направленных на достижение заданной цели. Алгоритм - это сформулированное на некотором языке правило, указывающее на действия, последовательное выполнение которых приводит от исходных данных к искомому результату. Значение слова алгоритм очень схоже со значением слов рецепт, процесс, метод, способ . Однако любой алгоритм, в отличие от рецепта или способа, обязательно обладает следующими свойствами.
Свойства алгоритма (отличающие его от любых других предписаний): понятность (для конкретного исполнителя); дискретность (команды последовательны, с точной фиксацией моментов начала и конца выполнения команды); точность (после выполнения каждой команды точно известно, завершено ли исполнение алгоритма или же какая команда должна выполниться следующей); результативность (после конечного числа шагов задача решается или же становится ясно, что процесс решения не может быть продолжен): массовость (алгоритм единым образом применяется к любой конкретной формулировке задачи, для которой он разработан).
1. Дискретность - разбиение алгоритма на ряд отдельных законченных действий - шагов. Выполнение алгоритма разбивается на последовательность законченных действий - шагов. Каждое действие должно быть закончено исполнителем алгоритма прежде, чем он приступит к исполнению следующего действия.
2. Точность - однозначные указания. На каждом шаге однозначно определено преобразование объектов среды исполнителя, полученной на предыдущих шагах алгоритма. Если алгоритм многократно применяется к одному и тому же набору исходных данных, то на выходе он получает каждый раз один и тот же результат. Запись алгоритма должна быть такой, чтобы на каждом шаге его выполнения было известно, какую команду надо выполнять следующей.
3. Понятность - однозначное понимание и исполнение каждого шага алгоритма его исполнителем. Алгоритм должен быть записан на понятном для исполнителя языке.
4. Результативность - обязательное получение результата за конечное число шагов. Каждый шаг (и алгоритм в целом) после своего завершения дает среду, в которой все объекты однозначно определены. Если это по каким-либо причинам невозможно, то алгоритм должен сообщать, что решение задачи не существует. Работа алгоритма должна быть завершена за конечное число шагов. Информатика оперирует только с конечными объектами и конечными процессами, поэтому вопрос о рассмотрении бесконечных алгоритмов остается за рамками теории алгоритмов. 5. Массовость - применение алгоритма к решению целого класса однотипных задач.
Система команд исполнителя - точно описанная обстановка, включающая формулировку решаемой задачи, перечень объектов, вовлекаемых в условие задачи и в ее решение, и возможности исполнителя: свойства объектов, которые он может узнать и действия, которые он может совершить. Формальное исполнение алгоритма производит компилятор или интерпретатор, проверяя семантику.

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

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

Шаги бывают безусловными (изображаются прямоугольниками, параллелограммами) и условными (изображаются ромбами). Из ромба всегда выходят две стрелки - одна означает дальнейший путь, в случае выполнения условия (обозначается обычно словом "да" или "+"), другая - невыполнение (словом "нет" или "-"). Ввод с клавиатуры или вывод на экран значения выражения изображается параллелограммом. Команда, выполняющая обработку действий (команда присваивания), изображается в прямоугольнике.

Если решение задачи сложное и достаточно длинное, то алгоритм может получиться очень большим. Избежать этого можно, заменив некоторую законченную последовательность шагов алгоритма блоками, которые будут являться вспомогательными алгоритмами. Блок обычно не элементарен, его размеры выбираются в зависимости от необходимости, однако если он правильно составлен, то обладает всеми необходимыми признаками алгоритмического шага: имеет точку входа (четко выделенное начало) и может быть условным или безусловным. Разные блоки алгоритма связаны друг с другом только через точки входа и выхода, поэтому если блок верно решает свою задачу, то его внутренняя структура несущественна для остальной части алгоритма. Такое блочное представление особенно удобно на первых этапах решения сложных задач, когда детализация блоков производится позднее и, возможно, другими разработчиками.
Язык программирования - язык, используемый для формальной записи алгоритмов. Большинство языков программирования относятся к алгоритмическим языкам. Запись алгоритма на алгоритмическом языке называют программой.
Язык, используемый для формальной записи алгоритмов, называется алгоритмическим языком . При описании любого языка (в том числе естественного, например, русского, английского и т.д.) используются следующие понятия: алфавит, синтаксис и семантика .
Алфавит языка - это множество простейших знаков, которые могут быть использованы в текстах этого языка. Последовательность символов алфавита называют словом . Правила, согласно которым образуются слова из алфавита, называются грамматикой. Сам же язык - это множество всех слов, записываемых в данном алфавите согласно данной грамматике.
Синтаксис - это набор правил, определяющих возможные сочетания (конструкции) из букв алфавита. Для описания синтаксиса языка, как правило, используют другой язык (метаязык) или синтаксические диаграммы.
Семантика - это набор правил, определяющих значение (смысл) отдельных конструкций языка.
Одним из самых распространенных алгоритмических языков является язык Pascal, который полезен как для начинающих, так и для опытных программистов. Обучение программированию чаще всего основывается на этом языке.

8.3. Основные алгоритмические конструкции

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

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

Рассмотрим основные структуры алгоритма.
Команда следования состоит только из простых команд. На рисунке простые команды имеют условное обозначение S1 и S2 . Из команд следования образуются линейные алгоритмы. Примером линейного алгоритма будет нахождение суммы двух чисел, введенных с клавиатуры.

Команда ветвления - это составная команда алгоритма, в которой в зависимости от условия Р выполняется или одно S1 , или другое S2 действие. Из команд следования и команд ветвления составляются разветвляющиеся алгоритмы (алгоритмы ветвления). Примером разветвляющегося алгоритма будет нахождение большего из двух чисел, введенных с клавиатуры.

Команда ветвления может быть полной и неполной формы. Неполная форма команды ветвления используется тогда, когда необходимо выполнять действие S только в случае соблюдения условия P . Если условие P не соблюдается, то команда ветвления завершает свою работу без выполнения действия. Примером команды ветвления неполной формы будет уменьшение в два раза только четного числа.

Команда повторения - это составная команда алгоритма, в которой в зависимости от условия Р возможно многократное выполнение действия S . Из команд следования и команд повторения составляются циклические алгоритмы (алгоритмы повторения). На рисунке представлена команда повторения с предусловием. Называется она так потому, что вначале проверяется условие, а уже затем выполняется действие. Причем действие выполняется, пока условие соблюдается. Пример циклического алгоритма может быть следующий. Пока с клавиатуры вводятся положительные числа, алгоритм выполняет нахождение их суммы.
Команда повторения с предусловием не является единственно возможной. Разновидностью команды повторения с предусловием является команда повторения с параметром. Она используется тогда, когда известно количество повторений действия. В блок-схеме команды повторения с параметром условие записывается не в ромбе, а в шестиугольнике. Примером циклического алгоритма с параметром будет нахождение суммы первых 20 натуральных чисел.

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


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

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

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


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

Приведем пример записи разветвляющегося алгоритма для нахождения наибольшего из двух чисел.


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

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


Блок-схема состоит из следующих базовых структур: две составные команды (команда следования и команда повторения с предусловием), далее простая команда. Все команды соединены последовательно. Конструкции оформлены стандартным образом, поэтому их легко распознать и перевести на язык программирования. Каждая конструкция имеет один вход и один выход.
Пунктирные стрелки в таблице отражают последовательность выполнения технологической цепочки. После записи алгоритма в виде блок-схемы каждая команда переводится на школьный алгоритмический язык, а уже затем на язык программирования.
Запишем алгоритм вычисления суммы первых n натуральных чисел. Для этого воспользуемся циклом с параметром, поскольку заранее известно сколько раз будет выполняться команда нахождения суммы. Во всех звеньях цепочки поменяем цикл "пока" на цикл "для" и приведем пример перевода алгоритма с языка блок-схем на школьный алгоритмический язык и на язык программирования Pascal.


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


Вопросы для самоконтроля

  1. Понятие алгоритма. Свойства алгоритма. Пример алгоритма. Понятие "переменная".
  2. Оператор присваивания. Примеры.
  3. Стили программирования (логический, функциональный).
  4. Понятие подпрограммы, модуля и объекта
  5. Что такое переменная? Правила наименования переменных в Паскале. Примеры.
  6. Оператор присваивания. Запись выражений в Паскале. Примеры. Объяснить, как действует оператор x:=x+1;
  7. Операторы ввода и вывода в Паскале. Примеры. Форматированный вывод.
  8. Условный оператор (if ). Пример. Сравнить с оператором case .
  9. Оператор выбора. Пример. Сравнить с оператором if .
  10. Логические выражения. Операции or, and и not . Примеры. Таблица истинности.
  11. Числовые типы переменных в языке Паскаль. Правила преобразования типов. Примеры.
  12. Логический тип данных. Пример использования в программе. Символьный тип данных. Пример. Функции chr и ord , succ и pred .
  13. Массивы. Определение. Индексы массивов. Объявления массивов. Обращения к элементам массива. Одномерные и двумерные массивы. Примеры. Сходство и различие массивов и строк.
  14. Процедуры. Определение. Зачем нужны процедуры? Примеры. Правила описания процедур. Сравнить процедуры и функции.