Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Раздел: «Основы алгоритмизации»



РЕСПУБЛИКА КАЗАХСТАН

УНИВЕРСИТЕТ «ТУРАН»

 

 

 

 

Учебно-методический комплекс по дисциплине «Информатика»

Раздел: «Основы алгоритмизации»

 

Краткий конспект лекций

Методические материалы для лабораторных занятий

Методические рекомендации по СРСП и СРС

 

Для студентов специальности _________________________________________

 

 

АЛМАТЫ, 2009


Содержание

Краткий конспект лекции №11............................................................................................................. 3

Методические материалы для практического занятия №11............................................................ 12

Методические рекомендации по СРСП №1...................................................................................... 17

Методические рекомендации по СРС №1......................................................................................... 19

 


Краткий конспект лекции №11

Тема: Основы алгоритмизации.

Количество часов: 1 ч.

Понятие алгоритма

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

Алгоритмы использовались уже в древней Греции: алгоритм Герона вычисления квадратного корня, алгоритм Евклида нахождения наибольшего общего делителя двух натуральных чисел. Позднее было изобретено много алгоритмов решения вычислительных задач — численного решения уравнений, систем линейных алгебраических уравнений и т.п.

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

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

Исполнители алгоритмов

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

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

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

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

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

q Понятность. В алгоритм можно включать команды только из системы команд данного исполнителя.

q Определенность (или детерминированность) – характеризует однозначность выполнения каждого отдельного шага преобразования информации. Например, робот будет поставлен в тупик командой " Взять две-три ложки песка": что значит " две-три"?, какого песка?

q Результативность (или конечность) – предполагает завершение работы алгоритма в целом за конечное число шагов;

q Массовость – характеризует пригодность алгоритма для решения определенного класса задач.

Этапы решения задачи на компьютере

Процесс решения задачи на компьютере включает в себя следующие основные этапы:

1. Постановка задачи.

2. Выбор метода решения (построение математической модели).

3. Разработка алгоритма.

4. Составление программы.

5. Реализация программы на компьютере.

6. Анализ полученных результатов.

Постановка задачи

Прежде чем решать задачу на компьютере, необходимо четко определить, чем мы располагаем — какие есть исходные данные, каковы ограничения на них, что будет являться решением задачи. Если задача конкретная (например, надо решить уравнение 2х2 + 3х + 5 = 0, где коэффициенты уравнения — константы), то под постановкой задачи понимаем ответ на вопросы:

q какие исходные данные известны;

q что требуется определить.

Если задача обобщенная (например, надо решить квадратное уравнение 2 + + c = 0), от отвечать при постановке задачи понадобится еще на третий вопрос: какие данные допустимы. Итак, постановка задачи " решить квадратное уравнение 2 + + c = 0" выглядит следующим образом:

Дано: a, b, c — коэффициенты уравнения.

Требуется: x1, x2 — корни уравнения. Ограничения: a ¹ 0. D = b2 - 4ac ³ 0.

Выбор метода решения (построение математической модели)

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

Разработка алгоритма

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

Составление программы

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

Реализация программы на компьютере

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

Анализ полученных результатов

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

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

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

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

Конец ветвления

Вывести значение у

Конец

Общий вид полной условной конструкции, реализующей ветвление при графическом представлении алгоритма, изображен на Рис. 3. Здесь Q — проверяемое условие; Т — действие, которое должно быть выполнено в случае истинности условия Q (положительная ветвь ветвления); Р — действие, выполняемое, если условие Q ложно (отрицательная ветвь ветвления).

Рис. 3 Рис. 4

 

При словесном представлении алгоритма полная условная конструкция реализуется командой ветвления вида:

Если Q то

T

Иначе

P

Конец ветвления

Но возможен и другой вариант — неполная условная конструкция (Рис. 4), достаточно часто встречающаяся при решении задач.

При словесном представлении алгоритма ей отвечает команда ветвления:

Если Q то

T

Конец ветвления

Циклические алгоритмы

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

Однако " неоднократно" не значит " до бесконечности". Организация циклов, никогда не приводящая к остановке в выполнении алгоритма (так называемое " зацикливание" ), является нарушением требования его результативности — получения результата за конечное число шагов.

Рассмотрим графическое представление циклического блока алгоритма (Рис. 5). В него входят в качестве базовых следующие структуры: логический элемент с проверкой условия Q и блок S, называемый телом цикла. Здесь тело цикла S расположено после проверки условия Q (цикл с предусловием), поэтому может случиться, что при определенных условиях блок S не выполнится ни разу. Такой вариант организации цикла, управляемый предусловием, называется цикл-пока.

Рис. 5

При словесном представлении алгоритма команда, организующая повторение в цикле-пока имеет вид:

Пока Q повторять

S

Конец цикла

Таким образом, если Q не выполняется, то предусмотрен выход из цикла на команду, записанную после строки " Конец цикла". Здесь условие Q — это условие на продолжение цикла.

Возможен другой случай, когда тело цикла S выполняется, по крайней мере, один раз и будет повторяться до тех пор, пока не выполнится условие Q (Рис. 6). Такая организация цикла, когда тело цикла, расположено перед проверкой условия Q, носит название цикла с постусловием или цикла-до. Истинность условия Q в этом случае — причина окончания цикла. Команда, организующая цикл-до, приведена ниже:

Рис. 6 Повторять S пока не Q Конец цикла  

 

Задачи на линейный алгоритм

Упражнение 1. Найти сумму двух данных чисел.

Дано: a, b — слагаемые.

Требуется: sum — сумма значений а и b.

Метод решения: sum = a + b.

Словесная форма алгоритма:

Запросить значение переменной а

Запросить значение переменной b

Записать в переменную sum значение выражения a+b

Вывести на печать значение переменной sum

Блок-схема:

Тестирование алгоритма

Зададим количество суммируемых первых натуральных чисел n = 5. Мы должны получить значение суммы первых пяти натуральных чисел S = 15. Протрассируем алгоритм и запишем значения переменных на каждом шаге в таблицу.

Тело цикла будет выполняться 5 раз.

№ шага iна входе в тело цикла S   iна выходе из тела цикла
     
S: = S + i 0+1 = 1® S i: = i + 1 1 +1=2® i
   
S: = S + i 1+2 = 3® S i: = i + 1 2 +1 =3® i
   
S: = S + i 3+3 = 6 ® S i: = i + 1 3 +1 =4® i
   
S: = S + i 6+4 = 10® S i: = i + 1 4 +1 =5® i
   
S: = S + i 10+5 = 15® S i: = i + 1 5 +1 =6® i

 


Методические рекомендации по СРСП №1

РЕСПУБЛИКА КАЗАХСТАН

УНИВЕРСИТЕТ «ТУРАН»

 

 

 

 

Учебно-методический комплекс по дисциплине «Информатика»

Раздел: «Основы алгоритмизации»

 

Краткий конспект лекций

Методические материалы для лабораторных занятий

Методические рекомендации по СРСП и СРС

 

Для студентов специальности _________________________________________

 

 

АЛМАТЫ, 2009


Содержание

Краткий конспект лекции №11............................................................................................................. 3

Методические материалы для практического занятия №11............................................................ 12

Методические рекомендации по СРСП №1...................................................................................... 17

Методические рекомендации по СРС №1......................................................................................... 19

 


Краткий конспект лекции №11


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-07-14; Просмотров: 632; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.037 с.)
Главная | Случайная страница | Обратная связь