Boa noite, estou precisando de um auxilio neste exercício.
Preciso fazer dois vetores em struct e usar ponteiros no decorrer do programa, e também utilizar funções.
O exercício solicita 2 vetores e o produto escalar entre eles ((x1*x2)+(y1*y2)+(z1+z2))
Desenvolvi este código abaixo, porém não estou conseguindo fazer os valores que o scanf armazena passar para a função para realizar as operações, alguém consegue me auxiliar?
#include <stdio.h>
float escalar (int *v1_x, int *v1_y, int *v1_z, int *v2_x, int *v2_y, int *v2_z){
int mx, my, mz, result;
mx = *v1_x * *v2_x;
my = *v1_y * *v2_y;
mz = *v1_z * *v2_z;
result = mx+my+mz;
printf("O produto escalar é %d", result);
}
int main(){
struct vetor{
int x;
int y;
int z;
};
struct vetor Vetor1, *ponteiro_Vetor1, Vetor2, *ponteiro_Vetor2;
ponteiro_Vetor1 = &Vetor1;
ponteiro_Vetor2 = &Vetor2;
printf("Insercao de dados do Vetor1:\n");
printf("informe a coordenada X: ");
scanf("%d", &ponteiro_Vetor1->x);
printf("informe a coordenada Y: ");
scanf("%d", &ponteiro_Vetor1->y);
printf("informe a coordenada Z: ");
scanf("%d", &ponteiro_Vetor1->z);
printf("Inserção de dados do Vetor2:\n");
printf("informe a coordenada X: ");
scanf("%d", &ponteiro_Vetor2->x);
printf("informe a coordenada Y: ");
scanf("%d", &ponteiro_Vetor2->y);
printf("informe a coordenada Z: ");
scanf("%d", &ponteiro_Vetor2->z);
escalar(ponteiro_Vetor1->x, ponteiro_Vetor1->y, ponteiro_Vetor1->z, ponteiro_Vetor2->x, ponteiro_Vetor2->y, ponteiro_Vetor2->z);
}
Desde já agradeço.