Студопедия — Нетипізовані параметри-змінні
Студопедия Главная Случайная страница Обратная связь

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

Нетипізовані параметри-змінні






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

 

<тип>; - в заголовку безпосередньо може бути визначенийтільки простий тип. Будьякий стуктурований тип визначається тільки через ідентифікатор типу.

 

Приклад:

неприпустимо:function f(а,в:array[1..10] of real):integer;

 

повинно бути:type t=array[1..10] of real;

function f(а,в:t):integer;

 

але для окремого елементу:

function f1(а,в:real):boolean;

begin

if a>b then f1:=true

else f1:=false;

end;

{виклик для і-тих елементів масивів}

writeln(f1(a[i],b[i]));

 

 

Приклад: возведення у цілий степінь

 

var a:real;

function power(factor:real;expo:integer):real;

var count:integer;

rez:real;

begin

if expo=0 then power:=1

else begin

rez:=factor;

for count:=2 to abs(expo) do

rez:= rez*factor;

if expo<0 then power:=1/rez

else power:=rez

end

end;

{ головна програма }

begin

:

{обчислити x=2a**5+a**3+1}

x:=2*power(а,5)+power(a,3)+1;

:

end.

 

Приклад: функція повертає номер символа, з якого починається n-те входження підрядка subs у рядок s. Одночасово повертається загальне число входжень count. При невдалому пошуку повертається значення 0.

 

program example;

var c:byte; { загальне число входжень підрядка у рядок }

function posN(subs,s:string;n:byte;var count:byte):byte;

var p,pn:byte;

begin

count:=0;

pn:=0;

repeat

p:=pos(subs,s);

if count<n then inc(pn,p);

inc(count);

delete(s,1,p);

until p=0;

dec(count);

if N<=count then posN:=pn

else posN:=0;

end;

{ головна програма }

begin

writeln('3-я позиція noo у Boonoonoonoos починається з символа',

PosN('noo','Boonoonoonoos',3,С):3);

writeln(' Всього знайдено входжень:',С);

readln;

end.

 

Приклад: розробити функцію, що обчислює кількість елементів в одновимірному масиві, що перевищують надане Р, та змінює їх на 0.

 

Program help;

Type vec=array[1..50] of real;

Var v:vec;

I,n:byte;

P:real;

Function sump(n:byte;var a:vec):byte;

Var i,s:byte;

Begin

S:=0;

For i:=1 to n do

If a[i]>p then begin

S:=s+1;

A[i]:=0;

End;

Sump:=s;

End;

 

Begin

{введення елементів масиву}

REPEAT

WRITE('Введіть вимірність масиву <=100');

READLN(n);

UNTIL n<=100

WRITELN('Введіть ',n,'елементів масиву');

FOR i:=1 TO n DO READLN(v[i]);

{виведення кількості елементів, що перевищують надане значення}

writeln(‘кількість елементів = ’,sump(n,v));

{виведення нового вектору}

for i:=1 to n do

writeln(v[i]:5:1);

end.

 







Дата добавления: 2015-08-12; просмотров: 341. Нарушение авторских прав; Мы поможем в написании вашей работы!



Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

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

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

Определение трудоемкости работ и затрат машинного времени На основании ведомости объемов работ по объекту и норм времени ГЭСН составляется ведомость подсчёта трудоёмкости, затрат машинного времени, потребности в конструкциях, изделиях и материалах (табл...

Гидравлический расчёт трубопроводов Пример 3.4. Вентиляционная труба d=0,1м (100 мм) имеет длину l=100 м. Определить давление, которое должен развивать вентилятор, если расход воздуха, подаваемый по трубе, . Давление на выходе . Местных сопротивлений по пути не имеется. Температура...

Огоньки» в основной период В основной период смены могут проводиться три вида «огоньков»: «огонек-анализ», тематический «огонек» и «конфликтный» огонек...

ИГРЫ НА ТАКТИЛЬНОЕ ВЗАИМОДЕЙСТВИЕ Методические рекомендации по проведению игр на тактильное взаимодействие...

Реформы П.А.Столыпина Сегодня уже никто не сомневается в том, что экономическая политика П...

Виды нарушений опорно-двигательного аппарата у детей В общеупотребительном значении нарушение опорно-двигательного аппарата (ОДА) идентифицируется с нарушениями двигательных функций и определенными органическими поражениями (дефектами)...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия