0 / 0 / 0
Регистрация: 17.11.2012
Сообщений: 6
1

Подсчет символов в строке, как работает? ( С++ )

26.11.2012, 00:41. Показов 660. Ответов 3
Метки нет (Все метки)

Доброго времени суток! Помогите начинающему:
Есть код который читает символы -
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
#include <iostream>
 
int main ()
{
 
int spase=0;
int total=0;
char ch;
 
std::cin.get(ch);
while (ch != '.')
{
    if(ch == ' ')
        ++spase;
            ++total;
        std::cin.get(ch);   //почему без этой строки не работает??
}
std::cout<<spase<<"spases, "<<total;
std::cout<<" - total chars\n";
 
 
 
    system("pause");
    return 0;
}
Вопрос:
1) Как сделать так что-бы символ перевода строки не учитывался?
2) Каким образом переменная "total" знает что нужно подсчитывать символы?
3) Мне целых 27 лет, не поздновато ли начинать всем этим заниматься? (Хочу жутко сменить свою работу...)

Заранее благодарен...
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.11.2012, 00:41
Ответы с готовыми решениями:

Подсчёт слов в строке. Подсчёт символов в словах строки
Начал изучение строк в С++. Решая задачу по поиску количества строк и количеству указанных символов...

Подсчет числа символов указанного типа в любой строке символов на SHELL
Здравствуйте)) :) Помогите, пожалуйста , разработать программу подсчета числа символов указанного...

Подсчет цифр, символов-разделителей и прочих символов в строке
#include &lt;stdio.h&gt; #include &lt;locale.h&gt; /* подсчет цифр, символов-разделителей и прочих...

Подсчет символов в строке
по К и Р надкнулся на такой код double nc; for(nc=0; getchar()!=EOF; ++nc); я решил как то...

3
go
Эксперт С++
3645 / 1377 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
26.11.2012, 00:58 2
Цитата Сообщение от sanek7 Посмотреть сообщение
1) Как сделать так что-бы символ перевода строки не учитывался?
C++
1
2
if (ch == '\n')
    continue;
Добавлено через 54 секунды
Цитата Сообщение от sanek7 Посмотреть сообщение
2) Каким образом переменная "total" знает что нужно подсчитывать символы?
На каждой итерации цикла она наращивается.

Добавлено через 36 секунд
Цитата Сообщение от sanek7 Посмотреть сообщение
std::cin.get(ch); * //почему без этой строки не работает??
Говоря простыми словами, именно здесь происходит чтение из буфера клавиатуры.
1
Эксперт С++
2374 / 1658 / 279
Регистрация: 29.05.2011
Сообщений: 3,387
26.11.2012, 01:02 3
Цитата Сообщение от sanek7 Посмотреть сообщение
почему без этой строки не работает??
Потому что именно эта строка считывает каждый последующий символ.
Цитата Сообщение от go Посмотреть сообщение
C++
1
2
if (ch == '\n')
    continue;
только надо не забыть считать-таки тот самый следующий символ, а то бесконечный цикл получится.
Впрочем, считывание символа правильнее перенести в условие, с проверкой на конец файла.
1
0 / 0 / 0
Регистрация: 17.11.2012
Сообщений: 6
26.11.2012, 01:23  [ТС] 4
Ок, всем спасибо.. вроде все понятно!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.11.2012, 01:23
Помогаю со студенческими работами здесь

Подсчёт символов в строке C#
Подсчитывается относительная частота встречаемости каждого символа в тексте. К примеру в textBox1...

Подсчет символов в строке
помогит дана строка в ней нужно подсчитать сколько раз символы которые в ней присувствуют...

Подсчет символов в строке
Здравствуйте, написал простенькую программку, которая подсчитывает повторение всех символов в...

Подсчет символов в строке
Помогите, пожалуйста, написать программу на языке C++, которая будет подсчитывать количество...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru