A maior rede de estudos do Brasil

Como fazer esse programa : Dada uma matriz real A com m linhas e n colunas e um vetor real V com n elementos, determinar o produto de A por V


4 resposta(s) - Contém resposta de Especialista

User badge image

RD Resoluções Verified user icon

Há mais de um mês

Para se obter o produto de uma matriz por um vetor, possui uma condição necessária para tal, o número de elementos do vetor deve ser igual ao número de colunas da matriz. Tendo esta condição satisfeita, bastamos obter a somatoria da multiplicação de todos os elemento de cada coluna da matriz por cada elemento do vetor correspondente. O resultado será um vetor com número total de elementos igual ao total de linha da matriz.


#include<stdio.h>

//Comstantes de tamanho

const int MAX_LINHA = 3;

const int MAX_COLUNA = 2;

int main(){

    //Definição das variaveis

    float vetor_resultante[MAX_COLUNA], vetor[MAX_COLUNA], matriz[MAX_LINHA][MAX_COLUNA];

    //Incialização da matriz

    matriz[0][0] = 1; matriz[0][1] = -4;

    matriz[1][0] = 3; matriz[1][1] = 2;

    matriz[2][0] = 0; matriz[2][1] = 5;

    //Imprime matriz

    printf("Matriz\n");

    for(int i = 0; i < MAX_LINHA; i++){

        for(int j = 0; j < MAX_COLUNA; j++){

            printf(" %.0f ", matriz[i][j]);

        }

        printf("\n");

    }

    //Inicialização do vetor

    vetor[0] = 5; vetor[1] = -3;

    printf("\nVetor\n");

    //Apresenta o resultado

    for(int i = 0; i < MAX_COLUNA; i++){

        printf(" %.0f ", vetor[i]);

    }

    //Faz o calculo

    for(int i = 0; i < MAX_LINHA; i++){

        for(int j = 0; j < MAX_COLUNA; j++){

            vetor_resultante[i] += matriz[i][j] * vetor[j];

        }

    }

    //Apresenta o resultado

    printf("\n\nResultado\n");

    for(int i = 0; i < MAX_LINHA; i++){

        printf(" %.0f ", vetor_resultante[i]);

    }

    return 0;

}

Para se obter o produto de uma matriz por um vetor, possui uma condição necessária para tal, o número de elementos do vetor deve ser igual ao número de colunas da matriz. Tendo esta condição satisfeita, bastamos obter a somatoria da multiplicação de todos os elemento de cada coluna da matriz por cada elemento do vetor correspondente. O resultado será um vetor com número total de elementos igual ao total de linha da matriz.


#include<stdio.h>

//Comstantes de tamanho

const int MAX_LINHA = 3;

const int MAX_COLUNA = 2;

int main(){

    //Definição das variaveis

    float vetor_resultante[MAX_COLUNA], vetor[MAX_COLUNA], matriz[MAX_LINHA][MAX_COLUNA];

    //Incialização da matriz

    matriz[0][0] = 1; matriz[0][1] = -4;

    matriz[1][0] = 3; matriz[1][1] = 2;

    matriz[2][0] = 0; matriz[2][1] = 5;

    //Imprime matriz

    printf("Matriz\n");

    for(int i = 0; i < MAX_LINHA; i++){

        for(int j = 0; j < MAX_COLUNA; j++){

            printf(" %.0f ", matriz[i][j]);

        }

        printf("\n");

    }

    //Inicialização do vetor

    vetor[0] = 5; vetor[1] = -3;

    printf("\nVetor\n");

    //Apresenta o resultado

    for(int i = 0; i < MAX_COLUNA; i++){

        printf(" %.0f ", vetor[i]);

    }

    //Faz o calculo

    for(int i = 0; i < MAX_LINHA; i++){

        for(int j = 0; j < MAX_COLUNA; j++){

            vetor_resultante[i] += matriz[i][j] * vetor[j];

        }

    }

    //Apresenta o resultado

    printf("\n\nResultado\n");

    for(int i = 0; i < MAX_LINHA; i++){

        printf(" %.0f ", vetor_resultante[i]);

    }

    return 0;

}

User badge image

Umberto

Há mais de um mês

Oi Laurin, Nos meus materiais tem programas de estrutura de dados, onde possui exemplos simples de vetores e matrizes. Dá uma olhada e procure nas pastas com as datas mais antigas. 

User badge image

Laurin

Há mais de um mês

Muito Obrigadaa Umberto , irei dar uma olhada !

User badge image

Cintia Gama

Há 19 dias

Alguém sabe me explicar?

Essa pergunta já foi respondida por um dos nossos especialistas