Вычислить среднее арифметическое положительных элементов для массивов - C (СИ)
Формулировка задачи:
вот задача
Вычислить среднее арифметическое положительных эле-ментов для массивов a [7], b [4], c [5] Предусмотреть функции vvod () и sum () для ввода элементов отдельного массива и для вычисления среднего арифметического элементов массива.
сорь но я чайник начинающий, довел до такого состояния а дальше не хватает ума
вот текст програмы
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <windows.h>
int main() {
setlocale(0, "");
int i;
int a[7], b[4], c[5];
for (i=0; i<7; i=i+1) {
printf ("Введите %i -й елемент масива a \n", i+1);
scanf_s ("%f", &a[i]);
}
for (i=0; i<4; i=i+1) {
printf ("Введите %i -й елемент масива b \n", i+1);
scanf_s ("%f", &b[i]);
}
for (i=0; i<5; i=i+1) {
printf ("Введите %i -й елемент масива c \n", i+1);
scanf_s ("%f", &c[i]);
}
int sum1=0, sum2=0, sum3=0, sum=0, k=0, k1=0, k2=0, k3=0;
for (i=0; i<7; i++) {
if (a[i]>0) {
sum1+=a[i]; k1++ ;}
}
int a1;
a1=sum1/k1;
printf("Ср. ариф. положительных ел масива a[7] равно %f\n",a1);
for (i=0; i<4; i++) {
if (b[i]>0) { sum2+=b[i]; k2++;}
}[/C]
int a2;
a2=sum2/k2;
printf("Ср. ариф. положительных ел масива b[4] равно %f\n",a2);
for (i=0; i<5; i++) {
if (c[i]>0) { sum3+=c[i]; k3++;}
}
int a3;
a3=sum3/k3;
printf("Ср. ариф. положительных ел масива c[5] равно %f\n",a3);
k=k1+k2+k3;
sum=sum1+sum2+sum3;
printf("Общее ср. ариф. положительных ел масива b[4] равно %f\n",sum/k);
system("PAUSE");
return 0;
}Решение задачи: «Вычислить среднее арифметическое положительных элементов для массивов»
textual
Листинг программы
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <locale>
#define SIZE_A 7
#define SIZE_B 4
#define SIZE_C 5
void vvod(int* arr, int size)
{
for (int i = 0; i<size; i++) {
printf("Введите %d -й елемент масива \n", i);
scanf_s("%d", &arr[i]);
}
}
int summ(int* arr, int size)
{
int summ = 0;
int summ_elem = 0;
for (int i = 0; i<size; i++) {
if (arr[i]>0) {
summ += arr[i];
summ_elem++;
}
}
return (summ/summ_elem);
}
int main() {
setlocale(LC_ALL, "Russian");
int a[SIZE_A], b[SIZE_B], c[SIZE_C];
vvod(a, SIZE_A);
vvod(b, SIZE_B);
vvod(c, SIZE_C);
printf("Ср. ариф. положительных ел масива a равно %d\n", summ(a, SIZE_A));
printf("Ср. ариф. положительных ел масива b равно %d\n", summ(b, SIZE_B));
printf("Ср. ариф. положительных ел масива c равно %d\n", summ(c, SIZE_C));
system("pause");
return 0;
}