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

Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов - C++

Восстановить пароль Регистрация
 
Голиб
0 / 0 / 0
Регистрация: 18.10.2016
Сообщений: 29
18.10.2016, 17:00     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов #1
Даны целые числа a1, a2, ... an. Наименьший член последовательности a1, a2, ... an заменить целой частью среднего арифметического всех членов, остальные члены оставить без изменения. Если в последовательности несколько членов со значением min(a1, a2, ... an), то заменить последний по порядку.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.10.2016, 17:00     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов
Посмотрите здесь:

C++ Для заданной марицы вычислить значение среднего арифметического элементов k-го столбца и n-й строки
C++ Массив. Наименьший член последовательности заменить целой частью среднего арифметического всех членов
C++ Заменить наименьший член последовательности целой частью среднего арифметического
Наименьший член последовательности заменить целой частью среднего арифметического всех членов C++
C++ Рекурсия. Определите закономерность формирования членов. Найдите N-ый член последовательности
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Invader0x7F
Helper C/C++
 Аватар для Invader0x7F
264 / 141 / 56
Регистрация: 22.09.2016
Сообщений: 478
Завершенные тесты: 4
18.10.2016, 17:19     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов #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
49
#include <iostream>
 
using namespace std;
 
int main()
{
    const int N = 10; int A[N] = { 0 };
    for (int index = 0; index < N; index++)
    {
        A[index] = std::rand() % 9 + 1;
        std::cout << A[index] << " ";
    }
 
    std::cout << endl;
 
    int min_i = -1; double avg = 0.;
    for (int index = 0; index < N; index++)
        if (A[index] < A[min_i] || min_i == -1) min_i = index;
 
    std::cout << "Amin[" << min_i << "] = " << A[min_i] << endl;
 
    for (int index = 0; index < N; index++)
        avg += A[index] / (double)N;
 
    std::cout << "avg = " << avg << endl;
 
    int count = 0;
    for (int index = 0; index < N; index++)
        if (A[index] == A[min_i]) count++;
 
    std::cout << "count = " << count << endl;
 
    for (int index = 0; index < N && count > 1; index++)
        if (A[index] == A[min_i]) A[index] = int(avg);
 
    for (int index = N - 1; index >= 0 && count == 1; index--)
         if (A[index] == A[min_i])
         {
             A[index] = int(avg);
             count = 0;
         } 
 
    for (int index = 0; index < N; index++)
        std::cout << A[index] << " ";
 
    std::cout << endl;
 
    std::cin.get();
}
Изображения
 
Голиб
0 / 0 / 0
Регистрация: 18.10.2016
Сообщений: 29
20.10.2016, 12:25  [ТС]     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов #3
Мне нужно ввод и вывод!
gru74ik
Модератор
 Аватар для gru74ik
3120 / 1346 / 167
Регистрация: 20.02.2013
Сообщений: 3,835
Записей в блоге: 17
25.10.2016, 12:03     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов #4
Голиб, чем Вас ответ коллеги Invader0x7F не устроил? И зачем темы дублировать (п. 5.5), если вместо этого тему можно просто поднять (п. 4.14)?
zer0mail
25.10.2016, 12:12
  #5

Не по теме:

Цитата Сообщение от Голиб Посмотреть сообщение
Мне нужно ввод и вывод!
С такими "способностями" (ни самостоятельно написать/скопировать ввод-вывод, ни ясно изложить, что же ему надо) в С++ делать нечего, имхо

Badjuicy
 Аватар для Badjuicy
14 / 14 / 9
Регистрация: 12.10.2016
Сообщений: 52
Завершенные тесты: 2
25.10.2016, 12:21     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Проверяй ^^
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
#include <iostream>
using namespace std;
 
int main() {
    int size;
    cout << "Size = "; cin >> size; //Сколько твоих целый чисел
    int * mas = new int[size];      //Делаем массив
    int minNum=0, sum=0;            //minNum - Номер минимального элемента
 
    for (int i = 0; i < size; i++) {//Вводим числа
        cout << i << ": ";
        cin >> mas[i];
    }
 
    for (int i = 0; i < size; i++) {
        sum += mas[i]; //Складываем все числа, для будущ. нах. среднего арифм.
        if (mas[minNum] >= mas[i]) minNum = i; //Находим номер минимального элемента
    }
 
    if (size >0) mas[minNum] = sum / size; //Заменяем минимальный элемент средним арифметическим
 
    for (int i = 0; i < size ; i++) // Выводим полученный массив на экран
        cout << mas[i] << " ";
 
    cout << endl;
    system("pause");
}
Добавлено через 4 минуты
Зачем при использовании using namespace std; в программе всегда уточнять std:: ?
Martein
Оператор ЭВМ 6 разряда
 Аватар для Martein
657 / 68 / 12
Регистрация: 22.06.2014
Сообщений: 146
25.10.2016, 12:29     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов #7
Я никогда не прекращаю удивляться тому, почему все выкладывают решение на Си, в то время как человек просит на C++. У нас же полно алгоритмов, контейнеров, которые позволяют это делать в три строки. Ну не пишите вы ТС-ам такие ответы. Используйте же std::sort, std::replace, std::copy, std::min. Потоковые итераторы ввода/вывода есть у нас. Иначе они так и будут после универов и дипломов плодить нативные массивы памяти в прикладном несистемном программировании и нам же с вами иногда потом приходится отлаживать такой код.
Badjuicy
 Аватар для Badjuicy
14 / 14 / 9
Регистрация: 12.10.2016
Сообщений: 52
Завершенные тесты: 2
25.10.2016, 12:31     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов #8
Забыл delete mas; перед system("pause");
Прошу прощения.
gru74ik
Модератор
 Аватар для gru74ik
3120 / 1346 / 167
Регистрация: 20.02.2013
Сообщений: 3,835
Записей в блоге: 17
25.10.2016, 12:59     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов #9
Цитата Сообщение от Martein Посмотреть сообщение
почему все выкладывают решение на Си, в то время как человек просит на C++. У нас же полно алгоритмов, контейнеров, которые позволяют это делать в три строки. Ну не пишите вы ТС-ам такие ответы. Используйте же std::sort, std::replace, std::copy, std::min. Потоковые итераторы ввода/вывода есть у нас.
Martein, вот и покажи класс Наверняка многим новичкам будет интересно.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.10.2016, 14:16     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов
Еще ссылки по теме:

Вычисление среднего арифметического последовательности дробных чисел C++
C++ Наименьший член последовательности заменить целой частью среднего арифметического всех ее членов
Заменить значения всех элементов заданной строки матрицы числами заданной последовательности C++

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

Или воспользуйтесь поиском по форуму:
zer0mail
2187 / 1870 / 187
Регистрация: 03.07.2012
Сообщений: 6,650
Записей в блоге: 1
25.10.2016, 14:16     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов #10
Цитата Сообщение от Martein Посмотреть сообщение
У нас же полно алгоритмов, контейнеров, которые позволяют это делать в три строки.
А они пишут "Это мы не проходили" и приходится снова выкладывать.

Не по теме:

Я вообще считаю, что выкладывать готовые решения простых задач смысла нет. Тупым халявщикам это не поможет изучить С++, а толковые сами сделают (хотя бы частично).

Yandex
Объявления
25.10.2016, 14:16     Наименьший член заданной последовательности заменить целой частью среднего арифметического всех членов
Ответ Создать тему
Опции темы

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