Форум программистов, компьютерный форум CyberForum.ru

Среднее арифметическое массива - C++

Восстановить пароль Регистрация
 
leha-demi
0 / 0 / 0
Регистрация: 06.11.2010
Сообщений: 125
11.06.2011, 21:13     Среднее арифметическое массива #1
Всем привет)
Вот требуется найти среднее арифметическое массива, попробовал написать, выдает ошибку очень большую..xД
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const int n=10;
void poisk(int *mass)
{int sredn,s;
    for(int i=0;i<n;i++)
    {s+=mass[i];
    sredn=s/n;}}
 
void main()
{int *mass=new int[n];
for(int i=0;i<n;i++)
{cout << "Vvedite razmer mass -> ";
 cin >> n;
 cout << "Vvod elementov -> ";
 cin >> mass[i];
}
poisk( mass);
int sredn;
for(int i=0;i<n;i++)
{cout << "Sredn: " << sredn;
_getch();}}
Что может быть не так, спасибо за ответы)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2011, 21:13     Среднее арифметическое массива
Посмотрите здесь:

C++ Функция,среднее арифметическое массива.
C++ Сформировать массив X из элементов массива A, значения которых не превышают среднее арифметическое массива A
C++ Вычислите среднее арифметическое положительных и среднее арифметическое отрицательных чисел
Среднее арифметическое массива до 0 ! C++
C++ Найти среднее арифметическое элементов массива, сравнить два массива поэлементно
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
11.06.2011, 21:17     Среднее арифметическое массива #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
double average (const int *MAS, const int SIZE) {
    double sum;
    for (int i = 0; i < SIZE; i++)
        sum += MAS[i];
    
    return (sum / SIZE);
}
 
int main () {
    //
    std::cout << average (MAS, SIZE);
    //
}
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2294 / 1664 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
11.06.2011, 21:24     Среднее арифметическое массива #3
leha-demi,
C++
1
2
3
4
const int         array[] = { 1, 2, 3, 4, 5, 6 };
const std::size_t size = sizeof(array) / sizeof(array[0]);
 
const double average = static_cast<double>(std::accumulate(array, array + size, 0)) / size;
leha-demi
0 / 0 / 0
Регистрация: 06.11.2010
Сообщений: 125
11.06.2011, 22:11  [ТС]     Среднее арифметическое массива #4
Спасибо)

Добавлено через 44 минуты
А если такого типа делать, так нельзя?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
const int n=5;
int poisk(int *mass)
{int summ=0;
    for(int i=0;i<n;i++)
    {summ += mass[i];
    return (summ / n);}}
 
void main()
{int *mass=new int[n];
for(int i=0;i<n;i++)
{cout << "Vvod elementov -> ";
 cin >> mass[i];
}
for(int i=0;i<n;i++)
{cout << "Sredn: " << poisk(mass);
_getch();}}
В ответе выдает о....=(
grizlik78
Эксперт С++
 Аватар для grizlik78
1884 / 1416 / 102
Регистрация: 29.05.2011
Сообщений: 2,961
11.06.2011, 22:32     Среднее арифметическое массива #5
Цитата Сообщение от leha-demi Посмотреть сообщение
C++
1
2
3
4
5
int poisk(int *mass)
{int summ=0;
        for(int i=0;i<n;i++)
        {summ += mass[i];
        return (summ / n);}}
Здесь три ошибки.
Во-первых целочисленное деление.
Во-вторых return внутри цикла, а должен быть после.
Ну и самое главное — отвратительное форматирование
Цитата Сообщение от leha-demi Посмотреть сообщение
А если такого типа делать, так нельзя?
Ни в коем случае!
Yandex
Объявления
11.06.2011, 22:32     Среднее арифметическое массива
Ответ Создать тему
Опции темы

Текущее время: 14:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru