3505

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

Лекция

Информатика, кибернетика и программирование

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

Русский

2012-11-02

69.15 KB

14 чел.

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

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

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

Термин «алгоритм» (algorithmi) происходит от латинского написания имени узбекского математика и астронома IX века Мухаммеда ибн Муса аль-Хорезми, который в первые (825г.) разработал правила выполнения четырех арифметических действий в десятичной системе счисления.

Свойства алгоритмов и требования к алгоритмам

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

  1.  массовость – алгоритм должен быть пригодным для решения любой задачи определенного класса;
  2.  структурированность – алгоритм должен содержать четко обозначенные фрагменты, решающие стандартные задачи;
  3.  дискретность – последовательное выполнение команд, с точной фиксацией моментов окончания выполнения одной команды и начала выполнения следующей;
  4.  однозначность – для каждой ситуации должна быть задана однозначная последовательность действий;
  5.  конечность – алгоритм должен оканчиваться после конечного числа шагов;
  6.  малая связность – необходимо стремиться к уменьшению объема промежуточных хранимых данных;
  7.  самоконтроль – при некоторых неверных действиях и/или ошибках алгоритм должен иметь соответствующую проверку и возможно коррекцию;
  8.  рациональность – алгоритм должен быть по возможности максимально простым.

Соблюдение всех этих требований позволит разрабатывать эффективные и надежные алгоритмы.

Формы представления алгоритмов

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

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


Блоки начала и конца алгоритма:

Конец

Начало

Блок произвольных команд:

команды

алгоритма

Блок ввода/вывода данных:

ввод/вывод

данных

Условный блок (блок ветвления):

выполняется

некоторое

условие?

да

нет

Блок отдельной подпрограммы (процедуры/функции):

команды

подпрограммы

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

Алгоритм нахождения минимального 

В качестве примера разработки и представления алгоритмов рассмотрим алгоритм решения следующей задачи:

Заданы три числа: a, b, c. Найти среди них число с минимальным (наименьшим) значением.

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

Попробуйте самостоятельно разработать такой алгоритм.

Ниже представлен контрольный алгоритм решения данной задачи в виде словесного описания и в виде блок-схемы.

Словесное описание алгоритма нахождения минимального из трех.

  1.  Ввод чисел a, b, c.
  2.  Если b>a, то на шаг 6.
  3.  Если c>b, то на шаг 9.
  4.  Минимальное с.
  5.  На шаг 10.
  6.  Если a>c, то на шаг 4.
  7.   Минимальное a.
  8.  На шаг 10.
  9.  Минимальное b.
  10.  Вывод минимального числа.
  11.   Конец.


Блок-схема алгоритма нахождения минимального из трех.

да

  c>a ?

нет

да

да

Начало

ввод a,b,c

 b>a ?

  c>b ?

нет

минимальное

b

минимальное

c

нет

минимальное

a

Конец

вывод

минимального

 


 

А также другие работы, которые могут Вас заинтересовать

12073. АНАЛИЗ СОВРЕМЕННОЙ ПРАКТИКИ КРЕДИТОВАНИЯ ФИЗИЧЕСКИХ ЛИЦ В СБЕРЕГАТЕЛЬНОМ БАНКЕ РФ НА ПРИМЕРЕ ДОПОЛНИТЕЛЬНОГО ОФИСА № 203 АКБ СБ РФ ОАО ГОРОДСКОЕ ОТДЕЛЕНИЕ № 2363 Г.НОВОКУЗНЕЦК 587 KB
  ВВЕДЕНИЕ В условиях перехода экономики России к рыночным отношениям развитие потребительского кредитования приобретает все большее значение. Коммерческий банк выдавая потребительский кредит способствует в первую очередь решению финансов...
12074. Расчёты потребности механообрабатывающего цеха в материальных, трудовых ресурсах 935.5 KB
  СОДЕРЖАНИЕ Введение 1 Краткое описание объектов производства и их технологических процессов 2 Планирование производства продукции 3 Расчет потребности в оборудовании и его загрузки ...
12075. Учет и аудит расчетов по оплате труда в бюджетных организациях 622.5 KB
  ДИПЛОМНАЯ РАБОТА На тему Учет и аудит расчетов по оплате труда в бюджетных организациях Аннотация Дипломная работа состоит из введения 3х глав заключения списка используемой литературы. Во введении обосновывается актуальность темы определяются цели и ...
12076. Причины реформирования бюджетной системы и последние поправки к БК РФ 167.5 KB
  Введение. В формировании и развитии экономической структуры современного общества ведущую определяющую роль играет государственное регулирование осуществляемое в рамках избранной властью экономической политики. Одним из наиболее важных ме...
12077. Параметры продуктов сгорания в камере ракетного двигателя 127.79 KB
  Отчет Лабораторная работа №1 Параметры продуктов сгорания в камере ракетного двигателя Цель работы: С помощью термодинамического метода определить параметры продуктов сгорания топлива в камере. Исходные данные для расчетов: Компоненты: Кислород...
12078. Розроблення проекту бази даних Microsoft SQL Server 2005 1.49 MB
  Розроблення проекту бази даних Microsoft SQL Server 2005 Інструкція до лабораторної роботи № 1 з курсу Бази даних та знань Розроблення проекту бази даних Microsoft SQL Server 2005: Інструкція до лабораторної роботи № 1 з курсу Бази даних та знань для студентів базового напр
12079. Створення ER-діаграми для проектування БД 80.5 KB
  Створення ERдіаграми для проектування БД з курсу: Проектування банків даних для компютерних систем проектування 1. Мета роботи Ознайомитися та оволодіти інструментом уніфікованого представлення даних моделлю сутністьзвязок 2. Короткі теоретичні відо...
12080. Візуальне програмування при обєктно-орієнтованому підході 1.31 MB
  Візуальне програмування при обєктноорієнтованому підході МЕТОДИЧНІ ВКАЗІВКИ до виконання лабораторних робіт з дисципліни Обєктноорієнтоване програмування для студентів базового напрямку Програмна інженерія Візуальне програмування при об
12081. Створення та використання класів 72.5 KB
  Тема. Створення та використання класів. Мета. Навчитися створювати класи використовувати конструктори для ініціалізації обєктів опанувати принципи створення функційчленів. Навчитися використовувати різні типи доступу до полів та методів класів. Теоретичні