Добавил:
korayakov
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабы / C++.Ашарина / !Сделанные / Lab2 / Var21
.cpp#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void Create1(int *A, int m)
{
int i;
for (i=0;i<=m-1;i++)
{
A[i]=random(11)-5;
printf("%3d",A[i]);
}
printf("\n");
}
void Create2(int **A, int m)
{
int i, j;
for (i=0;i<=m-1;i++)
{
for (j=0;j<=m-1;j++)
{
A[i][j]=random(11)-5;
printf("%3d",A[i][j]);
}
printf("\n");
}
}
void Mult(int **A, int *B, int *C, int m)
{
int i, j, s;
for (i=0;i<=m-1;i++)
{
s=0;
for (j=0;j<=m-1;j++)
s+=A[i][j]*B[j];
C[i]=s;
printf("%4d",C[i]);
}
printf("\n\n");
}
void Add(int *A, int *B, int *C, int *D, int m)
{
int i;
for (i=0;i<=m-1;i++)
D[i]=A[i]+B[i]-C[i];
}
void main()
{
clrscr();
randomize();
int m, i, **A, **B, **C, *x, *y, *z, *p1, *p2, *p3, *w;
printf("Enter the dimension of arrays: ");
scanf("%d",&m);
*A=new int[m];
for (i=0;i<=m-1;i++)
A[i]=new int[m];
printf("Matrix A:\n");
Create2(A,m);
x=new int[m];
printf("Array x:\n");
Create1(x,m);
p1=new int[m];
printf("Multiplication A*x:\n");
Mult(A,x,p1,m);
*B=new int[m];
for (i=0;i<=m-1;i++)
B[i]=new int[m];
printf("Matrix B:\n");
Create2(B,m);
y=new int[m];
printf("Array y:\n");
Create1(y,m);
p2=new int[m];
printf("Multiplication B*y:\n");
Mult(B,y,p2,m);
*C=new int[m];
for (i=0;i<=m-1;i++)
C[i]=new int[m];
printf("Matrix C:\n");
Create2(C,m);
z=new int[m];
printf("Array z:\n");
Create1(z,m);
p3=new int[m];
printf("Multiplication C*z:\n");
Mult(C,z,p3,m);
w=new int[m];
Add(p1,p2,p3,w,m);
printf("\n");
printf("Answer is:\n");
for (i=0;i<=m-1;i++)
printf("%4d",w[i]);
getch();
}