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

Как вывести наиболее часто встречаемые элементы в массиве? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вычислить сумму попарных произведений элементов http://www.cyberforum.ru/cpp-beginners/thread890990.html
Вычислить сумму попарных произведений элементов (скалярное произведение) двух массивов.
C++ Работа с файлом. Выделить из строки "стр1" все слова, начинающиеся с гласной буквы, а из строки "стр2" - слова, начинающиеся с согласной Люди помогите, пожалуйста, очень очень надо. Выделить из строки "стр1" все слова, начинающиеся с гласной буквы, а из строки "стр2" - слова, начинающиеся с согласной. Образовать строку "стр3",... http://www.cyberforum.ru/cpp-beginners/thread890986.html
Построить три одномерные массивы А, В, С C++
Построить три одномерные массивы А, В, С. Количество элементов в каждом массиве задать некоторым числом k из диапазона 15 .. 20. Вывести массивы на экран в удобном для осмотра виде.Массивы А, В, С...
Как разделить массив на несколько? C++
Задание. Разделение массива на несколько Дан массив i состоящий из n чисел типа int (случайное равномерное заполнение выполняется программой), n=10. Произвести сохранение всех элементов массива i в...
C++ треугольник http://www.cyberforum.ru/cpp-beginners/thread890949.html
Добрый вечер. реализую абстрактные фигуры (круг, прямоугольник) и производные от них (площадь, периметр). Как-то можно нарисовать треугольник по вызову? Пример с кругом и прямоугольником: #include...
C++ Простая задача на шаблоны Создал класс Student и производный Student2 с помощью шаблонов, описал в них переменные и методы. И в main мне надо вызвать методы этих классов с помощью объектов но компилятор выдает кучу ошибок.... подробнее

Показать сообщение отдельно
Мимино
180 / 151 / 5
Регистрация: 22.05.2013
Сообщений: 435
Записей в блоге: 1
04.06.2013, 22:21
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 "stdafx.h"
#include <iostream>
#include <iomanip>
using namespace std;
 
const int size = 20;   //объявление размера массива. По условиям задачи - глобально
int arr[size];            //объявление размера массива. По условиям задачи - глобально
 
void mode(void);      //прототип функции, которая определяет частоту встречающихся значений и выводит данные
 
int main()
{
    setlocale(LC_ALL, "Russian");    //разрешаем русский язык в консоле
 
    srand(time(NULL));                 //зерно псевдослучайности для генерерации случайных элементов массива
    cout << "Массив: ";
    for (int i = 0; i < size; i++)      
    {
        arr[i] = rand() % 21;          //присваиваем значение i-му элементу массива ГСЧ от 0 до 20
        cout << arr[i] << "  ";        // выводим на экран элемент массива
    }
 
    cout << endl;
    mode();                              //вызываем функцию. Скобки пустые, т.к. она не принимает никаких аргументов
    system("pause");                  // делаем паузу в консоле, чтоб окно не закрылось сразу
    return 0;                             
}
 
 
void mode()                            //заголовок функции без аргументов
{
    const int countSize = 21;     //размер массива счетчиков
    int count[countSize] = {0}, largest = 0;
 
    for (int i = 0; i < size; i++)   
        count[arr[i]]++;             //увеличиваем каждый элемент счетчика при встрече соответствующего значения
 
    for (int i = 0; i < countSize; i++)
        if (count[i] > largest)
            largest = count[i];  //определяем максимальный элемент массива
 
    while (largest > 0)                 //выводим на экран результат
    {
        for (int i = 0; i < countSize; i++)
            if (count[i] == largest)
                cout << setw(2) << i << " - " << count[i] << " раз." << endl;
        largest--;
    }
}
что такое setw(2) в 46 строке?
это манипулятор потока. Равносильно размещению значения в ячейке, рассчитанной на 2 элемента и выравнивания по правому краю
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru