русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Тема 1.1.Алгоритм и способы его записи


Дата добавления: 2015-06-12; просмотров: 674; Нарушение авторских прав


Контрольная работа по программированию

Общие требования к выполнению контрольной работы и критерии оценки

Контрольная работа содержит два теоретических вопроса и четыре задачи и оценивается максимально в 20 баллов. Для получения зачета необходимо набрать не менее 12 баллов.

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

«2» – менее 11 баллов

«3» – 11-14 баллов

«4» – 15-17 баллов

«5» - 18-20 баллов

Вариант работы соответствует номеру студента в журнале.

Работа выполняется в текстовом процессоре MS Word (OOO Write). В верхнем колонтитуле указывается группа и ФИО студента, выполнявшего работу. Сначала пишется номер варианта контрольной работы. Затем записывается условие задания и его решение. Задания можно выполнять в любом порядке. При оформлении рекомендуется использовать шрифт Times New Roman, 14 размер, межстрочный интервал 1,15, выравнивание – по ширине. Отступ первой строки 1,25.

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

 

1. Алгоритмизация

Тема 1.1.Алгоритм и способы его записи

Одним из фундаментальных понятий в информатике является понятие алгоритма. Это слово происходит от Algorithmi – латинского написания имени Мухаммеда аль-Хорезми (787 – 850) выдающегося математика средневекового Востока. В своей книге «Об индийском счете» он сформулировал правила записи натуральных чисел с помощью арабских цифр и правила действий над ними столбиком. В дальнейшем алгоритмом стали называть точное предписание, определяющее последовательность действий, обеспечивающую получение требуемого результата из исходных данных. Более точно понятие алгоритма можно определить следующим образом.



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

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

К основным свойствам алгоритма можно отнести:

Алгоритм
Дискретность
Детерминированность
Определенность
Результативность и конечность
Массовость
Разделенность на часть и упорядоченность. Алгоритм должен состоять из отдельных действий, которые выполняются последовательно друг за другом.  
Однозначная определенность. Для одинаковых данных алгоритм при многократном выполнении дает одинаковый результат.
Каждое правило алгоритма должно быть четким, однозначным, не требующим дополнительных разъяснений.
Алгоритм должен приводить к решению задачи за конечное число шагов
Алгоритм решения задачи разрабатывается в общем виде, то есть, он должен быть применим для некоторого класса задач, различающихся только исходными данными

Алгоритмы можно разделить на механические и гибкие.

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

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

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

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

Линейный алгоритм – набор команд (указаний), выполняемых последовательно во времени друг за другом.

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

Циклический алгоритм – алгоритм, предусматривающий многократное повторение одного и того же действия (одних и тех же операций) над новыми исходными данными. К циклическим алгоритмам сводится большинство методов вычислений, перебора вариантов. Цикл программы – последовательность команд (серия, тело цикла), которая может выполняться многократно (для новых исходных данных) до удовлетворения некоторого условия.

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

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



<== предыдущая лекция | следующая лекция ==>
 | Требования к алгоритму


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.133 сек.