Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Алгоритмы с результатами

Читайте также:
  1. II. Алгоритмы манипуляций и инфекционная безопасность
  2. Адаптивные (динамические) алгоритмы маршрутизации по вектору расстояния
  3. Алгоритмы манипуляций
  4. Алгоритмы с несколькими аргументами
  5. Величины: константы, переменные, типы величин. Присваивание. Ввод и вывод величин. Линейные алгоритмы работы с величинами
  6. Задачи, алгоритмы

Простейший пример алгоритма с результатами

Как мы уже знаем, для задания исходной информации в алгоритме используются аргументы. Но алгоритм может не только получать информацию, но и отдавать ее (рис. 62). Для этого существует специальный вид величины — результаты.

 

Рис. 62

 

Рассмотрим пример алгоритма с результатом.

 
 
А56


алг гипотенуза (арг вещ а, b, рез вещ с)

дано а >= 0 и b >= 0 | длины катетов треугольника

надо | с = длина гипотенузы этого треугольника

нач

| с:= sqrt (а**2 + b**2)

кон

Запись рез вещ с означает, что результат (рез) выполнения этого алгоритма — одна вещественная (вещ) величина, которая в алгоритме обозначена как с.

 

Выполнение алгоритма с результатами

 

В команде вызова вспомогательного алгоритма на месте его результатов указываются имена величин основного алгоритма, в которых должны оказаться вычисленные значения. Например, если нам надо в основном алгоритме "вычисление" найти гипотенузу х прямоугольного треугольника с катетами р - 1 и р + 1, то достаточно написать вызов вспомогательного алгоритма "гипотенуза" (А56):

 

алг вычисление

нач вещ р, х

гипотенуза (р - 1, р + 1, х)

Кон

Пусть к моменту выполнения этого вызова величина р имеет значение 7 (рис. 63).

 

 

Рис. 63

 

Встретив вызов "гипотенуза (р - 1, р + 1, х)", компьютер вычислит значения р-1 и р+1 передаст их алгоритму "гипотенуза" в качестве значений аргументов а и b. Значение х в этот момент не вычисляется, так как х соответствует результату вспомогательного алгоритма.

Затем начинается выполнение вспомогательного алгоритма "гипотенуза". Выделяется память алгоритма, в ней создаются ячейки для аргументов а, b и результата с, аргументы получают значения, переданные из основного алгоритма (рис. 64).

 

Рис. 64

 

В памяти компьютера при этом будет одновременно храниться информация, относящаяся и к алгоритму "вычисление", и к алгоритму "гипотенуза". Далее ЭВМ выполнит алгоритм "гипотенуза" и вычислит значение величины-результата с (рис. 65).

 

Рис. 65

 

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

 


Рис. 66

 


Дата добавления: 2015-07-14; просмотров: 277 | Нарушение авторских прав


Читайте в этой же книге: Пример алгоритма с аргументом | Выполнение вспомогательного алгоритма с аргументами | Алгоритмы с несколькими аргументами | Закрашивание прямоугольника | Заголовок алгоритма с аргументами | Арифметические выражения в алгоритмическом языке | Порядок действий в арифметических выражениях | Компьютер выполняет подсчет | Модель памяти компьютера | Еще один пример алгоритма, работающего с величинами |
<== предыдущая страница | следующая страница ==>
Рисование параболы| Последовательный (линейный) поиск

mybiblioteka.su - 2015-2024 год. (0.011 сек.)