C++. Напишите программу для вычисления среднего геометрического элементов массива...

0 голосов
74 просмотров

C++. Напишите программу для вычисления среднего геометрического элементов массива array[15] удовлетворяющих условию 5<=array[i]<=15. <br> Вот моя прога, но расчеты не верны. Я думаю что что-то не так с формулой Сред Геометр. Найдите ошибку.
#include "stdafx.h"
#include
#include
using namespace std;

int main(int argc, char* argv[])
{
double array[15];
double sg;
cout << "Vvedite 15 elementov massiva: " << endl;<br> int p = 1;
int kol = 0;
for (int i = 0; i < 15; i++) cin >> array[i];
cout << "array = {";<br> for (int i = 0; i < 15; i++)
cout << array[i] << " ";<br> for (int i = 0; i < 15; i++) {
if ((array[i] <= 15) && (array[i] >= 5)) {
p *=array[i];
kol++;
}
}

sg = pow(p, 1 / kol);
if (kol>0) {
cout << "SG: " << sg << endl;<br> }
else
{
cout << "Положительных нет " << endl;<br> }

system("pause");
return 0;
}


Информатика (166 баллов) | 74 просмотров
Дан 1 ответ
0 голосов

Sg = pow(p, 1/kol);  - переменная kol - типа int, 
т.е. по сути вы написали sg = pow(p,0)  , число в степени 0 это всегда 1

(410 баллов)
0

Спасибо! Можешь сказать у меня правильно написаны формулы для расчёта среднего геометрического элементов массива? Тестовый расчёт сделал, а ответ отрицательный вышел