Лекция по информатике «Алгоритмизация и программирование»
Обращаем Ваше внимание, что в соответствии с Федеральным законом N 273-ФЗ «Об образовании в Российской Федерации» в организациях, осуществляющих образовательную деятельность, организовывается обучение и воспитание обучающихся с ОВЗ как совместно с другими обучающимися, так и в отдельных классах или группах.
- Онлайн
формат - Диплом
гособразца - Помощь в трудоустройстве
Лекция № 6: Алгоритмизация и программирование
Понятие исполнителя алгоритма
Исполнителем алгоритма может быть как человек (кулинарные рецепты, различные инструкции, алгоритмы математических вычислений), так и техническое устройство.
Различные машины (компьютеры, промышленные роботы, современная бытовая техника) являются формальными исполнителями алгоритмов.
От формального исполнителя не требуется понимание сущности решаемой задачи, но требуется точное выполнение последовательности команд.
1. Понятие алгоритма
С самого детства вы сталкиваетесь с алгоритмами, не осознавая этого. Алгоритмы появляются в ситуациях, которые можно описать в виде последовательности действий.
Например, с утра вас призывает радио «На зарядку становись!» Вам предлагается выполнить одно из упражнений в следующей последовательности:
1. Потянитесь, лежа в постели.
2. Сядьте на кровати, поставив ноги на пол.
3. Нагнитесь вперед, пытаясь достать руками пальцы ног.
4. Выгните спину дугой.
5. Сосчитайте до 10.
6. Вернитесь в исходное положение.
Рассмотрим еще пример. Вы решили зайти к другу, а у него в подъезде установлен домофон. Вы выполняете действия, следуя инструкции, вывешенной на входной двери:
1. Наберите номер квартиры.
2. Нажмите кнопку «Вызов».
3. Услышав прерывистый сигнал, ждите ответа.
4. Услышав ответ, говорите.
5. Услышав звуковой сигнал — входите.
В первом примере вашими действиями управляет спортивный инструктор по радио. Во втором случае вы сами в соответствии с инструкцией управляете техническим устройством (домофоном), с помощью которого осуществляется голосовая связь и дистанционное открытие двери. В обоих случаях вы совершаете заданную последовательность действий для достижения определенной цели. А если вместо вас будет кто-то другой, сможет ли он выполнить то, что делали вы? Конечно сможет, ведь эти инструкции адресованы любому человеку.
Из этого можно сделать важный вывод: «Строго следуя плану, любой человек, не знакомый ранее с описанной в плане последовательностью действий, получит ожидаемый результат».
Подробное описание действий, необходимых для получения ожидаемого результата, получило название алгоритма. С этим понятием вы сталкиваетесь постоянно.
— В кулинарных книгах собраны рецепты приготовления разных блюд.
— Любой прибор, купленный в магазине, снабжается подробной инструкцией.
— В журналах мод есть выкройки и описания, руководствуясь которыми можно сшить одежду.
— В популярных изданиях приводятся алгоритмы развития памяти, улучшения зрения.
— В школьных учебниках приводятся алгоритмы решения типовых задач.
Появление алгоритмов связывают с зарождением математики. Более 1000 лет назад (825 г.) ученый из города Хорезма Абдулла (или Абу Джафар) Мухаммед бен Муса аль-Хорезми создал книгу по математике, в которой описал способы выполнения арифметических действий над многозначными числами. Эти способы и сейчас изучают в школе. Само слово «алгоритм» возникло в Европе после перевода на латынь книги этого среднеазиатского математика, в которой его имя писалось как «Алгоритмы». «Так говорил Алгоритми», — начинали европейские ученые, ссылаясь на правила, предложенные Мухаммедом аль-Хорезми.
Научное определение понятия алгоритма дал А. Черч в 1930 году. Позже и другие математики вносили свои уточнения в это определение. В школьном курсе информатики вы будете пользоваться следующими определениями.
Алгоритм — описание последовательности действий (план), исполнение которых приводит к решению поставленной задачи за конечное число шагов.
Алгоритмизация — процесс разработки алгоритма (плана действий) для решения задачи.
Область математики, известная как теория алгоритмов, посвящена исследованию свойств, способов записи и сферы применения различных алгоритмов, а также созданию новых алгоритмов. Учеными всего мира накоплена уникальная коллекция алгоритмов обработки информации. Эта коллекция все время пополняется.
Теория алгоритмов находит применение в различных сферах деятельности человека. Появление компьютеров внесло свою лепту в эту теорию. Алгоритмы, реализованные на компьютере, позволили решать сложные задачи в различных областях, например:
— в медицине — автоматическая диагностика и обработка данных компьютерной томографии;
— в производстве — управление техническими устройствами, заменяющими человека в сложных или опасных для жизни условиях;
— в кинематографии — обработка изображений, моделирование пейзажей и движений, сжатие видео- и аудиоинформации;
— в Интернете — увеличение скорости поиска и обработки данных поисковыми системами;
— в аэрокосмонавтике — управление космическими кораблями и спутниками;
— в сфере безопасности — распознавание «свой-чужой» и т. д.
В какой форме записываются алгоритмы?
На практике наиболее распространены следующие формы представления алгоритмов:
- словесная (запись на естественном языке);
- графическая (изображения из графических символов);
- псевдокоды (полуформализованные описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.);
- программная (тексты на языках программирования).
Программный способ (текстовая запись)
Программа представляет собой алгоритм, который записан как последовательность команд. Речь идёт о командах, понятных компьютеру, для чего используются различные языки программирования, представляющие собой системы кодирования предписаний с правилами их применения. Языки программирования характеризуются строго определённым синтаксисом, то есть свободное толкование конструкций не допускается.
В случае программного способа представления алгоритмическая последовательность записывается в виде компьютерной программы с высокой степенью формализации. В результате появляется возможность решать прикладные задачи.
Пример — простейший алгоритм сложения 2-ч чисел, который записан средствами языка программирования Qbasic:
Словесный способ записи алгоритмов
Словесный способ – способ записи алгоритма на естественном языке. Данный способ очень удобен, если нужно приближенно описать суть алгоритма. Однако при словесном описании не всегда удается ясно и точно выразить логику действий.
В качестве примера словесного способа записи алгоритма рассмотрим алгоритм нахождения площади прямоугольника
где S – площадь прямоугольника; а, b – длины его сторон.
Очевидно, что a, b должны быть заданы заранее, иначе задачу решить невозможно.
Словестный способ записи алгоритма выглядит так:
- Начало алгоритма.
- Задать численное значение стороны a.
- Задать численное значение стороны b.
- Вычислить площадь S прямоугольника по формуле S=a*b.
- Вывести результат вычислений.
- Конец алгоритма.
Псевдокод
Псевдокод занимает промежуточное положение между естественным языком и языками программирования. Пример псевдокода — учебный алгоритмический язык. Алфавит учебного алгоритмического языка является открытым. Существенным достоинством этого языка является то, что его служебные слова, конструкции и правила записи алгоритма весьма схожи с теми, что применяются в распространенных языках программирования. Благодаря этому учебный алгоритмический язык позволяет легче освоить основы программирования.
Служебные слова учебного алгоритмического языка:
Вопросы и задания
1. Перечислите известные вам формы записи алгоритмов.
2. Злая мачеха отправила падчерицу к роднику за водой. «Вот тебе 2 ведра, в одно из них входит 9 литров воды, а в другое — 5 литров. Но ты должна принести домой ровно 3 литра воды», — сказала она бедной девушке.
Как должна действовать падчерица, чтобы выполнить это поручение?
Представьте этот алгоритм в словесной или табличной форме.
3. Какие геометрические фигуры используются в блок-схеме? Каким образом задается порядок выполнения отдельных действий в блок-схеме?
4. Алгоритм для исполнителя Кузнечик, находящегося на числовой оси над числом 3, представлен следующей блок-схемой:
Над каким числом окажется Кузнечик после выполнения этого алгоритма?
5. Исполнитель Кузнечик, находящийся на числовой оси над числом 0, должен перекрасить квадратики над числами 0, 2, 4 и 6.
В системе КуМир организуйте работу исполнителя Кузнечик по решению этой задачи в командном режиме.