русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Параметри-значення та параметри-змінні.


Дата додавання: 2013-12-23; переглядів: 3812.


Параметри - значення виконують роль вхідних параметрів процедури. Вони можуть отримувати значення фактичних параметрів, але не можуть передавати свої значення фактичним параметрам. Параметри-змінні виконують роль як вхідних, так і вихідних параметрів процедури. Вони можуть отримувати значення фактичних параметрів, змінювати їх в процедурі та повертати нові значення фактичним параметрам. Для виділення параметрів-змінних перед ними ставиться слово VAR.

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

 

Приклад: Є масив дійсних чисел С [і], де і=(1,п). Визначити мінімальний елемент і порядковий номер (в вигляді процедури без параметрів ).

program proz2;

const n-5;

var c: array [I.. n] of real;

i,k: Integer;

m:real;

procedure min;

var k:integer;

begin

m: =c[1];

for i: =2 to n do

If m>c[i] then

begin

m: =c [i];

k:=i;

end;

end;

begin

witeln('Bведіть масив ');

for i: =1 to n do read(c[i]);

min;

writeln('Мінімальний елемент= ',т:8:2);

writeln('Його порядковий номер =’,k:2);

END.

 

Приклад: написати програму підрахунку кількості зірочок в першому рядку і кількість літер ' k' в другому.

program proz3;

type str=array[1.. 2 5 5] of char;

var a,b:str;

xl,x2, i, kol: integer;

ch:char;

procedure sumb(ch:char; var m:integer; mas:str; n: integer);

{(символ} (кіл-ть) (мас) (границя)}

var m:integer;

begin

т: =0;

for і: =1 to n do

If mas[i]=ch then m: =т+1;

end;

Begin

write('Bведіть кількість елементів в першому рядку');

readln (xl);

for і: =1 to x1 do read(a[i]);

write ('Введіть кількість елементів в другому рядку');

readln(x2);

for і:=1 to x2 do read(B[i]);

sumb (' * ', kol,a,xl);

writeln(‘Кількість * = ',kol);

sumb ('k', kol, b,x2);

writeln ('Кількість k = ',kol);

End.

Приклад:Знайти суму і добуток елементів у двох масивів: М[і],i =(1,10); N[i]=(1..5), (У процедурі).

 

program proz4;

uses crt;

type a=array[1.10] of Integer;

var masl,mas2:a;

i,summa, dob: integer; N1,N2: integer; kol:integer;

procedure L (n: integer;var mas: a; var sum, pr: integer) ;

begin

sum:=0; pr:=1;

for i: -1 to kol do begin

sum: =sum+mas [i];

pr: =pr*mas[i] ;

end;

end;

begin

clrscr;

writeln('Bведіть кількість елементів масивів 1-го, ІІ-го');

read(nl,n2);

writeln('Bвeдimь 1-й масив');

for і:=1 to n1 do read (masl [i]);

L(nl,MAS1, summa, dob);

writeln('Сумма:=',summa:2);

writeln(‘Дo6ymoк=’,dob:2) ;

writeln('Введіть 2-й масив');

for і:=1 to n2 do read(mas2[i] );

L (n2, mas2, summa, dob);

writeln(‘Cyммa= ', summa:2) ;

writelп('Добуток= ', dob:2) ;

END.

Завдання 1: Є масив цілих чисел М[1..20]. Обчислити суму елементів з 5-го по 15-й і з 15-го по 20-й (в процедурі).

program proz5;

uses crt;

var sum, n,i,j: integer;

m: array [I ..20] of integer;

procedure proc(i,j: integer);

begin

sum:=0;

for n:=i to j do sum: =sum+m[n];

writeln('from ', i, 'to ',j, ' ':3,'сума= ',sum);

end;

begin

clrscr;

writeln(‘введіть елементи масива');

for n:=1 to20 do

read(m[n]);

proc(5,15);

proc(15,20);

end.


<== попередня лекція | наступна лекція ==>
Структура процедури. | Відмінні особливості функції в порівнянні з


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн