Найти суммы векторов - C (СИ)
Формулировка задачи:
Заданы четыре вектора X,Y,Z,W. Найти вектора С = X+Y и D=Z+W.
X[7], Y[7],
Z[9], W[9]
Вычисление суммы векторов оформить в виде функции.
Помогите пожалуйста написать программуРешение задачи: «Найти суммы векторов»
textual
Листинг программы
#include <stddef.h>
#include <stdio.h>
void readArray(int a[ ], size_t n) {
for (size_t i = 0; i < n; i++)
scanf("%d", &a[i]);
}
void sumArrays(const int a[ ], const int b[ ], int c[ ], size_t n) {
for (size_t i = 0; i < n; i++)
c[i] = a[i] + b[i];
}
void writeArray(const int a[ ], size_t n) {
for (size_t i = 0; i < n; i++)
printf("%d ", a[i]);
putchar('\n');
}
int main() {
int x[7], y[7], z[9], w[9];
readArray(x, 7);
readArray(y, 7);
readArray(z, 9);
readArray(w, 9);
int c[7], d[9];
sumArrays(x, y, c, 7);
sumArrays(z, w, d, 9);
writeArray(c, 7);
writeArray(d, 9);
return 0;
}
Объяснение кода листинга программы
- Программа содержит четыре функции:
—
readArray— считывает элементы массива из стандартного ввода; —sumArrays— суммирует элементы двух массивов и сохраняет результат в третьем массиве; —writeArray— выводит элементы массива на стандартный вывод; —main— главная функция программы, в которой осуществляется ввод и вывод данных. - Массив
xсчитывается с помощью функцииreadArray, после чего его элементы суммируются с элементами массиваyи результат сохраняется в массивеc. Результат выводится на экран с помощью функцииwriteArray. - Аналогично поступают с массивами
zиw, только результат суммирования сохраняется в массивеd. - Ввод и вывод данных осуществляется с помощью функций
readArrayиwriteArrayсоответственно. - Результат выполнения программы — вывод на экран двух массивов:
cиd.