Цель этой задачи - найти среднее значение массива, но не внутри основного, мне нужно вызвать функцию для выполнения суммы и показать среднее значение.Использование функции для поиска среднего значения массива C++
я, хотя мой код был звук, но он просто возвращает «в среднем составляет 011014F1»
Я попробовал несколько различных способов сделать функцию, но я пошел неправильно где-то, может быть везде!
Просто голова, им только начинается с программирования.
Heres мой код:
#include <iostream>
#include <vector>
using namespace std;
void printArray(int theArray[], int sizeOfarray);
float average(float numbers[], float size, float arrayAverage);
int main()
{
int array[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
printArray(array, 10);
cout << "The average is: " << average << endl;
return 0;
}
void printArray(int theArray[], int sizeOfarray)
{
for (int x = 0; x < sizeOfarray; x++)
{
cout << theArray[x] << endl;
}
}
float average(float numbers[], float size, float arrayAverage)
{
double sum = 0.0;
for (int x = 0; x < size; x++)
{
sum += numbers[x];
arrayAverage = sum/size;
}
return (arrayAverage);
}
У меня была средняя функция поплавок первоначально установлен как поплавок с междунар для «чисел», «размер» и «arrayAverage», но думал, что я изменил бы их все, чтобы плавать так они не сталкиваются. например, преобразование int в float и т. д.
Как я уже сказал, это новое, поэтому моя логика на самом деле не существует, но я думаю, что на правильных дорожках.
Любая идея, почему его возвращение 011014F1 и цифры, подобные этому, а не только в среднем 1-10?
Любые советы очень ценятся!
То, что вы печатаете, является адресом функции «средний». Вы должны вызвать его с параметрами, чтобы он работал (как еще он узнает, какой массив он должен использовать?) – lared
Существует опечатка. В 'cout' вы хотите' average (array, 10) 'else, как вы обнаружили, он печатает указатель на функцию. – Chintan
попробуйте std :: valarray? – user3528438