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

подсчет повторений - C++

Восстановить пароль Регистрация
 
danitis
0 / 0 / 0
Регистрация: 14.05.2011
Сообщений: 8
14.05.2011, 19:49     подсчет повторений #1
Нужно написать консольную программу которая бы подсчитывала повторение номеров в текстовым файле от 0 до 9.
Получилось подсчитать повторения отдельных цифр с помощью fgetc, но никак не всех. smile

Пример: имеется текстовый файл с случайными номерами от 0 до 9
5
1
3
2
2
1
4
4

Т.е. новый ряд - новый номер, при том что номера могут быть бесконечными.
Программа должна вывести на экран список повторений из файла следующим образом:
Номер 2 повторяется x раз
Номер 1 повторяется y раз

и так далее.

Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2011, 19:49     подсчет повторений
Посмотрите здесь:

Рандом без повторений C++
C++ Операторы повторений for
1)Оператор повторений while, 2)Оператор повторений do-while C++
C++ Операторы повторений
C++ Операторы повторений - 2 задания
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ЛеЖиК)
 Аватар для ЛеЖиК)
157 / 60 / 1
Регистрация: 29.04.2011
Сообщений: 630
14.05.2011, 19:55     подсчет повторений #2
Цитата Сообщение от danitis Посмотреть сообщение
Пример: имеется текстовый файл с случайными номерами от 0 до 9
5
1
3
2
2
1
4
4
Т.е. новый ряд - новый номер, при том что номера могут быть бесконечными.
Программа должна вывести на экран список повторений из файла следующим образом:
Номер 2 повторяется x раз
Номер 1 повторяется y раз
и так далее.
это реализовать легко(если попросошь сделаю)
но я ме понял что ты имел в виду этими словами:


Цитата Сообщение от danitis Посмотреть сообщение
Получилось подсчитать повторения отдельных цифр с помощью fgetc, но никак не всех.
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
14.05.2011, 20:06     подсчет повторений #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <map>
#include <conio.h>
int main(){
    freopen("файл.txt","r",stdin);
    int a;
    std::map<int,int> m;
    while (std::cin >> a)
        m[a]++;
    for (std::map<int,int>::iterator i=m.begin(); i!=m.end(); i++)
        std::cout << "Number " << (*i).first << " was found " << (*i).second << " times\n" ;
    getch();
    return 0;
}
Извиняюсь за кривой инглишь
ЛеЖиК)
 Аватар для ЛеЖиК)
157 / 60 / 1
Регистрация: 29.04.2011
Сообщений: 630
14.05.2011, 20:10     подсчет повторений #4
diagon, так вроде надо fgets
diagon
Higher
 Аватар для diagon
1920 / 1186 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
14.05.2011, 20:11     подсчет повторений #5
Насколько я понял из поста ТСа, он попытался сделать это с помощью fgets, но у не вышло...
Для таких целей map самая удобная штука
ЛеЖиК)
 Аватар для ЛеЖиК)
157 / 60 / 1
Регистрация: 29.04.2011
Сообщений: 630
14.05.2011, 20:13     подсчет повторений #6
diagon, полностью согдасен)

жалко, когда я пишщу код всегда забываю про stl
и еще у мя проблема-не как не могу найти на русском справочник по stl с прототипами всех функций и че в каком хеадере находится(
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
14.05.2011, 20:17     подсчет повторений #7
ЛеЖиК), Тут немножко есть.

Добавлено через 34 секунды
Еще.
danitis
0 / 0 / 0
Регистрация: 14.05.2011
Сообщений: 8
14.05.2011, 20:48  [ТС]     подсчет повторений #8
извините забыл сказать, мне нужно для С а не С++
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2011, 17:21     подсчет повторений
Еще ссылки по теме:

Перестановки без повторений C++
C++ Подсчет количества повторений в виде функций
Счетчик повторений C++

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

Или воспользуйтесь поиском по форуму:
ЛеЖиК)
 Аватар для ЛеЖиК)
157 / 60 / 1
Регистрация: 29.04.2011
Сообщений: 630
15.05.2011, 17:21     подсчет повторений #9
asics, гигантское спасибо, то что нужно
Yandex
Объявления
15.05.2011, 17:21     подсчет повторений
Ответ Создать тему
Опции темы

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