#include<stdio.h>
#include<conio.h>
#include<alloc.h>
void multiply(float *a, float **b, float *c, int n);
void findmin(float *a, int n, int *pnum, float *pmin);
void output(float *a,int n);
void main()
{
int i,j,n;
float *A, **B, *C,temp;
int num;
float min;
clrscr();
printf("Enter the size of array: ");
scanf("%i",&n);
A=(float*)malloc(n*sizeof(float));
B=(float**)malloc(n*sizeof(float));
for(i=0;i<n;i++)
B[i]=(float*)malloc(n*sizeof(float));
C=(float*)malloc(n*sizeof(float));
printf("Enter the elements of array A[%i]:\n",n);
for(i=0;i<n;i++)
{ scanf("%f",&temp);
A[i]=temp;
}
printf("Array B[%i][%i]:\n",n,n);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
B[i][j]=A[i]-A[j];
printf("%6.3f ",B[i][j]);
}
puts("");
}
puts("");
printf("Array C[%i] = AxB: \n",n);
multiply(A,B,C,n);
output(C,n);
findmin(C,n, &num, &min);
printf("Minimal element of array C: %5.3f\nThe number of minimal element: %i", min, num);
puts("");
printf("Press any key... \n");
getch();
}
void output(float *a,int n)
{
int i;
for(i=0;i<n;i++)
printf("%6.3f ",a[i]);
puts("\n");
}
void multiply(float *a, float **b, float *c, int n)
{
int i,j;
float S;
for(j=0;j<n;j++)
{
S=0;
for(i=0;i<n;i++)
{
S+=a[i]*b[i][j];
c[j]=S;
}
}
}
void findmin(float *a, int n, int *pnum, float *pmin)
{
int i;
*pmin=a[0];
*pnum=0;
for(i=0;i<n;i++)
if(a[i]<*pmin)
{
*pmin=a[i];
*pnum=i+1;
}
}
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.