Próbuje napisać program który będzie wyświetlać oraz dodawać do siebie dwa wektory o określonej długości. Wyświetlanie obu wektorów działa jak nalezy, ale mam problem z samym ich dodaniem. Oczywiście znam wzór na dodawanie wektorów, ale nie za bardzo potrafie go wprowadzić do mojego kodu. Sumowanie tak jak oba wyświetlania chciałem zrobić przez oddzielną funkcje i jej wartośc przekazać przez referencję. Prosiłbym o porady jak ten problem rozwiązać.
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#include <Windows.h>
void wys_wek1(float w1[], int N)
{
for (int i = 0; i < N; i++)
printf("%d=%f\n", i, w1[i]);
printf("gdzie 0 to x, 1 to y");
printf("\n");
}
void wys_wek2(float w2[], int M)
{
for (int j = 0; j < M; j++)
printf("x=%f\n",w2[j]);
printf("gdzie 0 to x, 1 to y");
printf("\n");
}
void sumowanie(float sum[])
{
printf("suma wektorow to: (%f)", sum[]);
int main(void)
{
float A[] = {3,4};
float B[] = {0,5};
wys_wek1(A, 2);
wys_wek2(B, 2);
system("pause");
return 0;
}
EDIT: Wpadłem na pewien pomysł i go wdrożyłem, niby wszystko działa, ale chciałem spytac czy jest to wykonane poprawnie pod względem technicznym i udało mi się przekazać te tablice przez referencje?
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#include <Windows.h>
#include <math.h>
void wys_wek1(float w1[], int N)
{
for (int i = 0; i < N; i++)
printf("%d=%f\n", i, w1[i]);
printf("gdzie 0 to x, 1 to y");
printf("\n");
}
void wys_wek2(float w2[], int M)
{
for (int j = 0; j < M; j++)
printf("x=%f\n",w2[j]);
printf("gdzie 0 to x, 1 to y");
printf("\n");
}
void sumowanie(float s1[], float s2[])
{
printf("suma wektorow to: (%.2f,%.2f)\n", s1[0] ,s2[0]);
}
int main(void)
{
float A[] = {3,4};
float B[] = {0,5};
float p;
p = sqrt((A[0]*A[0])+(B[0]*B[0]));
float r;
r = sqrt((A[1]*A[1])+(B[1]*B[1]));
wys_wek1(A, 2);
wys_wek2(B, 2);
float s1[] = {p};
float s2[] = {r};
sumowanie(s1,s2);
system("pause");
return 0;
}