ГДЗ по информатике 10 класс учебник Гейн §26. Метод пошаговой детализации, вспомогательные

ВСПОМНИТЕ:

Что такое тип переменной Каковы основные типы переменных, используемых формальными исполнителями

ВОПРОСЫ:

Что такое вспомогательный алгоритм?

 Какая информация указывается в заголовке вспомогательного алгоритма?

 Какая информация указывается в команде вызова вспомогательного алгоритма?

 Что такое формальные и фактические параметры?

 Какие переменные называются локальными?

 Чем алгоритм-функция отличается от просто вспомогательного алгоритма?

 Когда можно вспомогательный алгоритм оформить в виде алгоритма-функции?

ВСПОМНИТЕ:

Какого исполнителя называют формальным

Что такое алгоритм

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

В каких случаях в алгоритме приходится использовать оператор ветвления

В чём различия оператора ветвления в полной и неполной формах

Что такое оператор цикла с предусловием

Как исполняется оператор цикла со счётчиком

Чем характеризуется переменная

Какие основные типы переменных используются в языках программирования

Какие операции можно выполнять над логическими переменными

Что называют массивом в теории алгоритмов

Чем характеризуется массив

Как описывается каждый элемент массива

В чём состоит метод пошаговой детализации

В чём польза применения вспомогательных алгоритмов

Как оформляется вспомогательный алгоритм Как оформляется вызов вспомогательного алгоритма Что такое алгоритм-функция

1. Что, на ваш взгляд, ответит человек и что ответит формальный исполнитель, если к ним обратиться с вопросами:

а) Не можете ли вы сказать, который час?

б) Не знаете ли вы, который сейчас час?

в) Не будете ли вы любезны сказать, который сейчас час?

г) Который сейчас час?

 2. Имеется два кувшина ёмкостью 3 л и 8 л. Исполнитель Джинн может набирать воду из реки в каждый кувшин, выливать из кувшина воду и определять, налита ли вода в кувшин доверху.

а) Составьте алгоритм, выполнив который Джинн наберёт из реки 7 л воды.

б) Пусть Джинну подменили трёхлитровый кувшин двухлитровым. Существует ли теперь алгоритм для этого исполнителя, позволяющий набрать из реки 7 л воды?

3. Злоумышленник выдал следующий алгоритм за алгоритм получения кипятка:

Налить в чайник воду.

Открыть кран газовой горелки.

Поставить чайник на плиту.

Ждать, пока вода не закипит.

Поднести спичку к горелке.

Зажечь спичку.

Выключить газ.

Исправьте алгоритм, чтобы предотвратить несчастный случай.

4. Пусть дан отрезок AB. Определите, для решения какой задачи предназначен следующий алгоритм:

Поставить ножку циркуля в точку А.

Установить раствор циркуля равным длине отрезка AB.

Провести окружность.

Поставить ножку циркуля в точку В.

Провести окружность.

Провести прямую через точки пересечения окружностей.

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

1. Прибавь 1.

2. Умножь на 2.

Первая из них увеличивает число на экране на 1, вторая умножает это число на 2.

Увеличитель понимает только линейные алгоритмы, и программа для него — это последовательность номеров указанных команд. Так, по программе 2112 из числа 2 получится число 12. Запишите все программы, содержащие не более 8 команд, с помощью которых из числа 3 можно получить число 13.

6. Петя и Коля в роли формальных исполнителей выполняют с помощью калькулятора следующий алгоритм:

Сложить 83,2438 и 57,6847.

Полученный результат умножить на 10.У Пети на табло калькулятора помещается 6 цифр, а у Коли — 8. Будут ли у них одинаковыми результаты выполнения этого алгоритма?

Какой вывод можно сделать из результата выполнения этого задания?

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

Измерить температуру;

Если (температура выше 37°) то

Вызвать врача;

Пойти в школу.

Исправьте этот алгоритм, чтобы при его исполнении Пете не стало хуже.

б) Однажды Петя решил позвонить своему приятелю. Злоумышленник предложил ему воспользоваться следующим алгоритмом:

Включить сотовый телефон;

Набрать номер;

Если (приятель ответил) то

{Сказать: «Здравствуй!»;

Сообщить последние новости;

Узнать, что нового и как жизнь;

Сказать: «До свидания!»;

Выключить телефон;}

Как исправить алгоритм, чтобы батарея не разрядилась до того, как телефон потребуется в следующий раз?

8. Исполните алгоритм, изображённый схемой при разных значениях a, b, c.

9. Дан четырёхугольник ABCD. Определите, для решения какой задачи предназначен следующий алгоритм:

Алгоритм{

Если (A + C = B + D) то

{Построить серединный перпендикуляр к стороне AB;

Построить серединный перпендикуляр к стороне BC;

Найти точку пересечения построенных перпендикуляров и обозначить её буквой О;

Построить окружность с центром в точке O радиусом OA;}}

Составьте схему этого алгоритма.

10. Используя циклическую форму организации действий, запишите следующий алгоритм перевода текста с иностранного языка:

Прочитать первое предложение.

Перевести предложение.

Записать перевод в тетрадь.

Прочитать следующее предложение.

Перевести предложение.

Записать перевод в тетрадь.

Прочитать следующее предложение.

Перевести предложение.

Записать перевод в тетрадь.…

Прочитать последнее предложение.

Перевести предложение.

Записать перевод в тетрадь.

Изобразите составленный алгоритм схемой.

11. а) Во время перемены Петя зашёл в столовую поесть пирожков. Для этого он составил следующий алгоритм:

Алгоритм{

Делать пока (не исчезло чувство голода)

 { Купить пирожок; }

 Съесть пирожок;}

Сумеет ли Петя поесть пирожков? Исправьте алгоритм так, чтобы Петя ушёл из столовой сытым.

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

Алгоритм

{Делать пока (не решены все задачи)

{ Решить очередную задачу;

Пойти гулять до ужина;}}

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

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

↑— переместиться на одну клетку вверх;

↓— переместиться на одну клетку вниз;

←— переместиться на одну клетку влево;

→ — переместиться на одну клетку вправо.

Других команд Робот не понимает. Кроме того, он умеет проверять условия «слева стена», «справа стена», «сверху стена» и «снизу стена».

Дан алгоритм:

Алгоритм

{Делать пока (сверху стена)

{ →;}

Делать пока (справа стена)

{ ↑;}

Делать пока (слева стена)

{ →;}

Делать пока (снизу стена)

{ ←;}}

а) Исполните этот алгоритм для Робота на поле, изображённом на верхнем рисунке, если первоначально Робот стоит на клетке А1. Укажите, в какой клетке он остановится после исполнения этого алгоритма.

б) Первоначально Робот стоит на клетке С1. Какое диагностическое сообщение вынужден будет передать Робот при исполнении этого алгоритма? В какой клетке он будет при этом находиться?

13. Тот же Робот, что и в задании 12, исполняет следующий алгоритм на поле, изображённом на нижнем рисунке.

Алгоритм

{Делать пока (не сверху стена)

{↑;

Делать пока (не справа стена)

{→;

 Делать пока (не снизу стена)

 {↓;

Делать пока (не слева стена)

{←;} }} }}

а) Первоначально Робот стоит на клетке В1. Укажите, в какой клетке он остановится после исполнения этого алгоритма.

б) Первоначально Робот стоит на клетке А1. C какой проблемой столкнётся Робот при исполнении этого алгоритма?

14. Чему будут равны a и b после выполнения каждого из следующих алгоритмов?

 Сколько раз будет выполняться тело цикла в каждом из них?

а)  Алгоритм

цел: а, b;

{ а :-    5;    b := -2; Делать пока (а   \  Ь < а*Ь) { а := 2*а;   b := b +  1;    }

} (* Копей, алгоритма *)

б)  Алгоритм

цел: а, b;

{ а :- 25;    b :~ 1; Делать пока (а      b > а*b) { а := а + 10;    b :=    3*6;    }

}    (* Конец алгоритма *)

в)   Алгоритм

цел: а b;

{ а := -3;  b := -1; Делать пока (а < b) { Если (b < 3) то {   а :=   а      b; b :=    b + 2; }

Иначе { а := а + 2;    b := b- а; }

}    

 (* Конец цикла *)

}   (* Конец алгоритма *)

 

15. Робот, описанный в задании 12, исполняет следующий алгоритм на поле, изображённом на рисунке слева.

Алгоритм

{Делать пока (не сверху стена)

{ ↑;

Если (не справа стена) то { →; }

}

Делать пока (не снизу стена)

{ ↓;

Если (не слева стена) то { ←; } }}

а) Первоначально Робот стоит на клетке А1. Укажите, в какой клетке он остановится после исполнения алгоритма.

б) Первоначально Робот стоит на клетке С2. Укажите, в какой клетке он остановится после исполнения алгоритма.

в) Клетка С2 не единственная, начиная с которой Робот после исполнения алгоритма вернётся на ту же клетку, с которой начинал движение. Обследуйте оставшиеся 28 клеток этого поля (т.е. кроме клеток А1 и С2) и установите, какие из них обладают тем же свойством: Робот возвращается на ту же клетку, с которой начал движение.16

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

Вперёд n, вызывающая передвижение Черепашки на n шагов в направлении движения;

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

В командах вместо n и m должны стоять целые числа.

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

Алгоритм

{Повторить 5 раз

{ Повторить 4 раза

{ Вперёд 40;

 Направо 72;}

Направо 108; }}

Какая фигура будет начерчена Черепашкой?

ВСПОМНИТЕ:

Каковы основные характеристики переменных

 Как описываются переменные в языках программирования

Какие формы оператора ветвления применяются в алгоритмизации

Как в языках программирования записывается оператор ветвления

ВСПОМНИТЕ:

Каковы основные характеристики массива

Как описываются массивы в языке программирования

Как задаются элементы в массиве

ВСПОМНИТЕ:

В чём состоит метод пошаговой детализации

Как записываются подпрограммы и функции на алгоритмическом языке и на языке программирования

ВОПРОСЫ ДЛЯ ОБСУЖДЕНИЯ:

Верно ли, что только человек не является формальным исполнителем?

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

 Если не согласны, то приведите подходящие примеры. Если согласны, то в чём состоят положительные стороны этого явления и в чём отрицательные?

Представляют ли роботы опасность для человека?

Сообщить о неточной информации
Проверочный код, год рождения Д.И.Менделеева:
В каком задании/вопросе ошибка:
Как должно быть: