Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
 Аватар для Oleg_cpp
0 / 0 / 0
Регистрация: 05.04.2019
Сообщений: 33

Строка: Посчитать, сколько раз в тексте встречается каждая буква, а также цифры...

06.04.2019, 22:26. Показов 3556. Ответов 6

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста сделать задание.Нужно посчитать,сколько раз в тексте встречается каждая буква,а так же цифры,используя стандартные строковые функции(типа strtok_s,atoi и т.п.)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.04.2019, 22:26
Ответы с готовыми решениями:

Посчитать сколько раз встречается каждая буква в тексте
Здравствуйте! А задача звучит так: есть массив с буквами, и нужно отсортировать таким образом, чтобы в начале массива расположились буквы,...

Записать в файл сколько раз в тексте встречается каждая буква
Всем привет, есть наработка но выдаёт ошибку, может кто-то помочь Задание: записать в отдельный файл в виде таблицы сколько раз в тексте...

Посчитать, сколько раз встречается каждая буква в двух текстах
мне нужно посчитать сколько раз встречается каждая буква в двух текстах. но почему-то в первом он считает правильно, а во втором тоже...

6
 Аватар для Krokodil9798
330 / 145 / 56
Регистрация: 17.10.2015
Сообщений: 580
06.04.2019, 23:42
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
#include <iostream>
#include <string>
#include <map>
#include <cctype>
 
int main()
{
    //Строка
    std::string str;
 
    //Читаем строку
    std::getline(std::cin, str);
 
    //Словарь для подсчёт количеств букв и цифр
    std::map<char, int> counter;
 
    //Считаем
    for (auto i = str.begin(); i != str.end(); ++i)
        ++counter[*i];
 
    //Проходим по словарю и выводим результат
    for (auto i = counter.begin(); i != counter.end(); ++i)
    {
        if (std::isalpha(i->first))
            std::cout << i->first << " - letter, count: " << i->second << std::endl;
        else if (std::isdigit(i->first))
            std::cout << i->first << " - number, count: " << i->second << std::endl;
    }
 
    //Ожидаем пользовательское соглашение на закрытие консоли
    system("pause");
}
Добавлено через 43 минуты
Для новичков - аналогичная версия, но без std::map и std::string:
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
#include <iostream>
#include <cctype>
 
int main()
{
    //Массив для подсчёт количеств букв и цифр
    const int size = 256;
    int counter[size];
    for (int i = 0; i < size; ++i)
        counter[i] = 0;
 
    //Считываем символы и считаем их
    char ch = '\n';
    for (std::cin >> ch; ; std::cin >> ch)
    {
        ++counter[static_cast<int>(ch)];
        
        //Проверяем на конец ввода
        ch = std::cin.get();
 
        //Если это не символ переноса на следующую строку - добавляем символ обратно и продолжаем считку
        if (ch != '\n')
            std::cin.putback(ch);
        else
            break;
    }
 
    //Проходим по массиву и выводим результат
    for (int i = 0; i < size; ++i)
    {
        if (counter[i])
        {
            unsigned char symbol = static_cast<unsigned char>(i);
            if (std::isalpha(symbol))
                std::cout << symbol << " - letter, count: " << counter[i] << std::endl;
            else if (std::isdigit(symbol))
                std::cout << symbol << " - number, count: " << counter[i] << std::endl;
        }
    }
 
    //Ожидаем пользовательское соглашение на закрытие консоли
    system("pause");
}
1
 Аватар для Oleg_cpp
0 / 0 / 0
Регистрация: 05.04.2019
Сообщений: 33
07.04.2019, 08:55  [ТС]
Спасибо Вам большое за потраченное время,но к сожалению мы еще даже cctype не изучали(
0
 Аватар для Krokodil9798
330 / 145 / 56
Регистрация: 17.10.2015
Сообщений: 580
07.04.2019, 11:54
Цитата Сообщение от Oleg_cpp Посмотреть сообщение
Спасибо Вам большое за потраченное время,но к сожалению мы еще даже cctype не изучали(
Без проблем:
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
#include <iostream>
 
int main()
{
    //Массив для подсчёт количеств букв и цифр
    const int size = 256;
    int counter[size];
    for (int i = 0; i < size; ++i)
        counter[i] = 0;
 
    //Считываем символы и считаем их
    char ch = '\n';
    for (std::cin >> ch; ; std::cin >> ch)
    {
        ++counter[(int)ch];
 
        //Проверяем на конец ввода
        ch = std::cin.get();
 
        //Если это не символ переноса на следующую строку - 
        //добавляем символ обратно и продолжаем считку
        if (ch != '\n')
            std::cin.putback(ch);
        else
            break;
    }
 
    //Проходим по массиву и выводим результат
    for (int i = 0; i < size; ++i)
        if (counter[i])
            std::cout << (unsigned char)i << " - symbol, count: " << counter[i] << 
                std::endl;
 
 
    //Ожидаем пользовательское соглашение на закрытие консоли
    system("pause");
}
1
 Аватар для Oleg_cpp
0 / 0 / 0
Регистрация: 05.04.2019
Сообщений: 33
08.04.2019, 10:13  [ТС]
Спасибо,а можно это сделать с большим использованием строковых функций(просто задание в этом и состоит)
0
 Аватар для Krokodil9798
330 / 145 / 56
Регистрация: 17.10.2015
Сообщений: 580
08.04.2019, 12:36
Oleg_cpp, какие именно строковые функции нужно использовать?
Цитата Сообщение от Oleg_cpp Посмотреть сообщение
(типа strtok_s,atoi и т.п.)
Все функции, которые Вы знаете, перечислять не нужно. Напишите те, которые касаются только задания.
0
 Аватар для Oleg_cpp
0 / 0 / 0
Регистрация: 05.04.2019
Сообщений: 33
08.04.2019, 13:02  [ТС]
Даже не знаю)Ну например поиск элемента(strchar или strpbrk,strtok_s,можно strcspn),а потом уж посчитать количество встреченных букв и цифр.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.04.2019, 13:02
Помогаю со студенческими работами здесь

Посчитать сколько раз встречается каждая буква(русский ввод)
В общем написал исходник , работает не правильно. Подскажите где ошибка. #include &lt;iostream.h&gt; #include &lt;string.h&gt; ...

Сколько раз каждая буква встречается в тексте
Как сделать так, чтобы мне выводило сколько раз каждая буква встречалась в тексте? И еще, как можно изменить код, чтобы строчная и...

Подсчитать, сколько раз в тексте встречается каждая буква
Уважаемые программисты помогите! Задача такая надо ввести текст, например: &quot;INTERNET FORUM&quot; программа должна подсчитать...

Определить, сколько раз в тексте встречается каждая буква
написать программу которая запрашивает строчку и показывает сколько раз в тексте встречается каждая буква алфа Срочно пожалуйса!!!

Сколько раз в тексте встречается каждая буква латиницы
ввести текст в файл и определить сколько раз в тексте встречается каждая буква латиницы! вот моя прога только немогу сделать так чтобы он...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru