VirtualHole

Форум   Гостевая   Написать   Обо мне

Добавить в Избранное Сделать Стартовой Отправить ссылку друзьям

Программирование
Алгоритм
Си, С++
Деньги
За серфинг
За баннеры
О чеках
Вебмастеру
Учеб-ки по HTML
Изучаем HTML
Проверка прокси
Хостинг
Раскрутка сайта
Студенту
Банк Рефератов
Юмор
Анекдоты


Основы алгоритмизации


Алгоритмом
называют конечную последовательность инструкций, понятных исполнителю, приводящую от исходных данных к требуемому результату решения задач. Слово “алгоритм” пришло из средней Азии, как результат английской транскрипции математика Али из Хорезма. Он первый опубликовал книгу, в которой изложил основы арифметических действий в десятичной системе исчисления.

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

  1. пошаговость(дискретность);

  2. однозначность(детерминированность);

  3. понятность(алгоритмы пишущиеся на изначально – понятном пользователю языке, такие языки называются алгоритмическими);

  4. конечность(результат должен быть получен за конечное число шагов);

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

Существует несколько форм представления алгоритмов решения задач:

  1. естественный язык;
  2. использование графических схем;
  3. использование алгоритмических языков, представителями которых являются языки программирования.

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

Замечание! Программа и алгоритм совсем не одно и тоже, так как программа – это единство описания данных и алгоритма обработки этих данных.

Блок – схема – это схема выполнения шагов алгоритма по блокам.

Структурные схемы алгоритма

Выделяют 3 основных типа структурных алгоритмических конструкций:

1. Конструкция, в которой алгоритмические шаги выполняются в той же последовательности как они записаны, то это конструкция следования(линейный алгоритм).

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

3. Третья конструкция - повторения. Группу алгоритмических шагов, которые последовательно повторяются определенное количество раз наз. циклом. Всякий цикл состоит из: заголовка(инициализация цикла), тела цикла(к телу относят все шаги, которые повторяются), конец цикла.

К основным циклическим конструкциям относят: цикл Пока(цикл с предусловием), цикл До(постусловие).

В цикле Пока конструкция состоит из проверки условия и выполнении тела цикла, если условие истинно.

цикл Пока         цикл До 

В теле цикла происходят события, которые влияют на истинность условия цикла.

Условие цикла – это логическое выражение на основании истинности которого принимаются решения о необходимости повторения.

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

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

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

Представление алгоритмов с помощью алгоритмических языков

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

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

 

TopList

Hosted by uCoz