Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
informatika_kolonki__1.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
251 Кб
Скачать
☆

40.Алго. Відкривання текстового файлу для запису. Запис числового масиву у файл.

Program NoName;

Var

t : text;

a:array [1 .. 10] of integer;

i,j:integer;

Begin

for i:=1 to 10 do

a[i]:=random(100);

assign(t,'C:\a.txt');

rewrite(t);

for i:=1 to 10 do

begin

writeln (t,a[i]);

write(a[i]:3);

end;

close(t);

end.

41.Алго. Перетворення числа з рядкової змінної у чисельну та навпаки у циклі.

Program NoName;

var int,error:integer;

st:string;

begin

st:='1029384756';

val(st,int,error);{Преобразуем из STRING в INTEGR}

Writeln(int); {Выводим резульат на экран}

readln;

End.

42.Алго. Запис числа по цифрам у масив та з масиву у число.

Program NoName;

Var

a : array[1..10]of integer;

i, j, k :integer;

Begin

ReadLn( k );

for i := 1 to 10 do

a[i]:=0;

i:=1;

repeat

a[11-i]:=k mod 10;

k:=k div 10 ;

i:=i+1;

until k=0;

i:=i-1;

for j := 1 to 10 do

write (a[i]);

WriteLn;

end.

43.Алго. Поняття власної функції та процедури. Принцип створення. Приклади.

Опис процедури або функції складається із заголовка та тіла (блоку), структура якого повністю аналогічна до структури програми.Заголовок процедури має такий вигляд: Procedure назва ( список параметрів );У заголовку процедури вказують ім'я процедури та описують список формальних параметрів (якщо він потрібен). Запуск процедури здійснюють за допомогою оператора звертання до процедури.

Procedure Change( var a, b : integer );

var

i : integer;

begin

i := a; a := b; b := i

end;

У заголовку функції визначають ідентифікатор функції, формальні параметри (якщо вони є) і тип результату функції.

Function назва( список параметрів ): тип; Функція активізується під час її виклику. Викликаючи функцію, вказують ідентифікатор функції і параметри, необхідні для обчислення її значення. Виклик функції можна включати у вираз як операнд. Коли обчислюється вираз, функція виконується і значенням операнда стає значення, яке повертається функцією. В операторній частині блоку функції потрібно записати принаймні один оператор присвоювання, у якому ідентифікатору функції присвоюється значення. Результатом функції є останнє присвоєне значення. Якщо такий оператор присвоювання відсутній або він не був виконаний, то значення, яке повертається функцією, невизначене. Якщо ідентифікатор функції використовується під час виклику функції всередині виконуваного блоку функції, то функція виконується рекурсивно. Function Max (a:Vector; n:integer): integer;var i, x : integer;begin x := a(1); for i := 2 to n do if x < a[i] then x := a[i]; Max := x;end; Головним результатом дії функції є значення. На відміну він процедури, кожна функція обов’язково має фіксований тип результату. На відміну від функції, в її заголовку немає імені типу для значень, породжуваних у результаті виклику, тому що ніякі значення не породжуються. За цією ж причиною в тілі процедури не може бути операторів присвоювання з її ім'ям у лівій частині. Виклик процедури складається з імені й аргументів у дужках і записується як окремий оператор. Наприклад Reset(Input);Процедури доцільно використовувати у тих випадках, коли у різних місцях програми необхідно виконати однакову послідовність операцій з різними параметрами. Наприклад, у багатьох алгоритмах сортування часто використовується послідовність операторів які міняють значення двох змінних місцями. У цьому випадку доцільно винести цю послідовність операторів у окрему процедуру. Це матиме вигляд:

 procedure repl (var a,b : real);

var

t:real;

begin

          t:=a;

          a:=b;

          b:=t;

end;

 і викликається ця процедура, наприклад для перестановки значень a[4] та a[5] масиву, що описаний як

 var

          a: array [1..1000] of real;

таким чином

…

repl (a[4],a[5]);

…

 var у описі процедури носить таке саме навантаження, як і у описі функції.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]