Wednesday, January 6, 2016

12) Inmultirea unui vector cu o matrice (subprogram)

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[20], int dim, int c[20]) {
    int j,k;
    for(j=0;j<dim;j++) {
        c[j] = 0;
            for(k=0;k<dim;k++) {
                c[j] = c[j]+b[k]*a[k][j];
            }
    }
}

int main() {
    int a[20][20], b[20], c[20];
    int i,j,n,m,k;
    printf("Rows: "); scanf("%d", &n);
    printf("Columns: "); 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, m, c);
    printf("\n");   

    put("Vectorul rezultat este: \n");
    for(i=0;i<m;i++) {
        printf("c[%d] = %d \n", i, c[i]);
    }

}


No comments:

Post a Comment