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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Статические члены класса http://www.cyberforum.ru/cpp-beginners/thread170740.html
Доброго времени суток. Задача состоит в том, чтобы создать список обыектов класса Test, с возможностью последующего добавления элементов и расширения списка. Память под список долна добавляться в конструкторе. Указктель p должен быть статическим и в каждом объекте класса должен быть равным указателю на начало списка, т. е. на первый элемент, но уже в объявлении Test *Test::p = NULL; он...
C++ Не работает ссылка на структуру Написать программу, выполняющую следующие действия: -ввод с клавиатуры данных в массив, состоящий из десяти структур типа WORKER; -записи должны быть размещены по алфавиту; НЕ выходит : 1) передать в функцию sort массив структур - пишет несовместимость аргумента и параметра. 2) когда заполняю данные, fio вводит только первый раз, остальные 10 просит только заполнить dolzhnost и stage.... http://www.cyberforum.ru/cpp-beginners/thread170735.html
C++ В списке удалить цифру стоящую перед заданной
Проблема такая : в классе список из нескольких цифр нужно удалить цифру перед заданной. для этого я использую вот такой метод void Del(int i){ Node *p=p_first; for(;(p)&&(i);i--) { p=p->p_next; }; if(p){ if(p->p_prev) p->p_prev->p_next=p->p_next; if(p->p_next) p->p_next->p_prev=p->p_prev;
friend function C++
После добавления дружественной ф-ции sum( а она для сложения salary у человека, которого я выберу) класс перестал работать. Что у меня не так? Ф-ция: void sum(bank ob) { char line;int s=0; cout<<" input name:"<<endl; cin>>line; for(int i=0;i<ob.n;i++) {
C++ Включение нового значения в упорядоченный список http://www.cyberforum.ru/cpp-beginners/thread170687.html
помоги плиз сделать такую программку.... В составе программы описать функцию, которая включает в упорядо-ченный по убыванию список новое значение, введенное с клавиатуры, та-ким образом, чтобы не нарушать упорядоченность.
C++ Внешний файл и дин.память Задачу надо сделать через файл и дин.память. Данные с файла считывает, но вот результат не соответствует условию (вообще не пойму что выводит). Без файла и памяти работает прекрасно. Если кто сможет исправить ошибку, заранее благодарен! Вот условие задачи, и код: Дан массив С1, С2, …, С24. В массиве есть два элемента равные 0. Заменить все элементы, стоящие между ними, на единицы. ... подробнее

Показать сообщение отдельно
dihlofos
Бродяга
 Аватар для dihlofos
302 / 256 / 17
Регистрация: 27.08.2010
Сообщений: 553
02.10.2010, 12:59     Среднее значение элементов в одномерном массиве
Цитата Сообщение от <<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 и.т.п.
 
Текущее время: 13:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru