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

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

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

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

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

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” ІКТА кафедра «Захисту інформації»  Звіт про виконання лабораторної роботи №6 з курсу «Алгоритмічні мови і програмування» на тему: РОБОТА З МАСИВАМИ. ВИКОРИСТАННЯ ФУНКЦІЙ ВАРІАНТ 18 Львів – 2007 ПОВНИЙ ТЕКСТ ЗАВДАННЯ Скласти блок-схему алгоритму та програму мовою Cі згідно з завданням, отриманим від викладача за табл. 1: задану прямокутну матрицю A={aij} відсортувати за вказаним алгоритмом; для відсортованої матриці знайти значення функції F(fi(aij)); алгоритм сортування і обчислення fi(aij) оформити у вигляді функції; елементи матриці вводити з клавіатури; програма повинна вивести на екран відсортовану матрицю, всі значення fi(aij) та значення функції F(fi(aij)). Таблиця 1 № п/п Алгоритм впорядкування матриці Алгоритм для розрахунку fi(aij) та F(fi(aij)) Матриця  18 Впорядкувати елементи рядків матриці за спаданням їх значень методом вибору fi(aij)-середнє арифметичне значення елементів у кожному стовпці над допоміжною діагоналлю; F(fi(aij))- добуток fi(aij) 33 -5 -9 -20 -11 0 -42 86 83 71 -6 -9 33 13 22 52 -5 -7 53 19 -3 98 72 68 0    функція serar( ) функція dob( ) Список ідентифікаторів констант, змінних, функції, використаних у блок-схемі алгоритму і програмі, та їх пояснення: n – розмір масиву; i, j, z, k, x – проміжні змінні; а – заданий масив; sum – сума елементів у кожному стовпчику над бічною діагоналлю; ser – середнє арифметичне значення елементів у кожному стовпчику над бічною діагоналлю; serar( ) – функція, яка обчислює середні арифметичні значення елементів у кожному стовпчику масиву над бічною діагоналлю; b – масив значень функції serar( ) d – добуток елементів масиву b; dob( ) – функція, яка обчислює добуток елементів масиву b; sort( ) – функція, яка сортує масив; printf( ) – функція, що виводить дані на дисплей; scanf( ) – функція, що зчитує дані з клавіатури; main( ) – головна функція. ОСТАТОЧНА ВЕРСІЯ ПРОГРАМИ: #include <stdio.h> #define n 5 void sort(int a[n][n]); double serar(int a[n][n],int j); double dob(double b[n-1]); void main(void) { int i, j, a[n][n]; double b[n-1]; printf("\nVvedit elementy matrytsi:\n"); for(i=0;i<n;i++) for(j=0;j<n;j++) { printf("a[%d,%d]=",i+1,j+1); scanf("%d",&a[i][j]); } sort(a); printf("Vidsortovana matrytsya:"); for(i=0;i<n;i++) { printf("\n"); for(j=0;j<n;j++) { printf("%d\t",a[i][j]); } } for(j=0;j<n-1;j++) { b[j]=serar(a,j); printf("\nSEREDNYE ARYFMETYCHNE=%4.4lf",b[j]); } printf("\nDOBUTOK=%4.4lf",dob(b)); } void sort(int a[][n]) { int i,j,z,k,x; for(i=0;i<n;i++) for(j=0;j<n-1;j++) { k=j; x=a[i][j]; for(z=j+1;z<n;z++) { if (a[i][z]>a[i][j]) { k=z; x=a[i][z]; a[i][k]=a[i][j]; a[i][j]=x; } } } } double serar(int a[n][n],int j) { int i; double ser,sum; sum=0; for(i=0;i<n-j-1;i++) sum+=a[i][j]; ser=sum*1.0/(n-j-1); return ser; } double dob(double b[n-1]) { double d; int i; d=1; for(i=0;i<n-1;i++) d*=b[i]; return d; } РЕЗУЛЬТАТИ РОБОТИ ПРОГРАМИ: Vvedit elementy matrytsi: a[1,1]=33 a[1,2]=-5 a[1,3]=-9 a[1,4]=-20 a[1,5]=-11 a[2,1]=0 a[2,2]=-42 a[2,3]=86 a[2,4]=83 a[2,5]=71 a[3,1]=-6 a[3,2]=-9 a[3,3]=33 a[3,4]=13 a[3,5]=22 a[4,1]=52 a[4,2]=-5 a[4,3]=-7 a[4,4]=53 a[4,5]=19 a[5,1]=-3 a[5,2]=98 a[5,3]=72 a[5,4]=68 a[5,5]=0 Vidsortovana matrytsya: 33 -5 -9 -11 -20 86 83 71 0 -42 33 22 13 -6 -9 53 52 19 -5 -7 98 72 68 0 -3 SEREDNYE ARYFMETYCHNE=51.2500 SEREDNYE ARYFMETYCHNE=33.3333 SEREDNYE ARYFMETYCHNE=31.0000 SEREDNYE ARYFMETYCHNE=-11.0000 DOBUTOK=-582541.6667
Антиботан аватар за замовчуванням

04.02.2012 18:02-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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