Варіант-3

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

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

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

Рік:
2006
Тип роботи:
Інші
Предмет:
Алгоритмічні мови та програмування
Група:
ІБ-13

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ“ЛЬВІВСЬКА ПОЛІТЕХНІКА” КАФЕДРА АВТОМАТИКИ ТА ТЕЛЕМЕХАНІКИ про виконання лабораторної роботи №3 З курсу: “Алгоритмічні мови та програмування” на тему: Варіант-3 Львів-2006р. Мета роботи –вивчити синтаксис опису і використання у програмах змінних типу масивів, навчитися використовувати масиви для оброблення матриць, вивчити основні алгоритми сортування масивів; навчитися описувати та застосувати у програмах функції для виконання логічно закінчених алгоритмів. ЗАВДАННЯ: Скласти блок-схему алгоритму та програму мовою Cі згідно з завданням, отриманим від викладача за табл. 1: задану прямокутну матрицю A={aij} відсортувати за вказаним алгоритмом; для відсортованої матриці знайти значення функції F(fi(aij)); алгоритм сортування і обчислення fi(aij) оформити у вигляді функції; елементи матриці вводити з клавіатури; програма повинна вивести на екран відсортовану матрицю, всі значення fi(aij) та значення функції F(fi(aij)). 3 Впорядкувати елементи стовпців матриці за зростанням їх значень методом вибору fi(aij)-сума елементів у кожному рядку матриці; F(fi(aij))-середнє геометричне значення fi(aij)  2 0 33 -1 -21 78 7 -4 -3 11 -2 -7 -1 -9 0 13 61 60 42 -10 1 0 4 0 16   Список ідентифікаторів констант, змінних, функцій, використаних у блок-схемі алгоритму і програмі, та їх пояснення: a[n][n] – двовимірний масив 5Х5; i,j,k,c,t – зміннi, значення яких циклічно змінюється; х – змінна, якій присвоюється в циклі сортування одне із значень для порівняння; sum - змінна, якій присвоюється сума у кожному рядку; dob – змінна, якій присвоюється добуток сум; Sergeom – змінна, якій присвоюється сер. геометричне добутків; __________________________________________________________________ main( ) – головна функція програми; scanf ( ) – функція вводу даних; printf ( ) – функція виводу даних; sor(int a[n][n]) – функція, що сортує масив; func(int a[n][n]) – функція, що знаходить середнє значення стовпців над допоміжною діагоналлю та їх добуток. Блок-схема алгоритму головної програми: Блок-схема алгоритму функції sor(int a[n][n]):  Блок-схема алгоритму функції func(int a[n][n]):  Остаточна версія програми: #include<math.h> #include<stdio.h> #include<conio.h> #include<stdlib.h> #define n 5 void func(int a[n][n]); void sor(int a[n][n]); void main(void) { int i,j; int a[n][n]; system("cls"); 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]); } } system("cls"); printf("Old array: \n"); for(i=0;i<n;i++) { for(j=0;j<n;j++) printf(" %5d",a[i][j]); printf("\n"); } sor(a); printf("New array: \n"); for(i=0;i<n;i++) { for(j=0;j<n;j++) printf(" %5d",a[i][j]); printf("\n"); } func(a); getch; } void sor(int a[n][n]) { int x,i,k,j,c; for(k=0;k<n;k++) { for(i=0;i<(n-1);i++) { c=i; x=a[i][k]; for(j=i+1;j<n;j++) { if (a[j][k]<x) { c=j; x=a[j][k]; } } a[c][k]=a[i][k]; a[i][k]=x; } } } void func(int a[n][n]) { int c,k; double sum,dob,t,Sergeom; dob=1;t=0; for(c=0;c<n;c++) { sum=0; for(k=0;k<n;k++) { sum+=a[c][k]; } dob*=sum;t++; printf("\n Suma elementiv u %d rjadku=%lf",c+1,sum); } Sergeom=pow(dob,1/t); printf("\n Serednje geometrychne sum=%lf",Sergeom); } Результати роботи програми: a[1][1]=2 a[1][2]=0 a[1][3]=33 a[1][4]=-1 a[1][5]=-21 a[2][1]=78 a[2][2]=7 a[2][3]=-4 a[2][4]=-3 a[2][5]=11 a[3][1]=-2 a[3][2]=-7 a[3][3]=-1 a[3][4]=-9 a[3][5]=0 a[4][1]=13 a[4][2]=61 a[4][3]=60 a[4][4]=42 a[4][5]=-10 a[5][1]=1 a[5][2]=0 a[5][3]=4 a[5][4]=0 a[5][5]=16 Suma elementiv u 1 rjadku=-43 Suma elementiv u 2 rjadku=-13 Suma elementiv u 3 rjadku=5 Suma elementiv u 4 rjadku=64 Suma elementiv u 5 rjadku=257 Serednje geometrychne sum=34.079953 Висновок: ми вивчили синтаксис опису і використання у програмах змінних типу масивів, навчилися використовувати масиви для оброблення матриць, вивчили основні алгоритми сортування масивів; навчилися описувати та застосувати у програмах функції для виконання логічно закінчених алгоритмів.
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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