РОБОТА З МАСИВАМИ. ВИКОРИСТАННЯ ПРОЦЕДУР ТА ФУНКЦІЙ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра захисту інформації

Інформація про роботу

Рік:
2006
Тип роботи:
Звіт
Предмет:
Алгоритмічні мови і програмування

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” ІКТА, кафедра “Захисту інформації” ЗВІТ З ЛАБОРАТОРНОЇ РОБОТИ № 3 З КУРСУ “АЛГОРИТМІЧНІ МОВИ І ПРОГРАМУВАННЯ” РОБОТА З МАСИВАМИ. ВИКОРИСТАННЯ ПРОЦЕДУР ТА ФУНКЦІЙ кафедра “Автоматика і телемеханіки” Львів – 2006 Мета роботи - вивчити синтаксис опису і використання в програмах змінних типу масив, навчитися використовувати масиви для оброблення матриць, вивчити основні алгоритми сортування масивів; навчитися описувати та застосовувати у програмах процедури і функції для виконання логічно закінчених алгоритмів. ЗАВДАННЯ 1. Вивчити правила опису та використання змінних-масивів в програмах, написаних алгоритмічною мовою Турбо-Паскаль. 2. Вивчити правила опису та виклику процедур і функцій в програмах, написаних алгоритмічною мовою Турбо-Паскаль. 3. Вивчити основні алгоритми сортування масивів. 4. Написати програму алгоритмічною мовою Турбо-Паскаль згідно з завданням, отриманим від викладача за табл.1: задану прямокутну матрицю A={aij} відсортувати за вказаним алгоритмом; для відсортованої матриці знайти значення функції F(fi(aij)); алгоритм сортування оформити у вигляді процедури; обчислення fi(aij) оформити у вигляді функції; елементи матриці вводити з клавіатури; програма повинна вивести на екран відсортовану матрицю, всі значення fi(aij) та значення функції F(fi(aij)). Таблиця 1 23 Впорядкувати елементи стовпців матриці за зростанням їх значень методом вставки fi(aij) - сума елементів у кожному рядку над головною діагоналлю матриці; F(fi(aij)) - середнє геометричне значення fi(aij) 31 65 -83 -2 -85 9 -2 11 -4 70 52 73 -8 -1 60 57 83 -1 82 50 1 -3 -2 78 -9   Текст програми мовою Pascal Program lab3; uses crt; const f=5; l=5; type matrix= array [1..f,1..l] of integer; matrix2= array [1..f] of integer; var a:matrix; summa:matrix2; g,i,j,m,n,k:integer; gmeaning:real; PROCEDURE SORTING; begin for m:=1 to l do begin i:=2; repeat j:=1; repeat if a[i,m]<=a[j,m] then begin k:=i; g:=a[i,m]; repeat a[k,m]:=a[k-1,m]; k:=k-1; until not (k>j); a[j,m]:=g; j:=i; end else begin j:=j+1; end; begin j:=j+1; end; until not (j<i); i:=i+1; until not (i<=f); end; end; FUNCTION suma (a:matrix; i,m: integer): integer; var sum: integer; begin sum:=0; for m:=1 to l do begin if i<m then sum:=sum+a[i,m]; suma:=sum; end; end; FUNCTION gmean (summa:matrix2; i:integer):real; var gm:real; begin gm:=1; for i:=1 to f-1 do gm:=gm*summa[i]; gmean:=exp(1/i*ln(gm)); end; BEGIN clrscr; for i:=1 to f do {reading of matrix} for m:=1 to l do begin write(‘a[‘,i,’,’,m,’]=’); read(a[i,m]); end; SORTING; for i:=1 to f do {showing of sorted matrix} begin for m:=1 to l do write(a[i,m],’ ‘); writeln; end; readln; for i:=1 to f-1 do begin summa[i]:=suma(a,i,m); writeln(‘SUMA[’,I,’]=’,summa[i]); end; gmeaning:=gmean(summa,i); writeln(‘GMEAN=’, gmeaning:4:2); readln; end. Таблиця ідентифікаторів, які використовуються f Кількість рядків у матриці  l Кількість стовпців у матриці  matrix Тип типу масив для двовимірної матриці  matrix2 Тип типу масив для одновимірної матриці  a Матриця, що вводиться з клавіатури  summa Масив, що містить в собі суму кожного елемента рядка над головною діагоналлю  i,j,m,k Змінні для визначення позицій елементів матриці  g Тимчасова змінна для сортування матриці  sum Тимчасова змінна для обчислення суми елементів рядка  gm Тимчасова змінна для обчислення середнього геометричного сум  sorting Процедура сортування матриці  suma Функція для обчислення суми елементів рядка  gmean Функція для обчислення середнього геометричного сум   Результати виконання роботи: a[1,1]=31 a[1,2]=65 a[1,3]=-83 a[1,4]=-2 a[1,5]=-85 a[2,1]=9 a[2,2]=-2 a[2,3]=11 a[2,4]=-4 a[2,5]=70 a[3,1]=52 a[3,2]=73 a[3,3]=-8 a[3,4]=-1 a[3,5]=60 a[4,1]=57 a[4,2]=83 a[4,3]=-1 a[4,4]=82 a[4,5]=50 a[5,1]=1 a[5,2]=-3 a[5,3]=-2 a[5,4]=78 a[5,5]=-9 1 -3 -83 -4 -85 9 -2 -8 -2 -9 31 65 -2 -1 50 52 73 -1 78 60 57 83 11 82 70 SUMA[1]=-175 SUMA[2]=-19 SUMA[3]=49 SUMA[4]=60 GMEAN=55.92 Висновок: На цій лабораторній роботі я вивчив синтаксис опису і використання в програмах змінних типу масив, навчився використовувати масиви для оброблення матриць, вивчив основні алгоритми сортування масивів; навчився описувати та застосовувати у програмах процедури і функції для виконання логічно закінчених алгоритмів.
Антиботан аватар за замовчуванням

21.12.2011 22:12-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!