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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
MerT
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 6
#1

Посчитать частоту появления букв в строке - C++

26.01.2010, 01:15. Просмотров 639. Ответов 3

Нужна помощь вот в такой задачке, со строками вообще мыслей ни каких нету((

Посчитать частоту появления букв в строке, если считать равными буквы в верхнем и нижнем регистрах.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.01.2010, 01:15     Посчитать частоту появления букв в строке
Посмотрите здесь:
C++ Найти частоту появления букв в строке
C++ Найти частоту появления согласных букв в строке
Строка: посчитать частоту появления каждого символа C++
Найти частоту букв и частоту слов в предложении C++
Посчитать количество букв в строке C++
Посчитать количество букв 'а' в строке C++
C++ Посчитать количество букв в строке
Посчитать количество букв 'а' в строке. C++
C++ Определить частоту появления в тексте каждого слова
Посчитать, сколько гласных букв в строке C++
C++ Посчитать количество цифр и букв в строке

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Rififi
2338 / 1053 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
26.01.2010, 01:33     Посчитать частоту появления букв в строке #2
делаешь примерно так (полный код писать не буду - лень):

массив частот букв
size_t freq[256] = {0};

счетчик всех букв
size_t counter = 0;

делаешь цикл по всем буквам в строке. как- неважно. хоть через ( | ), но цикл должен быть
for (size_t i=...)

в цикле проверяешь символ на букву, и есть оно так, увеличиваешь соответствующий счетчик
if (isalpha(str[i])) { ++freq[_toupper(str[i])]; counter++; }

дальше частота появления например буквы A: 100.0 * freq['A'] / counter
MerT
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 6
26.01.2010, 02:43  [ТС]     Посчитать частоту появления букв в строке #3
Немного помогло) Но нужно частоту появления определённой буквы.. тоесть допустим сколько раз в строке встречается буква А
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
26.01.2010, 02:54     Посчитать частоту появления букв в строке #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <string>
#include <map>
#include <ctype.h>
 
int main()
{
    std::string s;
    std::cout << "Enter string: ";
    getline(std::cin, s);
 
    char c;
    std::cout << "Enter char: ";
    std::cin >> c;
 
    std::map<char, size_t> hyst;
    size_t i, len = s.length();
    for(i = 0; i < len; i++)
        hyst[toupper(s[i])]++;
    std::cout << c << ": " << hyst[toupper(c)] << " times\n";
    return 0;
}
Yandex
Объявления
26.01.2010, 02:54     Посчитать частоту появления букв в строке
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru