- •Програма роботи:
- •Завдання №1 Повне дослідженя функції
- •Хід роботи:
- •8. Проміжки опуклості та ввігнутості, точки перегину графіка функції.
- •Результат в Excel
- •Завдання №2
- •Завдання №3 Створення бази даних засобами Microsoft Access
- •Головна таблиця:
- •Запит №1
- •Запит №3
- •Запит №4
- •Завдання №4
- •Код програми
- •Завдання №5 Сканування та розпізнавання тексту
- •Результати сканування
- •Глава 1 основные понятия и принципы управления
- •1.1. Исходные положения
- •1.2. Принципы управления
- •1.2.1. Принцип программного управления.
- •1.2.2. Принцип компенсации.
- •1.2.3. Принцип обратной связи.
- •1.2.4. Принцип комбинированного управления.
- •1.3. Структура системы управления
- •1.4. Законы управления
- •1.5. Классификация систем управления
- •Висновок:
- •Використана література
Завдання №2
Розв‘язування задачі для обчислення матриць засобами мови програмування С++ та засобами Microsoft Excel
-
Скласти алгоритм програми для обчислення матриць згідно завдання свого варіанту.
-
Написати програму мовою С++ для обчислення матриць згідно завдання свого варіанту.
-
Розв‘язати цю ж задачу засобами Microsoft Excel.
-
Порівняти отримані результати. Зробити висновки.
-
Оформити результати роботи у редакторі Microsoft Word.
де А[2][2], В[2][2].
Програма в С++
#include <stdio.h>
#include <conio.h>
#define N 2
#define M 2
void main()
{clrscr();
int i,j;
float A[N][M];
float At[N][M];
float AtB[N][M] ;
float c[N][M];
float B[N][M];
float BB[N][M];
float C[N][M];
float TB[N][M] ;
printf("Wwedit matrix A:\n");
for(i=0;i<N;i++)
{for(j=0;j<M;j++)
scanf("%f",&A[i][j]);}
printf(" \n");
printf("Wwedit matrix B:\n");
for(i=0;i<N;i++)
{for(j=0;j<M;j++)
scanf("%f",&B[i][j]);}
printf(" \n");
printf ("At:\n");
for (i=0; i<N; i++)
{for (j=0; j<M; j++)
{ At[i][j]=A[j][i];
printf(" %.1f ", At[i][j]);}
printf(" \n") ; }
printf("At*B:\n");
for(i=0;i<N;i++)
{for(j=0;j<M;j++)
{AtB[i][j]=0;
for (int k=0; k<M;k++) AtB[i][j]+=At[i][k]*B[k][j] ;
printf(" %.1f ",AtB[i][j]);
}
printf(" \n"); }
printf(" \n");
//-----------------
printf("B*B:\n");
for(i=0;i<N;i++)
{for(j=0;j<M;j++)
{BB[i][j]=B[0+i][0]*B[0][0+j]+B[0+i][1]*B[1][0+j]+B[0+i][2]*B[2][0+j];
printf(" %.1f ",BB[i][j]);
}
printf(" \n");}
printf(" \n");
//---------------------
printf ("3BB:\n");
for(i=0; i<N;i++)
{for (j=0; j<M; j++)
{TB[i][j]=1;
//for(int k=0; k<M; k++)
TB[i][j]=BB[i][j]*3;
printf(" %.1f ",TB[i][j]);
}
printf(" \n");}
printf(" \n");
//-----------------------
printf ("c:\n");
for(i=0; i<N;i++)
{for (j=0; j<M; j++)
{c[i][j]=0;
c[i][j]+=AtB[i][j]-TB[i][j];
printf(" %.1f ",c[i][j]);
}
printf(" \n"); }
printf(" \n");
//----------------
printf("C=(A*B-TB)*B:\n");
for(i=0;i<N;i++)
{for(j=0;j<M;j++)
{C[i][j]=0;
for (int k=0; k<M; k++)
C[i][j]+=c[i][k]*B[k][j];
printf(" %.1f ",C[i][j]);
}
printf(" \n"); }
printf(" \n");
getch();
}
Результат виконання програми
Виконання в Microsoft EXCEL
Матриця А |
|
|
Матриця В |
||
1 |
2 |
|
|
5 |
6 |
3 |
4 |
|
|
7 |
8 |
|
|
|
|
|
|
|
|
|
|
|
|
Матриця (A^T)*B |
|
|
Матриця B*B |
||
26 |
30 |
|
|
67 |
78 |
38 |
44 |
|
|
91 |
106 |
|
|
|
|
|
|
|
|
|
|
|
|
Матриця 3*B*B |
|
|
Матриця (А^T)В-3*В^2 |
||
201 |
234 |
|
|
-175 |
-204 |
273 |
318 |
|
|
-235 |
-274 |
|
|
|
|
|
|
|
|
|
|
|
|
Матриця А^T |
|
|
Матриця С |
||
1 |
3 |
|
|
-2303 |
-2682 |
2 |
4 |
|
|
-3093 |
-3602 |
Висновок: Отже, з проведеного вище розрахунку можна зробити висновок, що обчислення матриць в MS Excel і в C++ Builder надає однакового результату, обчислення здійснені вірно.