Какими свойствами алгоритма не обладает кулинарный рецепт
САМОЕ ГЛАВНОЕ
Алгоритм — это конечная система правил, сформулированных на языке исполнителя, которая определяет последовательность перехода от допустимых исходных данных к конечному результату и обладает свойствами дискретности, детерминированности, понятности, результативности, конечности и массовости.
Исполнитель алгоритма — это субъект или устройство, способные правильно интерпретировать описание алгоритма и выполнить содержащийся в нём перечень действий.
Один и тот же алгоритм может быть записан разными способами: на естественном языке, псевдокодом, с помощью блок-схем, на языке программирования и т. д.
Для задачи, имеющей алгоритмическое решение, можно придумать множество различных способов её решения, т. е. алгоритмов. Теория алгоритмов предоставляет аппарат анализа различных алгоритмов решения одной и той же задачи, на основе которого можно выбрать самый эффективный (наилучший) алгоритм.
Алгоритм состоит из команд. Команда — это отдельная инструкция в описании алгоритма. Шаг алгоритма — это отдельное действие, которое исполнитель выполняет по команде. Вычислительным процессом, порождённым алгоритмом, называется последовательность шагов алгоритма, пройденных при его исполнении.
Сложность алгоритма — количество элементарных шагов (действий) в вычислительном процессе этого алгоритма. Наряду со сложностью важной характеристикой алгоритма является эффективность. Эффективность оценивается количеством элементарных операций, которые необходимо выполнить для решения задачи, а также количеством памяти, требующейся для выполнения алгоритма.
Вопросы и задания
1. Перечислите основные свойства алгоритмов и проиллюстрируйте их примерами.
2. Почему кулинарный рецепт приготовления торта нельзя считать алгоритмом? Какими свойствами алгоритма он не обладает?
3. Переформулируйте описание способа проведения перпендикуляра к прямой в заданной точке так, чтобы оно стало алгоритмом.
4. Есть двое песочных часов: на 3 и на 8 минут. Для приготовления эликсира бессмертия его надо варить ровно 7 минут. Как это сделать?
Придумайте систему команд исполнителя Колдун. Запишите с их помощью план действий исполнителя по приготовлению эликсира.
5. Исполнитель Вычислитель получает на вход целое число х и может выполнять с ним преобразования по алгоритму, состоящему из любого количества команд: 1) прибавить 5; 2) вычесть 2.
Сколько разных алгоритмов, состоящих из пяти команд, можно составить для этого исполнителя? Сколько из них будут приводить к одинаковым результатам для заданного числа х?
6. Как известно, для каждого исполнителя набор допустимых действий всегда ограничен, иначе говоря, не может существовать исполнителя, для которого любое действие является допустимым. Докажите это утверждение, предположив, что такой исполнитель существует.
7. Перечислите известные вам способы записи алгоритмов.
8. Приведите примеры задач и оптимальных способов записи алгоритмов их решения.
9. Исполнитель Автомат получает на вход четырёхзначное число. Это число он преобразует по следующему алгоритму:
1) вычисляется сумма первой и второй цифр числа;
2) вычисляется сумма второй и третьей цифр числа;
3) вычисляется сумма третьей и четвёртой цифр числа;
4) из полученных трёх чисел (сумм) выбирается и отбрасывается одно — не превышающее двух других чисел;
5) оставшиеся два числа записываются друг за другом в порядке неубывания без разделителей.
Так, если исходное число 9575, то, преобразуя его, автомат создаст суммы: 9 + 5 = 14, 5 + 7 = 12, 7 + 5 = 12. Сумма, не превышающая двух других, 12. Оставшиеся суммы: 14, 12. Результат: 1214.
Опишите систему команд этого исполнителя.
Могут ли результатом работы этого исполнителя быть числа 1610, 1010, 1019?
Укажите минимальное и максимальное значения результата работы этого исполнителя.
При обработке некоторого числа х автомат выдаёт результат 1418. Укажите наименьшее и наибольшее значения х, при которых возможен такой результат.
10. Подготовьте краткое сообщение об одном из учёных (А. Тьюринг, Э. Пост, А. Н. Колмогоров, А. А. Марков и др.), внёсших вклад в развитие теории алгоритмов.
11. В чём отличие шага алгоритма от команды алгоритма? Приведите пример.
12. Что такое сложность алгоритма? От чего она зависит в наибольшей степени?
13. Подсчитайте сложность алгоритма перемножения двух натуральных чисел «столбиком» при условии, что одно из них состоит из n, а второе — из m десятичных цифр.
14. Какой алгоритм считается эффективным?
15. Постройте эффективный алгоритм возведения числа х в степень n = 152.
Cкачать материалы урока
Источник
Дискретность.
Алгоритмы кулинарных рецептов состоят из отдельных действий, которые
обычно нумеруются. Разделение алгоритма на последовательность шагов
является важным свойством алгоритма и называется дискретностью.
Алгоритм должен представлять процесс решения задачи как последовательное
выполнение некоторых простых шагов. При этом для выполнения каждого шага
алгоритма требуется конечный отрезок времени, то есть преобразование исходных
данных в результат осуществляется во времени дискретно. Каждому
действию соответствует предписание (команда). Образованная
структура алгоритма оказывается дискретной: только выполнив одну команду,
исполнитель сможет приступить к выполнению следующей.
Результативность.
Алгоритмами известные из начальной школы являются правила сложения,
вычитания, умножения и деления столбиком. Применение этих алгоритмов
независимо от количества разрядов в числах и, соответственно, количества
вычислительных шагов алгоритма всегда приводит к результату.
Получение
из исходных данных результата за конечное число шагов называется результативностью алгоритма. Это
означает, что неправильный алгоритм, который не достигает цели,
вообще не нужно считать алгоритмом.
Таким образом, алгоритм
должен обеспечивать возможность получения результата после конечного, возможно,
очень большого, числа шагов. При этом результатом считается не только
обусловленный постановкой задачи ответ, но и вывод о невозможности продолжения
по какой-либо причине решения данной задачи.
Пример 2: Алгоритм сложения целых чисел в десятичной системе счисления:
- Записать числа в столбик, так чтобы цифры самого младшего разряда
чисел (единицы) расположились одна под другой (на одной вертикали). - Сложить цифры младшего разряда.
- Записать результат под горизонтальной чертой на вертикали единиц,
если при этом полученная сумма больше или равна величине основания
системы счисления (в данном случае 10), перенести десятки в старший
разряд десятков. - Повторить пункты 2 и 3 для всех разрядов с учетом переносов из младших разрядов.
Массовость.
Алгоритмы сложения, вычитания, умножения и деления могут быть применены
для любых чисел, причем не только в десятичной, но и в других
позиционных системах счисления (двоичной, восьмеричной,
шестнадцатеричной и др.). Возможность применения алгоритма к большому
количеству различных исходных данных называется массовостью. Как вы уже знаете, само слово «алгоритм» происходит от «algorithmi» – латинской формы
написания имени выдающегося математика IX века аль-Хорезми, который
сформулировал правила выполнения арифметических операций.
Таким образом, массовость
означает, что алгоритм должен обеспечивать возможность его применения для
решения любой задачи из некоторого класса задач с различными исходными данными.
Детерминированность (определенность).
При управлении самолетом используются сложные алгоритмы, исполнителями
которых являются пилот или бортовой компьютер.
Последовательность
выполнения действий, например, при взлете должна быть строго
определенной (например, нельзя отрываться от взлетной полосы, пока
самолет не набрал необходимую взлетную скорость). Исполнитель алгоритма,
выполнив очередную команду, должен точно знать, какую команду
необходимо исполнять следующей. Это свойство алгоритма называется детерминированностью. Любое
правило
(команда) алгоритма должно быть строго
и недвусмысленно определено и описано для каждого случая.
В алгоритме нет команд, смысл которых может быть истолкован
исполнителем неоднозначно; недопустимы ситуации, когда после выполнения
очередной команды исполнителю неясно, какую команду выполнять на следующем
шаге. В каждый момент времени следующий шаг работы однозначно
определяется состоянием системы. Таким образом, алгоритм выдаёт один и тот же
результат (ответ) для одних и тех же исходных данных.
Выполнимость и понятность.
После включения компьютера начинают выполняться алгоритмы тестирования
компьютера и загрузки операционной системы. Исполнителем этих алгоритмов
является компьютер, поэтому они должны быть записаны на понятном
компьютеру машинном языке.
Каждый исполнитель обладает определенным набором, системой команд, которые он может выполнить. Алгоритм должен быть понятен исполнителю, т.е. должен содержать
только те команды, которые входят в систему его команд. Алгоритм
состоит только из команд, входящих в систему команд исполнителя, т.е. из таких
команд, которые исполнитель может воспринять и по которым может выполнить
требуемые действия.
Пример 3: Рецепт заваривания кофе:
Если алгоритм обладает перечисленными выше свойствами, то
работа по нему будет производиться исполнителем формально (т.е. без всяких
элементов творчества с его стороны). На этом основана работа
программно-управляемых исполнителей, например промышленных роботов.
Робот может выполнять работу токаря, если он умеет делать все
операции токаря (включать станок, закреплять резец, перемещать резец, замерять
изделие и т.д.). От исполнителя не требуется понимание сущности алгоритма, он
должен лишь точно выполнять команды, не нарушая их последовательности.
Источник
Однажды Фея решила испечь торт, нашла два рецепта, первый был короче, поэтому она решила, что он проще, и воспользовалась им. Она взяла сметану, яйца и сахар, пыталась их смешать, но у неё ничего не получалось. Кусочки сахара, такие вкусные в горячем чае никак не хотели смешиваться с холодной сметаной, а разноцветные перепелиные яйца метались по миске, как живые. Сода не хотела гореть, как Фея не старалась её зажечь, а для торта её надо было ещё и погасить.
ВОПРОС:
Почему у Феи ничего не получилось? Можно ли кулинарный рецепт считать алгоритмом? Какими свойствами алгоритма он не обладает?
Торт Прага из сметанного бисквита
Ингредиенты:
- Яйца – 2 шт;
- Сметана – 300 г;
- Сахар – 1 стакан;
- Сода – половина чайной ложки;
- Уксус столовый;
- Мука– 1,5 стакана;
- Какао сгущенное – половина банки;
- Миндаль;
- Кардамон или черный молотый перец – щепотка;
Для крема:
- Какао сгущенное – половина банки;
- Масло сливочное – 200 г;
Для сиропа:
- Сахар – 1 столовая ложка;
- Вода – 2 столовых ложки;
- Ликер (любой) – 1 столовая ложка;
Для глазури:
- Масло – 50 г;
- Сахар – 4 столовых ложки;
- Молоко – 2 столовых ложки;
- Какао (порошок) – 4 столовых ложки;
Приготовление:
Как приготовить торт «Прага»? В миске разотрите сметану, яйца и
сахар, добавьте погашенную уксусом соду. Смешайте сгущенное какао с
мукой, добавьте измельченный миндаль, кардамон. Если нет кардамона,
возьмите черный молотый перец. Полученное тесто нужно разделить на три
равных части, испечь из них три коржа, а готовые коржи остудить.
Приготовьте крем. Сгущенное какао взбейте со сливочным маслом.
Сделайте сироп из сахара, воды и ликера. Пропитайте каждый корж сиропом и
промажьте кремом. Верхний корж залейте глазурью. Чтобы сделать глазурь,
растворите сахар в молоке, добавьте к нему какао и сливочное масло и
варите на медленном огне, около двух минут.
Классический рецепт торта Прага
Ингредиенты:
- 2 стакана муки;
- 1 стакан сахара;
- Половина стакана водки;
- 200 г сметаны;
- 100 г сгущенного молока;
- 4 столовых ложки какао-порошка;
- 2 яйца;
- 1 чайная ложка разрыхлителя.
Для крема:
- 200 г сливочного масла;
- 100 г сгущенного молока;
- 1 столовая ложка воды;
- 2 чайных ложки какао-порошка;
- 1 желток;
- 10 г ванильного сахара.
Для глазури:
- 50 г густого джема (лучше абрикосового);
- 200 г шоколада;
- 50 г сливочного масла.
Приготовление:
Приготовление торта Прага начинается с выпекания бисквитных коржей.
Для этого необходимо подготовить разъемную форму для выпечки диаметром
23-25 см, бумагу для выпекания, а также прогреть духовку до 200°С. Муку
смешать с какао-порошком и просеять через сито в большую миску.
Аккуратно отделить белки от желтков. Половину сахара взбить с желтками
миксером (до тех пор, пока масса не побелеет и не станет однородной).
Кстати, чем лучше взбить желтки, тем нежнее получится бисквит.
Белки необходимо взбивать миксером около двух минут, затем добавить к
ним сгущенное молоко, вторую половину сахара и сметану, после чего
взбивать еще три минуты. Белковую массу добавить во взбитые желтки.
Легкими движениями снизу вверх перемешать полученную массу. Обратите
внимание – очень важно мешать медленно и в одном направлении.
Добавить смесь муки и какао-порошка. Для этого лучше всего
использовать сито: просеивать муку с какао над белково-желточной массой и
аккуратно перемешивать снизу вверх. Дно формы выстелить бумагой для
выпечки, смазать всю форму сливочным маслом. Перелить в нее тесто и
поставить в разогретую духовку на один час.
Испечь бисквит, форму вынуть из духового шкафа и дать постоять минут
пять на влажном полотенце. Затем аккуратно снять боковые края формы,
отделить бисквитный торт от бумаги. Рекомендуется положить «Прагу» на
решетку и оставить на 8 часов. В этом случае один пласт будет легко
разрезать на несколько коржей.
Для приготовления крема необходимо подготовить пищевую пленку, а
сливочное масло заранее достать из холодильника, чтобы оно было мягким.
Желток отделить от белка. Смешать желток с водой, постепенно добавить
сгущенное молоко. Поставить массу на средний огонь или на водяную баню
и, постоянно помешивая, довести до кипения. Затем огонь нужно уменьшить и
подержать массу еще 2-3 минуты до загустения.
Крем снять с огня и продолжать помешивать для равномерного охлаждения
массы. После этого накрыть крем пищевой пленкой и оставить охлаждаться.
Размягченное сливочное масло необходимо взбить с ванильным сахаром.
Порциями добавить охлажденный крем в масло, продолжая его взбивать.
Добавить какао-порошок и еще раз взбить.
Бисквит разрезать на три коржа, одинаковых по толщине. Пропитать их
водкой. Собрать торт, промазывая коржи пражским кремом. Верхний корж
промазывать сверху не надо. На него нанести тонким слоем джем. Шоколад
растопить на водяной бане, добавить сливочное масло, хорошо перемешать.
Полученной шоколадной глазурью смазать верх и бока торта. Готовый торт
оставить в холодильнике часов на двенадцать.
Источник
- Главная
- Вопросы & Ответы
- Вопрос 5416603
Таня Масян
более месяца назад
Просмотров : 121
Ответов : 1
Лучший ответ:
Зачетный Опарыш
Он не цикличен поэтому его нельзя считать алгоритмом
более месяца назад
Ваш ответ:
Комментарий должен быть минимум 20 символов
Чтобы получить баллы за ответ войди на сайт
Лучшее из галереи за : неделю месяц все время
Другие вопросы:
Онтонио Веселко
Помогите! Как продолжить? В этом учебном году мне больше всего понравился рассказ Н. В. Гоголя “Ревизор”. В данном произведении автор высмеивает такие пороки как лицемерие ложь и чинопочитание
более месяца назад
Смотреть ответ
Просмотров : 18
Ответов : 1
Мари Умняшка
Как проверить слово бросаться?
более месяца назад
Смотреть ответ
Просмотров : 36
Ответов : 1
Главный Попко
Виннипедский волк тема какая и кто автор?
более месяца назад
Смотреть ответ
Просмотров : 27
Ответов : 1
Пармезан Черница
Да, всё хорошо в это счастливое время года, в особенности если вы любите природу… ДА РАЗБОР ПОД ЦИФРОЙ 3, ЗАРАНЕЕ СПАСИБО
более месяца назад
Смотреть ответ
Просмотров : 36
Ответов : 1
Энджелл
Y=cos^2(3x) найти производную
более месяца назад
Смотреть ответ
Просмотров : 23
Ответов : 1
Источник