С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Удалить из массива все элементы, которые меньше среднеарифметического значения всех элементов исходного массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка в перегрузке операций http://www.cyberforum.ru/cpp-beginners/thread602206.html
Долго сижу и никак не могу понять в чём ошибка. Вот 3 файла. Они подключены правильно и работают. main.cpp #include <iostream> #include <iomanip> #include <windows.h> #include <math.h>...
C++ Как сдвинуть указатель на несколько байт? Сейчас разбираю пример из книжки и столкнулся со следующей проблемой. Компилирую в Visual Studio 2005. Переменная curr обьявленна как: _SYSTEM_PROCESSES *curr =... http://www.cyberforum.ru/cpp-beginners/thread602187.html
C++ Неполадка с запуском
Почему при запуске этой программы после её преобразования в exe с помощью Borland С++ Bulder окно командной строки появляется и сразу же исчезает? Программа: #include <iostream> using namespace...
C++ Динамические структуры
Составить программу, которая содержит текущую информацию о заявках на авиабилеты. Каждая заявка включает: • пункт назначения; • номер рейса; • фамилию и инициалы пассажира; • желаемую дату...
C++ Чат в с++ (консольное предложение) http://www.cyberforum.ru/cpp-beginners/thread602165.html
Я новичок ,кто может помочь создать чат в консоле на винсок. или мб есть какой нибудь мануал про это ? То чтобы продвигать свои знания и навыки в с++ надо что-то делать ) Как я представляю...
C++ Как сделать с использованием функций? #include <iostream> using namespace std; #include <cmath> int main() { подробнее

Показать сообщение отдельно
MrGluck
Модератор
Эксперт CЭксперт С++
7498 / 4614 / 694
Регистрация: 29.11.2010
Сообщений: 12,636
11.06.2012, 17:49
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
54
55
56
57
58
59
60
61
62
63
64
65
66
#include <iostream>
#include <cstdlib>
 
void gen(double*, std::size_t);
void print(double*, std::size_t);
double ave(double*, std::size_t);
std::size_t countLessAve(double*, std::size_t, double);
void delLessAve(double*, std::size_t, double, std::size_t);
 
int main()
{
    srand( time(0) );
    const std::size_t N = 10;
    double *arr = new double[N];
    gen(arr, N);
    print(arr, N);
    double a = ave(arr, N);
    std::size_t count = countLessAve(arr, N, a);
    delLessAve(arr, N, a, count);
    print(arr, count);
    delete []arr;
    return 0;
}
 
void gen(double *x, std::size_t N)
{
    srand( time(NULL) );
    for (int i=0; i < N; i++)
        x[i] = rand() % 100 / 100. * 10;
}
 
void print(double *x, std::size_t N)
{
    for (int i=0; i < N; i++)
        std::cout<< x[i]<< " ";
    std::cout<< std::endl;
}
 
double ave(double *x, std::size_t N)
{
    double sum = 0;
    for (int i=0; i < N; i++)
        sum += x[i];
    return sum / N;
}
 
std::size_t countLessAve(double *x, std::size_t N, double ave)
{
    std::size_t count = 0;
    for (int i=0; i < N; i++)
        if (x[i] < ave) count++;
    return count;
}
 
void delLessAve(double *x, std::size_t N, double ave, std::size_t newSize)
{
    int index = 0;
    double *b = new double[newSize];
    for (int i=0; i < N; i++)
        if (x[i] < ave) b[index++] = x[i];
    delete []x;
    x = new double[newSize];
    for (int i=0; i < newSize; i++)
        x[i] = b[i];
    delete []b;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.