Какие значения формальных и фактических параметров должны совпадать
Перейти к содержимому

Какие значения формальных и фактических параметров должны совпадать

Запишите, какие значения формальных и фактических параметров должны совпадать.

Как быстро выучить стихотворение наизусть? Запоминание стихов является стандартным заданием во многих школах.

Как научится читать по диагонали? Скорость чтения зависит от скорости восприятия каждого отдельного слова в тексте.

Как быстро и эффективно исправить почерк? Люди часто предполагают, что каллиграфия и почерк являются синонимами, но это не так.

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

Количество и тип формальных и фактических параметров должны в точности совпадать

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

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

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

Все переменные программы делятся на глобальные и локальные. Глобальные переменные объявляются в разделе описаний основной программы. Локальные переменные объявляются в процедурах и функциях. Таким образом, локальные переменные «живут» только во время работы подпрограммы.

Пример. Составить программу для вычисления а n : целые числа а и n (n>=0) вводятся с клавиатуры. ( составить процедуру для вычисления степени целого числа).

Programex;

var a, n : integer;

ProcedureDegree(x,y : integer; varst : longint);

vari : integer;

Begin

for i:=1 to y do st:=st*x;

end;

Begin

writeln(‘введите два числа — основание и показатель степени’);

End.

Процедура названа именем Degree. В скобках записан список формальных параметров, то есть перечислены переменные с указанием их типа. Используем три параметра: первый — основание степени, то есть число, которое надо возвести в степень; второй — показатель степени, третий — результат. Первые два формальных параметра — параметры значения, третий — параметр-переменная, и перед ним указано слово var.Все они описаны как целые (x и y — переменные типа integer, st — Longint, так как степенная функция быстро возрастает).

После заголовка процедуры идут разделы описаний. В нашем примере имеется только раздел описания переменных, в котором описывается одна переменная i (счетчик цикла).

Далее идет тело процедуры. Оно начинается служебным словом Beginи заканчивается служебным словом End,после которого стоит точка с запятой (в конце программы после последнего End ставится точка). В теле процедуры вычисляется степень числа x с помощью цикла For.

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

. Процедура вызывается как оператор, состоящий из имени процедуры. В круглых скобках записываются фактические параметры. В нашем примере формальные параметры x, y и st принимают значения фактических параметров a, n и s соответственно. После завершения работы процедуры переменные a и n сохранят те же значения, что и при вызове, а s получит новое значение.

Пример 2 : Используя процедуру для вычисления степени числа, найти значение выражения : y=a4x 4 + a3x 3 + a2x 2 + a1x + a0

var a: array[0..4] of integer;

ProcedureDegree(xx,n : integer; varst : longint);

vari : integer;

Begin

for i:=1 to n do st:=st*xx;

end;

Begin

write(‘введите значение переменной х ‘); readln(x);

writeln(‘введите массив коэффициентов’);

for i:=0 to 4 do begin write(‘a[‘,i,’]=’); readln(a[i]); end;

Пример 3.Просуммировать различные части массива.

var a: array [1..100] of integer; sa1, sa2,sa3 : integer;

procedure summa(a:array [1..100] of integer; k,m :integer; var s:integer);

Большая Энциклопедия Нефти и Газа

Обязательно должно выполняться количественное соотношение между формальными и фактическими параметрами , соответствие между именами внешних функций ( процедур), выступающих в качестве формальных и фактических параметров. Соответствие между параметрами формальными и фактическими устанавливается порядком следования их в списках параметров. Фактическим параметром может быть: а) только переменная, если соответствующий ему формальный параметр — переменная, принимающая значения в результате выполнения подпрограммы, в противном случае в качестве фактического параметра может использоваться число, переменная и выражение; б) идентификатор массива или переменная с индексами ( элемент массива), если соответствующий формальный параметр — идентификатор массива. Причем количество элементов в формальном массиве не должно превышать количества элементов в фактическом массиве. В формальных массивах допускаются так называемые регулируемые размеры. Описатель структуры таких массивов в качестве максимальных значений некоторых индексов содержит простые переменные целого типа, которые и называются регулируемыми размерами. Каждый из таких размеров должен входить либо в список формальных параметров подпрограммы-функции, либо в одну из общих областей. К моменту обращения к подпрограмме-функции регулируемые размеры должны принимать конкретные значения, которые передаются в первом случае через фактические параметры указателей функций, а во втором — через переменные, входящие в состав общих областей. Подпрограмма-функция выполняется только при обращении к ней с помощью указателя функции. Обмен данными ( между вызывающей программой и подпрограммой) через параметры осуществляется двумя способами — путем вызова фактических параметров по имени и по значению. В первом случае перед началом выполнения подпрограммы формальный параметр во всех операторах подпрограммы всюду заменяется на соответствующий фактический параметр, и все действия, предусмотренные над формальным параметром, в действительности будут выполняться над соответствующим фактическим параметром. Во втором случае перед началом выполнения подпрограммы значение фактического параметра присваивается соответствующему формальному параметру. После выполнения подпрограммы фактический параметр получает значение соответствующего формального параметра.  [17]

Обязательно должно выполняться количественное соответствие между формальными и фактическими параметрами , а также соответствие по порядку — следования их в списках А и AF.  [18]

В Фортране 90 обязательно выполняется проверка соответствия формальных и фактических параметров подпрограмм по типу и числу. Передача параметров возможна по значению и по ссылке. Программист может присвоить параметрам атрибуты: IN для немодифицируемых параметров, опт для возвращаемых и шоит для модифицируемых параметров. Процедурные переменные должны быть внешними или модульными процедурами.  [19]

Описание языка Паскаль [91] требует, чтобы типы формальных и фактических параметров совпадали. А это в случае передачи в качестве параметров массивов означает, что и размеры массивов, указанных в качестве формальных и фактических параметров, должны совпадать. Примером такой стандартной подпрограммы может служить сортировка.  [20]

В зависимости от контекста нам часто придется ссылаться на формальные и фактические параметры функции как на ее аргументы.  [21]

Одним из следствий использования механизма сильной типизации является то, что типы формальных и фактических параметров должны совпадать. Рассмотрим пример из практики.  [22]

В заключение обратим внимание на одну особенность, имеющую место при написании формальных и фактических параметров .  [23]

При обращениях к подпрограммам и подпрограммам-функциям необходимо следить за тем, чтобы количество формальных и фактических параметров и их типы соответствовали друг другу.  [24]

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

Требуется полная совокупность спецификации для всех формальных параметров процедур и эквивалентность типов между соответствующими формальными и фактическими параметрами , вызываемыми по наименованию.  [26]

При обращении к подпрограмме Р5 максимальные значения индексов формального массива R передаются через аппарат формальных и фактических параметров , а формального массива Т — через неименованную общую область.  [27]

Подпрограмма получает через вышеупомянутые ячейки информацию о фактических параметрах и устанавливает взаимнооднозначное соответствие между формальными и фактическими параметрами . Затем производится выполнение подпрограммы.  [28]

При программировании подпрограмм ( и функций) и их вызова ( возврата) необходимо соблюдать соответствие описателей формальных и фактических параметров .  [29]

При пользовании библиотеками возникает принципиальная опасность, состоящая в том, что компилятор не может проверить соответствие формальных и фактических параметров . Это означает, что ответственность за соответствие списков параметров как по числу, так и по типам параметров, ложится целиком и полностью на вас.  [30]

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *