Аватар для posol_7
18 / 18 / 13
Регистрация: 19.11.2014
Сообщений: 156

Подсчитать количество голосов поданные за каждого кандидата

09.01.2015, 17:41. Показов 2094. Ответов 17
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вводятся фамилии N кандидатов.
Подсчитать количество голосов, поданные за каждого.
Результаты голосования вводятся с клавиатуры в виде фамилии кандидата, за которого подано голос.
Признак окончания - введение 0.
Результаты вывести согласно количеству голосов в нисходящем порядке.


Мой код с ошибками. объясните как решить задачу...

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
// 2.1.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include "conio.h"
#include "iostream"
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"rus");
    
    char N;
    int i=1;
 
    cout << "Enter Name: " << endl;
    cin >> N;
    
    while(N!=0)
    {
        cin >> N;
        if (N=N)
        {
            i=i+1;
            cout << N << " " << i << endl;
        }
        else
        {
            cout << N << i << endl;
        }
    }
 
    _getch();
    return 0;
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.01.2015, 17:41
Ответы с готовыми решениями:

Подсчитать количество голосов, поданных за каждого кандидата
Есть задача: Вводятся фамилии N кандадатив. Подсчитать количество голосов, поданных за каждого. Результаты голосования вводятся с...

Вывести фамилию кандидата, набравшего максимальное количество голосов
В ЭВМ, обслуживающую выборы, вводят следующую информацию: фамилии кандидатов и количество набранных ими голосов. Составьте программу,...

Подсчитать количество голосов
ребяяяткии,выручайтее На телевизионном шоу зрители голосуют за участников шоу, отправляя SMS-сообщение с номером участника.Определите...

17
4 / 4 / 7
Регистрация: 12.12.2014
Сообщений: 123
09.01.2015, 17:44
Ну в строке 23 ты наверное хотел сравнить N. Во-первых, ты сравниваешь переменную сам с собой(все равно, что встать перед зеркалом), во-вторых, ты не сравниваешь, т.к. = - оператор присваивания. Знак равенства - это ==.
В строке 25 кошернее будет написать i += 1;
Ну и у тебя нет списка кандидатов.
0
 Аватар для posol_7
18 / 18 / 13
Регистрация: 19.11.2014
Сообщений: 156
09.01.2015, 18:04  [ТС]
Цитата Сообщение от wondermilk Посмотреть сообщение
Ну и у тебя нет списка кандидатов.
так как его отобразить?
0
4 / 4 / 7
Регистрация: 12.12.2014
Сообщений: 123
09.01.2015, 18:05
Мне кажется тут нужно использовать структуры. Я что-то под тупил, посмотрим, как кто-нибудь решит.
0
Модератор
Эксперт С++
 Аватар для zss
13759 / 10954 / 6487
Регистрация: 18.12.2011
Сообщений: 29,211
09.01.2015, 18:11
Цитата Сообщение от wondermilk Посмотреть сообщение
кошернее будет написать i += 1;
кошернее будет написать i++;
0
267 / 170 / 40
Регистрация: 25.08.2014
Сообщений: 1,087
Записей в блоге: 1
09.01.2015, 18:15
Цитата Сообщение от posol_7 Посмотреть сообщение
Ну и у тебя нет списка кандидатов.
так как его отобразить?
Лалъ.
0
4 / 4 / 7
Регистрация: 12.12.2014
Сообщений: 123
09.01.2015, 18:30
Ну ты вообще по-кошерному загнул
0
0 / 0 / 1
Регистрация: 17.02.2014
Сообщений: 74
09.01.2015, 18:34
Тебе полностью код или как?
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
09.01.2015, 18:38
posol_7,
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
#include <iostream>
#include<cmath>
#include<numeric>
#include<vector>
#include<string>
#include<algorithm>
#include<functional>
#include<iterator>
#include<cstdlib>
int main()
{
    std::string sinput="";
    std::vector<std::pair<std::string,int>> vec_candidates;
    while(std::cin>>sinput)
    {
        if(sinput == "0") break;
        auto it = std::find_if(vec_candidates.begin(),vec_candidates.end(),[sinput](std::pair<std::string,int> p)
        {
            return p.first == sinput;
        });
        if(it == vec_candidates.end())
            vec_candidates.push_back(std::pair<std::string,int> (sinput,1));
        else
            it->second++;;
    }
    std::sort(vec_candidates.begin(), vec_candidates.end(),[](std::pair<std::string,int> p,std::pair<std::string,int> p1)
    {
        return p.second > p1.second;
    });
    for(auto p:vec_candidates)
        std::cout<<p.first<<"  "<<p.second<<"\n";
    system("pause");
 
    return 0;
}
1
0 / 0 / 1
Регистрация: 17.02.2014
Сообщений: 74
09.01.2015, 18:40
cooller, а попроще нельзя было сделать? через структуру?
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
09.01.2015, 18:43
Цитата Сообщение от Kol9n99 Посмотреть сообщение
а попроще нельзя было сделать? через структуру?
что непонятно?
если нужно структура, вместо std:: pair можно создать аналогичную структуру из двух полей
0
 Аватар для posol_7
18 / 18 / 13
Регистрация: 19.11.2014
Сообщений: 156
09.01.2015, 18:50  [ТС]
Цитата Сообщение от Kol9n99 Посмотреть сообщение
Тебе полностью код или как?
да, если можно, через структуру)

Добавлено через 5 минут
Цитата Сообщение от cooller Посмотреть сообщение
for(auto p:vec_candidates)
* * * * std::cout<<p.first<<" *"<<p.second<<"\n";
error C3531: p: символ, тип которого содержит спецификатор "auto" должен иметь инициализатор
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
09.01.2015, 18:57
Цитата Сообщение от posol_7 Посмотреть сообщение
error C3531: p: символ, тип которого содержит спецификатор "auto" должен иметь инициализатор
какой компилятор?
попробуй
C++
1
for (std::pair<std::string, int> p: vec_candidates)
0
 Аватар для posol_7
18 / 18 / 13
Регистрация: 19.11.2014
Сообщений: 156
09.01.2015, 19:05  [ТС]
Цитата Сообщение от cooller Посмотреть сообщение
попробуй
error C2143: синтаксическая ошибка: отсутствие "," перед ":"
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
09.01.2015, 19:09
Цитата Сообщение от posol_7 Посмотреть сообщение
error C2143: синтаксическая ошибка: отсутствие "," перед ":"
какой компилятор ?
0
 Аватар для posol_7
18 / 18 / 13
Регистрация: 19.11.2014
Сообщений: 156
09.01.2015, 19:13  [ТС]
Цитата Сообщение от cooller Посмотреть сообщение
какой компилятор ?
Версия: 10.00.30319.01
0
_
317 / 151 / 27
Регистрация: 08.10.2011
Сообщений: 432
09.01.2015, 19:17
cooller, с использованием std::map программа была бы проще.
posol_7, начиная с 23 строки вообще какой-то бред написан. тебе нужно решить через stl или по старинке в стиле си?
0
 Аватар для cooller
571 / 539 / 280
Регистрация: 25.12.2013
Сообщений: 1,456
09.01.2015, 19:18
posol_7, нужен компилятор с поддержкой с++11
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.01.2015, 19:18
Помогаю со студенческими работами здесь

Вывести максимальный рейтинг каждого кандидата (сумму )
#include &quot;stdafx.h&quot; #include &quot;stdlib.h&quot; #include &quot;time.h&quot; #include &quot;clocale&quot; #include &quot;iostream&quot; using namespace std; int...

Удалить из каждого списка два элемента после каждого элемента с нечетным значением и подсчитать количество удаленных
Вот честно не пойму как это сделать буду очень благодарен если кто-то поможет

Подсчитать количество каждого символа
В файле закодирован текст, необходимо подсчитать и вывести сколько раз встречается каждый символ(пробелы тоже) ...

Подсчитать количество ячеек каждого цвета
Рабочий лист раскрашен в 3 цвета. Внести в ячейки значения: в красные - 5, в желтые - 10, синие - 15. Подсчитать количество ячеек каждого...

Подсчитать количество каждого символа в слове
Надо подсчитать кол-во каждого символа в заданном слове. Пример: &quot;мама м=2 а=2&quot; Проблема моего решения в том, что вывод...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Опции темы

Новые блоги и статьи
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
Полностью асинхронный счётчик на логике (сумматорах) трёх состояний и асинхронных регистрах трёх состояний. Структура "электронный Buttom Up"
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
Автоматизация Amazon Web Services (AWS) с Boto3 в Python
py-thonny 25.04.2025
Облачные вычисления стали неотъемлемой частью современной ИТ-инфраструктуры, а Amazon Web Services (AWS) занимает лидирующие позиции среди провайдеров облачных услуг. Управление многочисленными. . .
Apache Kafka vs RabbitMQ в микросервисной архитектуре
ArchitectMsa 25.04.2025
Современная разработка ПО всё чаще склоняется к микросервисной архитектуре — подходу, при котором приложение разбивается на множество небольших, автономных сервисов. В этой распределённой среде. . .
Параллельное программирование с OpenMP в C++
NullReferenced 24.04.2025
Параллельное программирование — подход к созданию программ, когда одна задача разбивается на несколько подзадач, которые могут выполняться одновременно. Оно стало необходимым навыком для. . .
Цепочки методов в C# с Fluent API
UnmanagedCoder 24.04.2025
Современное программирование — это не только решение функциональных задач, но и создание кода, который удобно поддерживать, расширять и читать. Цепочки методов и Fluent-синтаксис в C# стали мощным. . .
Мульти-тенантные БД с PostgreSQL Row Security
Codd 23.04.2025
Современные облачные сервисы и бизнес-приложения всё чаще обслуживают множество клиентов в рамках единой программной инфраструктуры. Эта архитектурная модель, известная как мульти-тенантность, стала. . .
Реализация конвейеров машинного обучения с Python и Scikit-learn
AI_Generated 23.04.2025
Мир данных вокруг нас растёт с каждым днём, и умение эффективно обрабатывать информацию стало необходимым навыком. Специалисты по машинному обучению ежедневно сталкиваются с задачами предобработки. . .
Контроллеры Kubernetes Ingress: Сравнительный анализ
Mr. Docker 23.04.2025
В Kubernetes управление входящим трафиком представляет собой одну из ключевых задач при построении масштабируемых и отказоустойчивых приложений. Ingress — это API-объект, который служит вратами. . .
Оптимизация кода Python с Cython и Numba
py-thonny 23.04.2025
Python прочно обосновался в топе языков программирования благодаря своей простоте и гибкости. Разработчики любят его за читабельность кода и богатую экосистему библиотек. Но у этой медали есть и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru