Лекция 01. Тема Общая характеристика языков программирования высокого уровня


Download 4.1 Mb.
Pdf ko'rish
bet36/57
Sana12.11.2023
Hajmi4.1 Mb.
#1767546
TuriЛекция
1   ...   32   33   34   35   36   37   38   39   ...   57
Bog'liq
Lektsii po YaP Lukinova 2 sem

Обращение к блоку 
Итак, мы научились оформлять часть алгоритма в виде блоков, процедур 
или функций, которые размещаются в разделе описаний основной 
программы. Но написать текст подпрограммы еще не значит выполнить 
описанный в ней алгоритм. Для этого к блоку следует обратиться из тела 
программы.
Существуют специальные операторы вызовов процедур и функций. Для 
процедур оператор вызова имеет формат:
<имя процедуры>[(<список факт. параметров>)];
Здесь <список факт. параметров> - это список фактических параметров, 
построенный по следующему правилу.
Вместо входных формальных параметров следует подставить 

либо числовые значения

либо имена глобальных переменных, содержащих эти значения.
Делается это для того, чтобы “наполнить” операторы тела 
подпрограммы числовыми данными, иначе выполнение алгоритма будет 
невозможно.
Вместо выходных формальных параметров следует:

либо оставить имя той же переменной, что в заголовке,

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


Имя функции – это еще и ячейка с результатом, поэтому иначе, как в правой 
части оператора присваивания или списка параметров оператора вывода имя 
функции встретиться не может, поэтому обращение к функции можно 
использовать в арифметических или логических выражениях наряду с 
переменными и константами. 
Замена формальных параметров на фактические (связывание 
формальных и фактических параметров) и для процедуры, и для функции
может осуществляться как:
1. Позиционное, когда тип, количество и порядок следования 
фактических параметров строго соответствует типу, количеству и порядку 
следования формальных (языки Pascal, С и др.).
2. С использованием ключевых параметров, когда при обращении в 
заголовке фактический параметр указывается вместе с формальным
который выступает в роли ключа (языки Аda, Fortran-90): 
SUMER (LENGTH => MY LENGTH, LIST => MY LIST) 
Использование ключевых параметров дает различные гибкие 
возможности (хотя и повышает вероятность ошибок), например, в языках 
C++, Fortran-90, Аda разработчики «разрешили» формальным параметрам 
иметь еще и значения по умолчанию, которые будут использованы, если не 
задано фактическое:
function COM (IN: FLOAT; EX : INTEGER:=1; TAX : FLOAT)
……
return 
Тогда вызов этой функции следующий (при этом после пропущенного 
параметра все остальные должны быть ключевыми):
PAY:= COM(2000.0, TAX => 0.15);
В C++ ключевых параметров нет, поэтому те, что по умолчанию должны 
быть в конце списка:
function com (float in, float tax, integer ex =1);
обращение 


pay = com (2000.0, 0.15);
Кроме того языки С, С++ не следят за позиционированием параметров, 
т.е. соответствием количества формальных и фактических параметров. Это 
ответственность программиста, что, безусловно, снижает надежность языков.

Download 4.1 Mb.

Do'stlaringiz bilan baham:
1   ...   32   33   34   35   36   37   38   39   ...   57




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling