КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Приклад. Отримання значення з конкретного модуля
Приклад Приклад Отримання значення з конкретного модуля Використання модуля myhelp Створення модуля myhelp implementation procedure my; var ch:char; i:byte; begin writeln('масив заповнювати? '); readln(ch); if ch in ['n', 'N'] then for i:=1 to 10 do mas[i]:=0; else for i:=1 to 10 do begin write('mas[',i,']='); readln(mas[i]); еnd;end; begin my(endm); end. program test; uses myhelp; begin writeln(myval); {виведення сталої модуля myhelp} writeln(endm[1]:8,endm[2]:8); {виведення значень масиву endm створеного у модулі myhelp} End. Приклад 25.3 uses myhelp; var x:mymas; Вegin my(x); { викликається процедура модуля myhelp} for i:=1 to 10 do writeln(x[i]); readln; End. Приклад 25.4 Створення модулів a та b {модуль a.pas} unit a; interface const K='a'; implementation end. {модуль b.pas} unit b; interface const K='b'; implementation end. Використанняння модулів a та b
program my; uses a,b; const K='prog'; begin : end. Утворена вкладена структура:
Виклик у головній програмі writeln(K); 'prog' Якщо необхідно отримати значення з конкретного модуля, то потрібно скористатися ім'ям змінної чи сталої наступного формату <кваліфікатор>.<ідентифікатор> Використовуючи у головній програмі інструкцію writeln(a.K:5,b.K:5,K); отримаємо результат a b prog
Unit unit1; Interface Type ar=array[1..100] of byte; {Var m:ar; N:byte;} Procedure inpar(var a:ar; n:byte); Function maxar(a:ar;n:byte):byte; Function sumar(a:ar;n:byte):longint; Implementation Procedure inpar; Var i:byte; Begin { Write('dimention of array=');readln(n);} Writeln('input ',n,' elements'); For i:=1 to n do Read(a[i]); readln; End; Function maxar; Var i,max:byte; Begin Max:=a[1]; For i:=2 to n do If a[i]>max then max:=a[i]; Maxar:=max; End; Function sumar; Var i:byte; Sum:longint; Begin sum:=0; For i:=1 to n do Sum:=sum+a[i]; sumar:=sum; End; Begin { Write('dimention of array=');readln(n);} {inpar(m,n);} end. Unit unit2; Interface Uses unit1; Type matr=array[1..100] of ar; Procedure inpmatr(var a:matr; m,n:byte); Function summatr(a:matr; m,n:byte):longint; Function maxmatr(a:matr; m,n:byte):byte; Implementation Procedure inpmatr; Var j:byte; begin { write(input number of rows=');readln(m);} for j:=1 to m do begin inpar(a[j],n); end; end; function summatr; var j:byte; sum:longint; begin sum:=0; for j:=1 to m do sum:=sum+sumar(a[j],n); summatr:=sum; end; function maxmatr; var i,max:byte; begin max:=maxar(a[1],n); for i:=2 to m do if maxar(a[i],n)>max then max:=maxar(a[i],n); maxmatr:=max; end; begin end. Program main; uses unit1,unit2; var a1,b1:matr; m,n,m1,n1:byte; begin write('input dimentions of a1, m,n=');readln(m,n); inpmatr(a1,m,n); writeln('sum of the elements of a1=',summatr(a1,m,n)); write('input dimentions of b1, m1,n1=');readln(m1,n1); inpmatr(b1,m1,n1); writeln('max of b1=',maxmatr(b1,m1,n1)); end.
Дата добавления: 2014-01-07; Просмотров: 291; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |