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

Начальный курс информатики. Часть 2. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
850 Кб
Скачать

Словесная форма

 

 

 

 

 

Блок-схема

 

 

 

 

 

 

 

 

 

 

 

 

пока <условие>

 

 

 

 

 

 

 

 

 

 

 

нц

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Да

 

 

 

 

 

Нет

 

<серия>

 

 

 

 

 

 

 

 

 

кц

 

 

 

 

 

 

Условие

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Серия 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 6. Запись конструкции

Пример 3.

Ориентируясь

на Исполнителя-человека

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

Решение.

1. Словесная форма описания алгоритм КАРТОФЕЛЬ.

Начало:

пока есть не очищенный картофель

нц

взять очередной клубень; очистить клубень; положить в кастрюлю

кц конец.

2. Описание алгоритма (рис. 7).

11

 

 

 

 

 

 

Начало

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Да

 

 

 

 

 

Нет

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Есть неочищенный

 

 

 

 

 

 

 

 

 

 

 

Картофель?

 

 

Серия 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Серия 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Серия 1

 

 

Конец

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 7. Блок-схема алгоритма

Пример 4. У исполнителя КАЛЬКУЛЯТОР две команды, которым присвоены номера:

1)прибавь 3,

2)умножь на 4.

Выполняя первую из них, КАЛЬКУЛЯТОР прибавляет к числу на экране 3, а выполняя вторую, умножает его на 4. Запишите порядок команд в программе получения из числа3 числа 57, содержащей не более 6 команд, указывая лишь номера команд.

(Например, программа 21211 это программа):

1)умножь на 4;

2)прибавь 3;

3)умножь на 4;

4)прибавь 3;

5)прибавь 3.

Решение:

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

12

2)попробуем решить задачу «обратным ходом», начав с

числа 57;

3)очевидно, что последней командой не может быть умножение на 4 (57 на 4 не делится), поэтому последняя команда – сложение (прибавь 3), над стрелкой записан номер команды:

1

...54 ®57 ; 4) число 54 также не делится на 4, поэтому предыдущая

команда – тоже сложение:

 

 

1

1

 

 

 

 

 

 

 

 

 

 

...51®54®57 ;

 

 

 

 

 

 

 

 

 

5) аналогично для числа 51:

 

 

 

 

 

 

 

 

1

1

1

 

 

 

 

 

 

 

 

 

...48®51®54 ®57 ;

 

 

 

 

 

 

 

 

6)

 

число 48 делится

на 4, поэтому

используем

умноже-

ние:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

1

1

 

1

 

 

 

 

 

 

 

...12 ®48®51®54 ®57 ;

 

 

 

 

 

 

7)

 

наконец,

добавив в начало программы еще одно -ум

ножение, получаем полную цепочку:

 

 

 

 

 

 

 

2

2

 

1

1

1

 

 

 

 

 

 

 

3®12 ®48®51®54 ®57 ;

 

 

 

 

 

 

8)

 

таким

 

образом,

правильный

ответ –

22111,

эта

программа состоит из 5 команд.

 

 

 

 

 

 

 

Ответ: 22111.

 

 

 

 

 

 

 

 

 

Пример 5.

 

Автомат

получает

на

вход

два

трехзначных

числа. По этим числам строится новое число по следующим

правилам.

Вычисляются

три

числа–

сумма

старших

разрядов

заданных трехзначных чисел, сумма средних разрядов этих чисел,

сумма младших разрядов. Полученные три числа записываются

друг за другом в порядке убывания (без разделителей).

 

 

 

Например,

 

исходные

трехзначные

 

числа:

835,

196.

Поразрядные суммы: 9, 12, 11. Результат: 12119

 

 

 

Определите, какое из следующих чисел может быть

результатом работы автомата.

 

 

 

 

 

 

 

1)

151303

 

2) 161410

3) 191615

4) 121613

13

Решение: Число строится из трех чисел, каждое из которых может быть однозначным (от 0 до 9) или двузначным (от 10 до 9 + 9 = 18). В предложенных вариантах ответа в числах 6 цифр, значит соединены три двузначных числа. В ответе № 1 151303 одно из них записывается как «03», что недопустимо (в этом случае правильное число было бы записано как 15133). В ответе № 3 191615 тоже 6 цифр: три двузначных числа, первое из которых равно 19, чего не может быть (никакие два однозначных числа не могут дать такую сумму). В ответе № 4 тоже 6 цифр: три числа 12, 16 и 13 расположены НЕ в порядке убывания, поэтому этот вариант неверен. В ответе № 2 никаких противоречий с условием нет.

Ответ: 2.

Коротко о главном

1.Слово «алгоритм» происходит от имени математика Мухаммеда ибн Мусы аль-Хорезми, первым предложившего приемы выполнения арифметических операций с многозначными числами.

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

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

4.Система команд исполнителя (СКИ) – это вся совокупность команд, которые исполнитель умеет выполнять(понимает). Алгоритм можно строить только из команд, входящих в СКИ исполнителя (свойство понятности алгоритма).

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

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

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

8.Выполнение алгоритма исполнителем производится формально.

14

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

1.Что такое алгоритм?

2.Что такое исполнитель алгоритма?

3.Каковы основные свойства алгоритма?

4.Назовите исполнителей следующих видов работы:

×уборки мусора;

×перевозки пассажиров,

×приема экзаменов;

×сдачи экзаменов.

5. Определите полный набор данных для решения -сле дующих задач обработки информации:

×вычисление стоимости покупок в магазине;

×определение времени показа по телевизору интересующего вас фильма;

×вычисления площади треугольника;

×перевода русского текста на английский.

6.Исполнитель РОБОТ действует на клетчатой доске, между соседними клетками которой могут стоять стены. РОБОТ передвигается по клеткам доски и может выполнять команды 1 (вверх), 2 (вниз), 3 (вправо) и 4 (влево), переходя на соседнюю клетку в направлении, указанном в скобках. Если в этом направлении между клетками стоит стена, то РОБОТ разрушается. РОБОТ успешно выполнил программы:

1) 3233241;

2) 1132432.

Какую последовательность из трех команд должен выполнить РОБОТ в каждом из этих случаев, чтобы вернуться в ту клетку, где он был перед началомвыполнения программы, и не разрушиться вне зависимости от того, какие стены стоят на поле?

7.Исполнитель кузнечик живёт на числовой оси. Начальное положение кузнечика – точка 0. Система команд кузнечика:

Вперед 4 – кузнечик прыгает вперед на 4 единицы, Назад 3 – кузнечик прыгает назад на 3 единицы.

Какое наименьшее количество раз должна встретиться в программе команда «Назад 3», чтобы кузнечик оказался в точке 27?

15

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

Вперед N (Кузнечик прыгает вперед на N единиц); Назад M (Кузнечик прыгает назад на M единиц).

Переменные N и M могут принимать любые целые положительные значения. Известно, что кузнечик выполнил программу из 50 команд, в которой команд «Назад 2» на 12 больше, чем команд «Вперед 3». Других команд в программе не было. На какую одну команду можно заменить эту программу, чтобы кузнечик оказался в той же точке, что и после выполнения программы?

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

Вперед N – кузнечик прыгает вперед на N единиц;

Назад M – кузнечик прыгает назад на M единиц. Переменные N и M могут принимать любые целые поло-

жительные значения. кузнечик выполнил программу из20 команд, в которой команд «Назад 4» на 4 меньше, чем команд «Вперед 3» (других команд в программе нет). На какую одну команду можно заменить эту программу?

9. У исполнителя две команды, которым присвоены номера:

1)вычти 2;

2)умножь на три.

Первая из них уменьшает число на экране на 2, вторая – утраивает его. Запишите порядок команд в программе получения из 11 числа 13, содержащей не более 5 команд, указывая лишь номера команд.

10. Исполнитель калькулятор имеет только две команды, которым присвоены номера:

1)умножь на 2;

2)вычти 2.

Выполняя команду номер 1, калькулятор умножает число на экране на 2, а выполняя команду номер 2, вычитает из числа на экране 2. Напишите программу, содержащую не более 5 команд, которая из числа 7 получает число 44. Укажите лишь номера команд.

16

11.Исполнитель Чертежник имеет перо, которое можно поднимать, опускать и перемещать. При перемещении опущенного пера за ним остается след в виде прямой линии. У исполнителя существуют следующие команды:

Сместиться на вектор (а, b) – исполнитель перемещается

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

Запись: Повторить 5 [Команда 1 Команда 2] означает, что последовательность команд в квадратных скобках повторяется 5 раз.

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

Сместиться на вектор (5,2); Сместиться на вектор (-3, 3);

Повторить 3 [Сместиться на вектор (1,0)]; Сместиться на вектор (3, 1).

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

12.Исполнитель КВАДРАТОР имеет только две команды, которым присвоены номера:

1) возведи в квадрат;

2) прибавь 1.

Выполняя команду номер 1, КВАДРАТОР возводит число на экране в квадрат, а выполняя команду номер 2, прибавляет к этому числу 1. Напишите программу, содержащую не более 4 команд, которая из числа 2 получает число 36. Укажите лишь номера команд.

13.У исполнителя калькулятор две команды, которым присвоены номера:

1) отними 1;

2) умножь на 5.

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

17

14.Автомат получает на вход два трехзначных числа. По этим числам строится новое число по следующим правилам. Вычисляются три числа– сумма старших разрядов заданных трехзначных чисел, сумма средних разрядов этих чисел, сумма младших разрядов. Полученные три числа записываются друг за другом в порядке убывания (без разделителей).

Пример: Исходные трехзначные числа: 835, 196. Поразрядные суммы: 9, 12, 11. Результат: 12119.

Определите, какое из следующих чисел может быть - ре зультатом работы автомата.

1) 151303;

2) 161410;

3) 191615;

4) 121613.

15.Предлагается некоторая операция над двумя произвольными трехзначными десятичными числами:

× записывается результат сложения старших разрядов этих чисел;

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

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

Какое из перечисленных чисел могло быть построено по этому правилу?

1) 141819;

2) 171418;

3) 141802;

4) 171814.

16. Цепочка из трех бусин, помеченных латинскими буквами, формируется по следующему правилу. В конце цепочки стоит одна из бусин A, B, C. На первом месте – одна из бусин B, D, C, которой нет на третьем месте. В середине – одна из бусин А, C, E, B, не стоящая на первом месте. Какая из перечисленных цепочек создана по этому правилу?

18

1)CBB;

2)EAC;

3)BCD;

4)BCB.

17.Автомат получает на вход трехзначное десятичное число. По этому числу строится новое число по следующим правилам.

1.Перемножаются первая и вторая, а также вторая и третья цифры.

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

Пример. Исходное трехзначное числа: 157. Произведения: 1·5 = 5; 5 · 7 = 35. Результат: 355.

Определите, какое из следующих чисел может быть - ре зультатом работы автомата:

1) 1014;

2) 1812;

3) 4512;

4) 777.

18.Автомат получает на вход четырёхзначное десятичное число. По этому числу строится новое число по правилам.

1.Складываются первая и вторая, а также третья и четвёртая цифры.

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

Пример. Исходное число: 5487. Суммы: 5+4 = 9; 8+7 = 15. Результат: 159.

Определите, сколько из приведённых ниже чисел могут быть получены как результат работы автомата:

1) 179;

2) 188;

3) 21;

4) 192.

19.Коля и Саша играют в игру с числами. Коля записыва-

ет четырехзначное десятичное число, в котором нет нечетных

19

цифр, т.е. цифр 1, 3, 5, 7, 9. Саша строит из него новое число по следующим правилам.

Вычисляются два числа – сумма крайних разрядов Колиного числа и сумма средних разрядов Колиного числа.

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

Пример. Колино число: 2864. Поразрядные суммы: 6, 14. Сашин результат: 146.

Определите, какое из предложенных чисел может получиться у Саши при каком-то Колином числе:

1)112;

2)121;

3)124;

4)222.

20. Исполнитель РОБОТ.

Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости:

1)вверх;

2)вниз;

3)влево;

4)вправо.

При выполнении любой из этих команд (рис. 8) РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:

1)сверху свободно;

2)снизу свободно;

3)слева свободно;

4)справа свободно.

Цикл ПОКА <условие> команда выполняется, пока условие истинно, иначе происходит переход на следующую строку.

20

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