REFERATUA.ORG.UA — База українських рефератів



Головна Інформатика, комп'ютери, програмування → Розробка та виконання програм на мові Pascal

№15.

Скласти програму на мові Pascal розв'язку даної задачі та виконання її на ЕОМ. Передбачивши виведення на очищений екран масивів у вигляді матриці та результатів обчислень, супроводивши їх необхідними поясненнями.

Задача 1.

Обчислити максимальне значення із добутку елементів кожного із стовпчиків масива К(6,4).

Задача 2.

Знайти нацбільший та найменьший елементи масиву А(5,5) та поміняти їх місцями. Вивести масив порядках.

Задача 1:

program masiv_1;

uses

crt;

var

k:array [1..6,1..4] of integer;

i,j,max:integer;

dob:array [1..4] of real;

begin

clrscr;

for i:=1 to 6 do

for j:=1 to 4 do begin

write('Введiть елемент K[',i,',',j,']=');

readln(k[i,j]);

end;

for j:=1 to 4 do begin

dob[j]:=1;

for i:=1 to 6 do dob[j]:=dob[j]*k[i,j];

end;

max:=1;

for j:=1 to 4 do if dob[max]

for i:=1 to 6 do begin

for j:=1 to 4 do write(k[i,j],' ');

writeln;

end;

for j:=1 to 4 do write(dob[j]:3:1,' ');

writeln;

write('Максимальний добуток в стовпцi з номером ',max);

writeln(' i дорiвнюї ',dob[max]:3:1);

end.

Р Е З У Л Ь Т А Т И О Б Ч И С Л Е Н Ь П Р О Г Р А М И :

22 3 3 3

4 5 6 7

3 3 3 32

2 -6 -5 4

-7 3 2 0

2 3 4 5

-7392.0 -2430.0 -2160.0 0.0

Максимальний добуток в стовпцi з номером 4 i дорiвнюї 0.0

Задача 2:

program masiv_2;

uses

crt;

var

a:array [1..5,1..5] of integer;

i,j,max1,max2,min1,min2:integer;

temp:integer;

begin

clrscr;

for i:=1 to 5 do

for j:=1 to 5 do begin

write('Введiть елемент A[',i,',',j,']=');

readln(a[i,j]);

end;

max1:=1;

min1:=1;

max2:=1;

min2:=1;

for i:=1 to 5 do

for j:=1 to 5 do begin

if a[max1,max2]

max1:=i;

max2:=j;

end;

if a[min1,min2]>a[i,j] then begin

min1:=i;

min2:=j;

end;

end;

clrscr;

writeln('Вихiдний масив:');

for i:=1 to 5 do begin

for j:=1 to 5 do write(a[i,j],' ');

writeln;

end;

temp:=a[max1,max2];

a[max1,max2]:=a[min1,min2];

a[min1,min2]:=temp;

writeln('Перетворений масив:');

for i:=1 to 5 do begin

for j:=1 to 5 do write(a[i,j],' ');

writeln;

end;

end.

Р Е З У Л Ь Т А Т И О Б Ч И С Л Е Н Ь П Р О Г Р А М И :

Вихiдний масив:

1 2 3 4 5

6 7 8 9 2

5 3 -3 -6 2

11 4 -7 3 2

8 9 2 2 3

Перетворений масив:

1 2 3 4 5

6 7 8 9 2

5 3 -3 -6 2

-7 4 11 3 2

8 9 2 2 3

Висновок:на практичній роботі я систематизував знання, вміння та навички по роботі з масивами, як двомірними, так і одномірними, навчився працювати з матрицями та операціями з ними.

Заняття №5.

Складання програм з використанням процедур та функцій.

Мета: систематизація та поглиблення знань, вмінь і навичок, розробки програм з використанням процедур та функцій.

Теоретичні відомості.

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

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

Опис функції здійснюється за допомогою ключового слова FUNCTION ім'я, а в дужках змінні.

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

Індивідуальне завдання.

Варіант №13.

Скласти програму на мові Pascal розв'язку даної задачі та виконання її на ЕОМ. Передбачивши виведення на очищений екран результатів обчислень, супроводивши їх необхідними поясненнями.

Задача 1.

Дано масив С(5,4) . Зформувати новий масив К, кожний елемент якого дорівнює відповідному елементу масива С, поділеному на факторіал суми його індексів. Надрукувати масив К по рядках, підрахувавши кількість його елементів, значення яких меньше одиниці.

Задача 2.

Знайти суму від'ємних елементів та середнє значення додатніх елементів масивів: L (6), B (5), H(7) цілих чисел, використовуючи процедури.

Задача 1:

program var_1_1;

uses crt;

var

c,k:array [1..5,1..4] of real;

i,j:integer;

m:byte;

function facktorial(x:integer):real;

var

i:integer;

facktorial1:real;

begin

facktorial1:=1;

if i<=1 then facktorial:=1 else begin

for i:=1 to x do facktorial1:=facktorial1*i;

facktorial:=facktorial1;

end;

end;

begin

clrscr;

writeln('Введiть елементи масива:');

writeln;

for i:=1 to 5 do

for j:=1 to 4 do begin

write('Елемент [',i,',',j,']=');

readln(c[i,j]);

end;

m:=0;

clrscr;

for i:=1 to 5 do begin

for j:=1 to 4 do begin

k[i,j]:=c[i,j]/facktorial(i+j);

if k[i,j]<1 then m:=m+1;

write(k[i,j]:7:5,' ');

end;

writeln;

end;

end.

РЕЗУЛЬТАТИ РОБОТИ ПРОГРАМИ :

0.50000 0.33333 0.16667 -0.04167

0.66667 0.12500 -0.01667 0.00556

0.20833 -0.01667 -0.00417 0.00119

0.05833 0.01250 0.00417 0.00005

0.00417 -0.00099 0.00005 0.00000

Задача 2:

program var_1_2;

uses crt;

var

l:array [1..7] of integer;

b:array [1..6] of integer;

h:array [1..8] of integer;

v:integer;

s:real;

procedure masiv(var x:array of integer;kol:integer;var vid:integer;var ser:real);

var

i:integer;

begin

clrscr;

vid:=0;

ser:=0;

writeln('Введiть елементи масива :');

writeln;

for i:=1 to kol do begin

write('Елемент x[',i,']=');

readln(x[i]);

if x[i]<0 then vid:=vid+1 else ser:=ser+x[i];

end;

ser:=ser/kol;

end;

begin

masiv(l,6,v,s);

writeln('Вiдемних елементiв: ',v);

writeln('Середне арифметичне суми додатнiх елементiв: ',s);

repeat until keypressed;

masiv(b,5,v,s);

writeln('Вiдемних елементiв: ',v);

writeln('Середне арифметичне суми додатнiх елементiв: ',s);

repeat until keypressed;

repeat until keypressed;

masiv(h,7,v,s);

writeln('Вiдемних елементiв: ',v);

writeln('Середне арифметичне суми додатнiх елементiв: ',s);

end.

РЕЗУЛЬТАТИ РОБОТИ ПРОГРАМИ :

Введiть елементи масива :

Елемент x[1]=2

Елемент x[2]=-2

Елемент x[3]=-3

Елемент x[4]=5

Елемент x[5]=3

Елемент x[6]=4

Вiдемних елементiв: 2

Середне арифметичне суми додатнiх елементiв: 2.33

Введiть елементи масива :

Елемент x[1]=23

Елемент x[2]=-3

Елемент x[3]=-4

Елемент x[4]=2

Елемент x[5]=8

Вiдемних елементiв: 2

Середне арифметичне суми додатнiх елементiв: 6.60

Введiть елементи масива :

Елемент x[1]=4

Елемент x[2]=5

Елемент x[3]=-6

Елемент x[4]=3

Елемент x[5]=2

Елемент x[6]=-7

Елемент x[7]=0

Вiдемних елементiв: 2

Середне арифметичне суми додатнiх елементiв: 2.00

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


 
Загрузка...