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

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

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

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

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

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” ІКТА кафедра „ЗАХИСТ ІНФОРМАЦІЇ” ЗВІТ до лабораторної роботи № 6 З КУРСУ “АЛГОРИТМІЧНІ МОВИ І ПРОГРАМУВАННЯ” на тему: РОБОТА З МАСИВАМИ. ВИКОРИСТАННЯ ФУНКЦІЙ Варіант № 20 Мета роботи - вивчити синтаксис опису і використання в програмах змінних типу масив, навчитися використовувати масиви для оброблення матриць, вивчити основні алгоритми сортування масивів; навчитися описувати та застосовувати у програмах процедури і функції для виконання логічно закінчених алгоритмів. 2. ПОВНИЙ ТЕКС ЗАВДАННЯ Скласти блок-схемy алгоритмy та програмy мовою Ci для впорядкування елементів стовпців матриці за спаданням їх значень методом обміну: 0 2 -2 89 21 -1 -4 36 41 71 56 93 51 -2 -51 1 3 -8 0 9 23 41 5 8 -2 Для відсортованої матриці знайти значення функції fi(aij) – середнє геометричне значення елементів в кожному рядку над головною діагоналлю матриці та F(fi(aij)) – сума fi(aij). Обчислення fi(aij) та F(fi(aij)) оформити у вигляді функції; елементи матриці вводити з клавіатури; програма повинна вивести на екран відсортовану матрицю, всі значення fi(aij) та значення функції F(fi(aij)). 3. ОСТАТОЧНА ВЕРСІЯ БЛОК-СХЕМИ АЛГОРИТМУ  Блок-схема функції PrintMas(a)  Блок-схема функції ReadMas(a)  Блок-схема функції Dob(a,k)  Блок-схема функції sArfm(а)  Блок-схема функції SortMas(а)  4. СПИСОК ІДЕНТИФІКАТОРІВ КОНСТАНТ, ЗМІННИХ, ПРОЦЕДУР І ФУНКЦІЙ, ВИКОРИСТАНИХ У ПРОГРАМІ, ТА ЇХ ПОЯСНЕННЯ a – масив значень типу int який потрібно впорядкувати; n – константа типу int яка вказує розмірність масиву а; tmp – змінна типу int яка використовується для того щоб поміняти два значення елементів масиву а місцями; i, j, k – змінні типу int для зберігання введених даних та результату роботи програми; dob, sg, sum – змінні типу double для зберігання певних значень відповідного типу у функціях; clrscr() – функція очистки екрана яка об’явлена в модулі conio.h; getch() – функція яка чекає натискання будь-якої клавіші; printf() – функція виведення текстових повідомлень і значень змінних на екран; scanf() – функція яка зчитує дані з клавіатури та присвоює відповідне значення змінним; pow(x,y) – функція для піднесення х в степінь у; Користувацькі функції PrintMas(а) – функція яка здійснює вивід матриці а на екран; ReadMas(а) – функція яка зчитує значення введені з клавіатури і поміщає їх у масив а розміру n∙n; SortMas(а) – функція яка впорядковує стовпці матриці а за спаданням їх значень методом обміну; sGeom(а, і) – функція, яка повертає значення типу double яке є середнім геометричним і-того рядка матриці над головною діагоналлю; sum_sGeom(а) – функція яка повертає значення типу double яке є сумою середніх геометричних значень усіх рядків матриці а над головною діагоналлю; 5. ОСТАТОЧНА ВЕРСІЯ ПРОГРАМИ #include <stdio.h> #include <conio.h> #include <math.h> const n=5; //================================================= void PrintMas(int a[n][n]) { for (int i=0;i<n;i++) { for (int j=0;j<n;j++) printf("%4d",a[i][j]); printf("\n"); } } //================================================= void ReadMas(int a[n][n]) { for (int i=0;i<n;i++) for (int j=0;j<n;j++) { printf("a[%d][%d] = ",i,j); scanf("%d",&a[i][j]);} } //================================================= void SortMas(int a[n][n]) { int tmp; for (int k=0;k<n;k++) for (int i=1;i<n;i++) for (int j=n-1;j>=i;j--) if (a[k][j-1]<a[k][j]) { tmp=a[k][j-1]; a[k][j-1]=a[k][j]; a[k][j]=tmp; } } //================================================= long int Dob(int a[n][n],int k) { long int dob=1; for (int i=n-1;i>k;i--) dob*=a[i][k]; return dob; } //================================================= double sArfm(int a[n][n]) { double sum=0,sg; for (int i=0;i<n-1;i++) { sg=Dob(a,i); printf("\nsDob(%d) = %3.0lf",i,sg); sum+=sg; } return sum/(n-1); } //================================================= void main() { int a[n][n]; printf("Vvedit masuv %dx%d elementiv:\n",n,n); ReadMas(a); clrscr(); printf("\nVvedeno masuv:\n\n"); PrintMas(a); SortMas(a); printf("\nVidsortovano masuv:\n\n"); PrintMas(a); printf("\n\nsArfm = %3.2lf",sArfm(a)); getch(); } 6. РЕЗУЛЬТАТИ РОБОТИ ПРОГРАМИ Vvedeno masuv: 19 62 -45 -1 84 23 54 -4 -2 68 36 39 96 94 97 -3 -8 -4 -6 -22 98 -5 -3 0 11 Vidsortovano masuv: 84 62 19 -1 -45 68 54 23 -2 -4 97 96 94 39 36 -3 -4 -6 -8 -22 98 11 0 -3 -5 sDob(0) = -1939224 sDob(1) = -4224 sDob(2) = 0 sDob(3) = -3 sArfm = -485862.75 7. ВИСНОВОК На даній лабораторній роботі я навчився використовувати змінними типу масив та користуватися функціями. Я вивчив алгоритми для впорядкування елементів масиву. Внаслідок чого було створено програму для введення, впорядкування, пошуку середнього геометричного та виведення масиву на дисплей.
Антиботан аватар за замовчуванням

21.11.2012 15:11-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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