Предмет: Информатика, автор: lordd007

C++. Напишите программу для вычисления среднего геометрического элементов массива array[15] удовлетворяющих условию 5<=array[i]<=15.
Вот моя прога, но расчеты не верны. Я думаю что что-то не так с формулой Сред Геометр. Найдите ошибку.
#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;
int p = 1;
int kol = 0;
for (int i = 0; i < 15; i++) cin >> array[i];
cout << "array = {";
for (int i = 0; i < 15; i++)
cout << array[i] << " ";
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;
}
else
{
cout << "Положительных нет " << endl;
}

system("pause");
return 0;
}

Ответы

Автор ответа: lol33211
0
sg = pow(p, 1/kol);  - переменная kol - типа int, 
т.е. по сути вы написали sg = pow(p,0)  , число в степени 0 это всегда 1
Автор ответа: lordd007
0
Спасибо! Можешь сказать у меня правильно написаны формулы для расчёта среднего геометрического элементов массива? Тестовый расчёт сделал, а ответ отрицательный вышел
Похожие вопросы
Предмет: Литература, автор: sofiya04072008