Найти среднее арифметическое скольких угодно чисел - C (СИ)
Формулировка задачи:
я нашел среднее арифмитическое и среднне гоеметрическое двух чисел
как мне усеворшенствовать код чтоб можно было считать не двух чисел а "n"
#include<stdio.h> main() { int a, b, Ariv, Geom; printf("Input a b :"); scanf("%d %d", &a, &b); Ariv=(a+b)/2; Geom=sqrt(a+b); printf("Ariv=%d Geom=%d", Ariv, Geom); }
Решение задачи: «Найти среднее арифметическое скольких угодно чисел»
textual
Листинг программы
#include <stdio.h> #include <math.h> #include <stdlib.h> #include <time.h> double arithmetic_mean(const int * pArray, const size_t nCount) { size_t i; double ret; for ( ret = 0.0, i = 0; i < nCount; ++i ) ret += pArray[i]; return ret / (double)nCount; } double geometric_mean(const int * pArray, const size_t nCount) { size_t i; double ret; for ( ret = 1.0, i = 0; i < nCount; ++i ) ret *= pArray[i]; return pow(ret, 1.0 / (double)nCount); } void random_fill(int * pArray, size_t nCount, const int iLow, const int iHigh) { while ( nCount-- ) *pArray++ = rand() % ( iHigh - iLow + 1) + iLow; } void dump(const int * pArray, size_t nCount) { while ( nCount-- ) printf("%d%c", *pArray++, ( nCount ) ? ' ' : '\n'); } /**********************************************/ #define LOW 1 #define HIGH 10 int main(void) { int * pArray; size_t nCount; srand(time(NULL)); while ( printf("Number of elements: ") && scanf("%u", &nCount) == 1 && nCount ) { if ( ! ( pArray = malloc(sizeof(int) * nCount) ) ) { perror("malloc"); exit(1); } random_fill(pArray, nCount, LOW, HIGH); printf("Array:\n"); dump(pArray, nCount); printf("Arithmetic mean: %f\n", arithmetic_mean(pArray, nCount)); printf("Geometric mean: %f\n", geometric_mean(pArray, nCount)); free(pArray); } exit(0); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д