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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 5.00
<<FIRsT BLooD>>
0 / 0 / 0
Регистрация: 30.09.2010
Сообщений: 19
#1

Среднее значение элементов в одномерном массиве - C++

30.09.2010, 07:08. Просмотров 1724. Ответов 15
Метки нет (Все метки)

Привет! Помогите, плиз решить, я в этом почти не шарю, надеюсь разобраться:

В одномерном массиве, состоящем из n вещественных элементов, найти среднее значение всех элементов и номер элемента массива ближайшего к среднему по значению.

Буду очень признателен! =)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.09.2010, 07:08     Среднее значение элементов в одномерном массиве
Посмотрите здесь:

Как найти среднее значение в одномерном массиве? C++
C++ В одномерном массиве вычислить среднее значение положительных элементов массива
C++ В одномерном массиве значение каждого элемента заменить разностью этого значения и среднего арифметического значения других элементов
В одномерном массиве, состоящем из 5 элементов, вычислить среднее арифметическое всех элементов C++
C++ 2. В одномерном массиве найти среднее арифметическое для элементов, расположенных между максимальным и минимальным
C++ В одномерном массиве целых чисел заменить минимальное значение средним арифметическим его элементов, находящихся на четных позициях
C++ В одномерном массиве, состоящем из вещественных элементов вычислить номер минимального элемента в массиве, сумму элементов массива
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
30.09.2010, 09:53     Среднее значение элементов в одномерном массиве #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream.h>
#include <math.h>
 
int main()
{
    const int arraySize = 10;
 
    int i;
    float array[arraySize];
    float sred, sum=0, raz, minRaz=0, nom;
        
    cout<<"Array:"<<endl;
    srand(time(NULL));
        
        // Заполнение массива
    for (i = 0; i < arraySize; i++)
    {
        array[i]=(rand()%100)*0.01;
        cout<<array[i]<<"  ";
    }
 
 
        // Расчёт суммы и среднего
    for (i = 0; i < arraySize; i++)
        sum+=array[i];
    sred = sum/arraySize;
    cout<<"\nSrednee = "<<sred;
 
        // Поиск элемента, ближайшего к среднему
    for (i = 0; i < arraySize; i++)
    {
        raz = fabs(array[i]-sred);
        if (raz<minRaz||i==0)
        {
            minRaz=raz;
            nom=i;
        }
    }
 
    cout<<"\nThe nearest element has number: "<<nom
              <<". Differense is: "<< minRaz;
 
 
    ///////////
    cout<<endl;
    system("pause");
    return 0;
}
<<FIRsT BLooD>>
0 / 0 / 0
Регистрация: 30.09.2010
Сообщений: 19
30.09.2010, 10:32  [ТС]     Среднее значение элементов в одномерном массиве #3
Скопировал, вставил, запустил - пишет: "В ходе построения произошли ошибки"...
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
30.09.2010, 10:43     Среднее значение элементов в одномерном массиве #4
Какой компилятор? Какие ошибки выдаёт?
TheMachinist
242 / 174 / 15
Регистрация: 14.06.2010
Сообщений: 422
30.09.2010, 10:45     Среднее значение элементов в одномерном массиве #5
Попробуй вместо

C++
1
2
#include <iostream.h>
#include <math.h>
вот это:

C++
1
2
3
4
#include <iostream>
#include <math.h>
#include <ctime>
 using namespace std;
<<FIRsT BLooD>>
0 / 0 / 0
Регистрация: 30.09.2010
Сообщений: 19
30.09.2010, 13:09  [ТС]     Среднее значение элементов в одномерном массиве #6
Всё равно пишет, что ошибка.
Какая конкретно не говорит, предлагает попробовать последний рабочий вариант. Но раз такового нет, то фатал еррор и всё =)
M128K145
Эксперт C++
8280 / 3499 / 143
Регистрация: 03.07.2009
Сообщений: 10,707
30.09.2010, 14:12     Среднее значение элементов в одномерном массиве #7
<<FIRsT BLooD>>, прикрепите архив с проектом(без exe файла) к сообщению
<<FIRsT BLooD>>
0 / 0 / 0
Регистрация: 30.09.2010
Сообщений: 19
30.09.2010, 14:19  [ТС]     Среднее значение элементов в одномерном массиве #8
Архив:
Вложения
Тип файла: rar 123.rar (600 байт, 41 просмотров)
M128K145
Эксперт C++
8280 / 3499 / 143
Регистрация: 03.07.2009
Сообщений: 10,707
30.09.2010, 14:32     Среднее значение элементов в одномерном массиве #9
Какая IDE?
Код рабочий http://codepad.org/xVwz6UxY
<<FIRsT BLooD>>
0 / 0 / 0
Регистрация: 30.09.2010
Сообщений: 19
01.10.2010, 07:36  [ТС]     Среднее значение элементов в одномерном массиве #10
Не знаю, что такое IDE... =)
Просто программа не запускается...
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
01.10.2010, 07:40     Среднее значение элементов в одномерном массиве #11
IDE - интегрированная среда разработки. Та самая среда, в которой вы пишете свои программы и компилируете их. Примеры: Бесплатные среды(IDE) для программирования на С/С++.
<<FIRsT BLooD>>
0 / 0 / 0
Регистрация: 30.09.2010
Сообщений: 19
01.10.2010, 12:38  [ТС]     Среднее значение элементов в одномерном массиве #12
Microsoft Visual C++ 2008 Express Edition
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
01.10.2010, 12:50     Среднее значение элементов в одномерном массиве #13
Ясно... Ошибка случайно не такого плана:

Error 4 fatal error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "stdafx.h"' to your source?

Попробуйте:
C++
1
2
3
4
5
#include "stdafx.h"
#include <iostream>
#include <math.h>
#include <ctime>
 using namespace std;
<<FIRsT BLooD>>
0 / 0 / 0
Регистрация: 30.09.2010
Сообщений: 19
02.10.2010, 12:15  [ТС]     Среднее значение элементов в одномерном массиве #14
Спасибо большое, теперь работает! =)

Там рандомные числа появляются и сразу же высчитываются?

Если что, я 1 курс, только начали проходить С++, думаю, вряд ли препод поверит, что это я сам сделал, плюс всё на английском... ^^)
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
02.10.2010, 12:59     Среднее значение элементов в одномерном массиве #15
Цитата Сообщение от <<FIRsT BLooD>> Посмотреть сообщение
Там рандомные числа появляются и сразу же высчитываются?
В первом цикле for массив просто заполняется рандомными числами, во втором - подсчитывается сумма всех элементов, затем - среднее арифметическое, и в третьем цикле - находится ближайший к среднему элемент. Комментариями всё отмечено. Ближайший элемент я ищу как элемент, разница которого со средним (переменная minRaz) минимальна.

Цитата Сообщение от <<FIRsT BLooD>> Посмотреть сообщение
Если что, я 1 курс, только начали проходить С++, думаю, вряд ли препод поверит, что это я сам сделал, плюс всё на английском... ^^)
Раз уже дошли до циклов и массивов, то почему же не поверит? Да и английский там можно заменить на русский:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include "stdafx.h"
#include <iostream>
#include <math.h>
#include <ctime>
 using namespace std;
 
 
int main()
{
        const int arraySize = 10;
 
        int i;
        float array[arraySize];
        float sred, sum=0, raz, minRaz=0, nom;
        
    setlocale(LC_ALL,"Russian");  // русская локализация
        cout<<"Массив:"<<endl;
        srand(time(NULL));
        
        // Заполнение массива
        for (i = 0; i < arraySize; i++)
        {
                array[i]=(rand()%100)*0.01;
                cout<<array[i]<<"  ";
        }
 
 
        // Расчёт суммы и среднего
        for (i = 0; i < arraySize; i++)
                sum+=array[i];
        sred = sum/arraySize;
        cout<<"\nСреднее = "<<sred;
 
        // Поиск элемента, ближайшего к среднему
        for (i = 0; i < arraySize; i++)
        {
                raz = fabs(array[i]-sred);
                if (raz<minRaz||i==0)
                {
                        minRaz=raz;
                        nom=i;
                }
        }
 
        cout<<"\nБлижайший элемент: "<<nom
              <<". Разница составляет: "<< minRaz;
 
 
        ///////////
        cout<<endl;
        system("pause");
        return 0;
}
Если неохота использовать setlocale(), пишите транслитом - Massiv, Srednee и.т.п.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.10.2010, 09:48     Среднее значение элементов в одномерном массиве
Еще ссылки по теме:

В одномерном массиве B (n) заменить нулевые элементы на значение индексов этих элементов, где 0 <= n <= 80. C++
В одномерном числовом массиве посчитать среднее арифметическое отрицательных элементов C++
C++ В двухмерном массиве n*m (4*4) найти среднее арифметическое значение элементов первого столбца
C++ В одномерном массиве найти максимум/минимум, среднее арифметическое
Вычислить среднее значение элементов, расположенных в массиве между первым и последним нулевыми значениями C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
<<FIRsT BLooD>>
0 / 0 / 0
Регистрация: 30.09.2010
Сообщений: 19
03.10.2010, 09:48  [ТС]     Среднее значение элементов в одномерном массиве #16
Ещё раз спасибо, всё понял!
Yandex
Объявления
03.10.2010, 09:48     Среднее значение элементов в одномерном массиве
Ответ Создать тему
Опции темы

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