Форум программистов, компьютерный форум 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. Вывести массивы на экран в удобном для осмотра виде.Массивы А, В, С заполнить одним из двух способов, а именно, или А) действительными данными, или Б) целыми данными с помощью формул: А) аi=sini, bi= f(i), ci= аi+ bi,i= 1,2,..., k Б) аi= ;bi=;ci=аi+ bi . ...
Как разделить массив на несколько? C++
Задание. Разделение массива на несколько Дан массив i состоящий из n чисел типа int (случайное равномерное заполнение выполняется программой), n=10. Произвести сохранение всех элементов массива i в элементах 4-х массивов типа char (массивы a,b,c,d). Например, число int состоит из 32 бит (4 байт). Первый байт элемента i следует сохранить в массиве a с соответствующим индексом элемента k (a)....
C++ треугольник http://www.cyberforum.ru/cpp-beginners/thread890949.html
Добрый вечер. реализую абстрактные фигуры (круг, прямоугольник) и производные от них (площадь, периметр). Как-то можно нарисовать треугольник по вызову? Пример с кругом и прямоугольником: #include <cstdlib> #include <iostream> using namespace std; const double PI = 3.1415926;
C++ Простая задача на шаблоны Создал класс Student и производный Student2 с помощью шаблонов, описал в них переменные и методы. И в main мне надо вызвать методы этих классов с помощью объектов но компилятор выдает кучу ошибок. Напишите пожалуйста где я ошибаюсь #include <iostream> #include <conio.h> using namespace std; const int n=30; template<class A> подробнее

Показать сообщение отдельно
Мимино
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 элемента и выравнивания по правому краю
 
Текущее время: 05:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru