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

не получается подсчитать символы - C++

Восстановить пароль Регистрация
 
Виталий123
-96 / 5 / 2
Регистрация: 29.11.2011
Сообщений: 84
08.12.2012, 19:17     не получается подсчитать символы #1
привет всем ! такой вопрос почему не получается подсчитать русские буквы нижнего регистра ? вместо 16 показывает 3 ..
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int _tmain(int argc, _TCHAR* argv[])
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    unsigned char str[] = "Город Тула основан в 1946 г. I was burn in Tula in 1991.";
    int count_lower(0);
    cout<<"Во введенной строке: "<<endl;
    for(int i = 0, j = 224; str[i], j <= 255; i++, j++) 
        if(static_cast<int>(str[i]) == j) ++count_lower; 
    cout<<endl; 
    cout<<"малых русских букв - "<<count_lower;
    cout<<endl; 
    system("pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2012, 19:17     не получается подсчитать символы
Посмотрите здесь:

C++ подсчитать, как часто (в %) встречаются в тексте различные символы (всего 256, текст прочитать из файла)
C++ Не получается чтобы он все символы с текста читал и типа счетчика который считает одинаковые символы как один и плюсует их....Как сделать правильно???
Даны натур число n,символы s1. Подсчитать:а) сколько раз среди данных символов встречается символ + C++
Не получается подсчитать количество символов в строке C++
C++ не могу понять задачку. Даны натуральное число n и символы s1, s2,., sn. Получить символы, принадлежащие последовательности s1, s2,., sn, которые
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Joke+R
 Аватар для Joke+R
41 / 41 / 3
Регистрация: 18.11.2011
Сообщений: 112
08.12.2012, 19:27     не получается подсчитать символы #2
Цитата Сообщение от Виталий123 Посмотреть сообщение
for(int i = 0, j = 224; str[i], j <= 255; i++, j++)
if(static_cast<int>(str[i]) == j) ++count_lower;
C++
1
2
3
for(int i = 0; str[i]; i++) 
     for(int j = 224; j <= 255; j++) 
          if(static_cast<int>(str[i]) == j) ++count_lower;
Виталий123
-96 / 5 / 2
Регистрация: 29.11.2011
Сообщений: 84
08.12.2012, 19:34  [ТС]     не получается подсчитать символы #3
Joke+R, а можешь объяснить в чем моя ошибка была ?
Joke+R
 Аватар для Joke+R
41 / 41 / 3
Регистрация: 18.11.2011
Сообщений: 112
08.12.2012, 22:37     не получается подсчитать символы #4
Виталий123, Вы в одном циклу изменяли и просматриваемую букву и код ascii символа. И после каждого перехода к следующей букве просмотр совпадающих символов начинался не с 224 а с того кода, с которым совпала предыдущая буква...
При разбиении его на два цикла каждая буква сравнивается со всеми буквами ascii от 224 до 255...
Yandex
Объявления
08.12.2012, 22:37     не получается подсчитать символы
Ответ Создать тему
Опции темы

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