Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как убрать лишнее из вектора.

98K
25 января 2017 года
Иван Иванов
1 / / 25.01.2017
Как сделать что бы повторяющиеся числа не выводились на экран? И как можно вывести максимальное значение моды?
Код:
#include<std_lib_facilities.h>
void stroka()
{
    cout << "__________________________________________________________n";
}

int main()
{

    setlocale(LC_ALL, "Russian");
    vector<double> number;
    vector<int> moda;
    double y = 0; // вводимое значение
    int x = 10; // количество вводимых значений
    //ввод чисел в вектор
    do
    {
        system("cls");
        y = 0;
        cout << "Введите несколько чисел["<< x <<"]: ";
        cin >> y;
        x--;
        number.push_back(y);
    } while (x > 0);
   
    // вывод на экран
    for (int x = 0; x < number.size(); x++)
    {
        cout << "Вектор[" << x + 1 << "]: " << number[x] << 'n';
    }
    stroka();
    //сортировка
    double max = number[0], min = number[0];
    for (int i = 0; i < number.size(); i++)
    {
        if (max < number[i])
            max = number[i];
        if (min > number[i])
            min = number[i];
    }
    cout << "Max = " << max << "nMin = " << min << "n";
    //мода
    int temp_moda;
   
    for (int i = 0; i < number.size(); i++)
    {
        temp_moda = 0;
        for (int x = 0; x < number.size(); x++)
        {
            if (number[i] == number[x])
                temp_moda++;
        }
        moda.push_back(temp_moda);
    }
    stroka();
    // вывод моды
    for (int i = 0; i < moda.size(); i++)
    {
        cout << "Число " << number[i] << " повторяется " << moda[i] << " раз.n";
    }
    keep_window_open();
}
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог