Алгоритмизация и программирование




 

Понятие алгоритма и его свойства. Блок-схема алгоритма. Основные алгоритмические конструкции. Базовые алгоритмы

Алгоритм - это описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.

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

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

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

· Результативность (конечность) – алгоритм должен приводить к решению задачи за конечное число шагов. При этом для различных наборов данных алгоритм должен оставаться правильным

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

 

Для записи алгоритмов используются различные способы их записи:

· Словесный – словесная запись на естественном языке

· Блок-схемы – формальный язык представленный графическим способом записи с использованием геометрических блоков и отображением передачи управления в виде стрелок

· Структурограммы (схемы Насси Шнайдермана)– графический способ записи для отображения вложенности процессов

· Псевдокод – словесная запись с использованием ограниченного набора служебных слов

· Программный– запись на языке программирования

 

Технология программирования - это система методов, способов и приемов обработки и выдачи информации. Одной из распространенных методик создания программной продукции было структурное программирование.

Цели структурного программирования:

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

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

3) уменьшить время и стоимость программной разработки. Достижимо при повышении производительности труда программиста;

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

 

Основой метода структурного подхода программированию являются:

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

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

 

Примеры алгоритмических структур на примере блок-схем

 

Базовая алгоритмическая структура Графическая форма
следование  
ветвление    
повтор Блок повтора с известным числом посторенний     Блок повтора с предусловием – пока условие истинно выполняется повтор цикла
 
 

 


Блок повтора с постусловием – повтор цикла выполняется до тех пор, пока условие не станет истинным

 

 

 

       
 
нет
 
да

 

 


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

a. Линейный – использование только структуры следование

b. Разветвляющийся – использование структуры ветвление и возможно следование

c. Циклический – использование структуры повтор и возможно структур следование и ветвление

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-01-11 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: