Sa se scrie programul care afiseaza rezultatul inmultirii unui vector cu o matrice folosind un subprogram. Elementele matricei si ale vectorului se vor citi de la tastatura.
#include <stdio.h>
#include <stdlib.h>
void produs(int a[20][20], int b[], int *c, int dim) {
int j,k;
for(j=0;j<dim;j++) {
c[j] = 0;
for(k=0;k<dim;k++) {
c[j] += b[k]*a[k][j];
}
}
}
int main() {
int a[20][20], b[20], *c;
int i,j,n,m;
c = (int*)malloc(m*sizeof(int));
printf("Numar linii: "); scanf("%d", &n);
printf("Numar coloane: "); scanf("%d", &m);
for (i=0;i<n;i++) {
for(j=0;j<m;j++) {
printf("a[%d][%d] =", i,j); scanf("%d", &a[i][j]);
}
}
for(i=0;i<m;i++) {
printf("b[%d] =", i); scanf("%d", &b[i]);
}
produs(a, b, c, m);
puts("Vectorul rezultat: ");
for(i=0;i<m;i++) {
printf("c[%d] = %d \n",i,c[i]);
}
free(c);
}
No comments:
Post a Comment