Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Конец если




Цикл

Конец если

Конец если

Иначе

Конец если

Развилка

Следование

Типы вычислительных процессов

Выполнение

Загрузка

Процесс загрузки программы был описан выше, поэтому отметим лишь основные функции данного этапа:

- определение и выделение необходимой памяти под программу и данные;

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

- передача управления первой инструкции главной процедуры.

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

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

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

Пример.

y=a+b z=2*y*y+a*y+b print(z)

Это двухальтернативный выбор, который на псевдокоде можно записать так:


если <условие> то

<действие 1>

[ иначе

<действие 2>]


Как <действие 1>, так и <действие 2> могут являться комбинацией всех 3 базовых структур, поэтому с помощью данной структуры можно организовать более двух ветвей алгоритма. Квадратные скобки вокруг альтернативы иначе означают необязательность этой ветви.


Пример. Найти x =max(a, b), y =min(a, b).


Вариант 1.

если a>b то

x=a

y=b

x=b

y=a

Вариант 2.

x=a

y=b

если a<b то

x=b

y=a


Это последовательность действий, повторяющаяся до тех пор, пока выполняется некоторое условие. Цикл в общем случае состоит из 4 блоков: инициализации цикла; логического блока, содержащего условие продолжения или окончания цикла; тела цикла – последовательности инструкций, выполняемых при каждом повторении, и блока, в котором производится изменение условия продолжения (или окончания) цикла. В зависимости от того, как расположен блок условия по отношению к телу цикла, различают цикл с предусловием (условие проверяется до выполнения тела цикла) и цикл с постусловием (условие проверяется после выполнения тела цикла). В первом случае тело цикла может ни разу не выполниться, во втором – оно выполнится хотя бы 1 раз. На рисунке показаны обобщенные блок-схемы цикла каждого вида. В некоторых частных случаях отдельные блоки могут отсутствовать.

Цикл с предусловиемЦикл с постусловием

 
 

 

 


Пример. Сортировка массива методом "пузырька" {ai}, i=1...n.

k=1 Исходный массив: {24, -12, 0, 123, -2, 57}

пока k>0 делать Результат: {-12, -2, 0, 24, 57, 123}

k=0

для i от 1 до n-1 выполнить

если ai > ai+1 то

b=ai

ai=ai+1

ai+1=b

k=1




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 547; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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