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

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

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

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

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” Звіт про виконання лабораторної роботи №1 з курсу “АЛГОРИТМІЧНІ МОВИ І ПРОГРАМУВАННЯ” Підготував: ст. гр. СІ- 12 Семенов О.О. Прийняв: Лагун І. І. Львів-2010 ЗАВДАННЯ Написати програму алгоритмічною мовою С++ згідно з завданням, отриманим від викладача за табл. 1: задану прямокутну матрицю A={aij} відсортувати за вказаним алгоритмом; для відсортованої матриці знайти значення функції F(fi(aij)); алгоритм сортування оформити у вигляді процедури; обчислення fi(aij) оформити у вигляді функції; елементи матриці вводити з клавіатури; програма повинна вивести на екран відсортовану матрицю, всі значення fi(aij) та значення функції F(fi(aij)). Розробити два варіанти розв'язку задачі: використовуючи клас двомірного масиву та функції-члени; використовуючи клас одномірного масиву, функції-члени та дружні функції. № п/п Алгоритм впорядкування матриці Алгоритм для розрахунку fi(aij) та F(fi(aij))  21 Впорядкувати елементи стовпців матриці за зростанням їх значень методом вставки fi(aij)-добуток елементів у кожному рядку під головною діагоналлю матриці; F(fi(aij))-сума fi(aij)   Блок-схема алгоритму Остаточна версія програми Варіанти розв'язку задачі: використовуючи клас двомірного масиву та функції-члени; #include<iostream> #include<math.h> # define n 5 int element[n][n],i ,j; using std :: cout; using std :: cin; class func { public: int element[n][n], i, j; double dobutok, serheom, summa; void vvid(int element[n][n]); int metod_obminy(int element[n][n]); int arufmetucne(int element[n][n]); }; void func::vvid(int element[n][n]) { for ( int i = 0; i < n; i++) { for ( int j = 0; j < n; j++) { cout << "elem[" << i+1 << "]["<< j+1 << "]" <<" = "; cin >> element[i][j]; } } for ( int i = 0; i < n; i++) { for (int j = 0; j < n; j++) cout << " \t" << element[i][j]; cout << "\n"; } cout << "\n\n"; } int func::metod_obminy(int element[n][n]) { for (j=0; j<n; j++) for (i = 0; i < n-1; i++) { int f, pos=i; for( int p=i+1; p<n; p++) if(element[pos][j] > element[p][j]) pos=p; f=element[pos][j]; element[pos][j]=element[i][j]; element[i][j]=f; } for(i=0; i<n; i++) { for(j=0; j<n; j++) cout << " \t" << element[i][j]; cout <<"\n"; } return 0; } int func:: arufmetucne(int element[n][n]) { double Aref , dobutok=1, summa=0; for(j=0; j<n; j++) { { for(i=0; i<j; i++) summa=summa+element[i][j]; } Aref = summa/5; } cout << " Serednje Arefmetuchne = " << Aref; cout << "\n"; dobutok*=Aref; cout << " dobutok " << dobutok; cout << "\n"; return 0; } int main() { func M; M.vvid( element); M.metod_obminy(element); M.arufmetucne(element); return 0; } використовуючи клас одномірного масиву, функції-члени та дружні функції. #include <iostream> using namespace std; # define n 5 int a[n][n], i , j; class func { public: int a[n][n], i, j, k, x; double V[n], dob, sum; friend void vvid(func a[n]); friend void sort(func a[n]); friend void dobutok(func a[n]); }; void vvid(func a[n]) { for ( int i = 0; i < n; i++) { for ( int j = 0; j < n; j++) { cout << "a[" << i+1 << "]["<< j+1 << ']' <<" = "; cin >> a[i].V[j]; } } for ( int i = 0; i < n; i++) { for (int j = 0; j < n; j++) cout << " \t" << a[i].V[j]; cout << endl; } cout << endl; } void sort(func a[n]) { for ( int j=0; j<n; j++) for ( int i = 0; i < n-1; i++) { int f, pos=i; for( int p=i+1; p<n; p++) if(a[pos].V[j] > a[p].V[j]) pos=p; f=a[pos].V[j]; a[pos].V[j]=a[i].V[j]; a[i].V[j]=f; } for( int i=0; i<n; i++) { for( int j=0; j<n; j++) cout << " \t" << a[i].V[j]; cout << endl; } } void dobutok (func a[n]) { double sum,dob; sum=0; for (i=1; i<n; i++) { dob=1; for (j=0; j<i; j++) { dob*=a[i].V[j]; } sum+=dob; cout << "Dobutok elementiv y rjadku " << i+1 << " pid golov. diagon. = " << dob << endl; } cout << "Suma dobutkiv = " << sum << endl; } int main() { func Bv[n]; vvid(Bv); sort(Bv); dobutok(Bv); return 0; } Результат роботи програми: При таблиці значень: 6 34 12 70 -1 -7 97 80 99 -99 1 6 -3 2 -8 3 33 -1 0 -78 -3 -5 -8 -56 -23 Програма виводить результат: Old Array: 6 34 12 70 -1 -7 97 80 99 -99 1 6 -3 2 -8 3 33 -1 0 -78 -3 -5 -8 -56 -23 New Array: -7 -5 -8 -56 -99 -3 6 -3 0 -78 1 33 -1 2 -23 3 34 12 70 -8 6 97 80 99 -1 Dobutok elementiv y rjadku 2 pid golov. diagon. = -3 Dobutok elementiv y rjadku 3 pid golov. diagon. = 33 Dobutok elementiv y rjadku 4 pid golov. diagon. = 1224 Dobutok elementiv y rjadku 5 pid golov. diagon. = 460944 Suma dobutkiv = 461069
Антиботан аватар за замовчуванням

28.01.2013 17:55

Коментарі

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

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

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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