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

Нужно прокомментировать программу - C++

Восстановить пароль Регистрация
 
Batarchuk
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
01.04.2011, 02:23     Нужно прокомментировать программу #1
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
#include <iostream>
#include <sstream>
using namespace std;
 
int main()
{      
 while(int a =1)
       {
        setlocale(LC_ALL,"Rus");
        char sentence[256];
        string word;
        int i;
 
        cout<<"Ââåäèòå ГІГҐГЄГ±ГІ:\n";
        cin.getline(sentence,256);
        string row(sentence);
 
        for(i=0;i<row.length();i++)
                if(row[i]=='.' || row[i]==',' || row[i]=='?' || row[i]=='!')//"èñêëþ÷åГ*ГЁГї" - çäåñü
                        row[i]=' ';
        i=0;
        istringstream ist(row);
        while(ist>>word)
                i++;
 
        cout<<" Ñëîâ Г*Г*éäåГ*Г® : "<<i<< endl<<endl;
        }
        cin.get();
        return 0;
}
Поможете?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.04.2011, 02:23     Нужно прокомментировать программу
Посмотрите здесь:

C++ Нужно программу на Паскале переделать в программу на С++
Прокомментировать программу C++
C++ Прокомментировать программу
Нужно дописать программу C++
C++ Нужно написать программу в с++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IrineK
Заблокирован
01.04.2011, 02:45     Нужно прокомментировать программу #2
1) Зачем вы влепили этот пёрл:
C++
1
while(int a =1)
да еще и в таком интересном месте?
Так лучше:

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
#include <iostream>
#include <sstream>
using namespace std;
 
int main()
{      
        setlocale(LC_ALL,"Rus");
        char sentence[256];
        string word;
        int i;
 
while(1)
       {
        cout<<"Введите текст:\n";
        cin.getline(sentence,256);
        string row(sentence);
 
        for(i=0;i<row.length();i++)
                if(row[i]=='.' || row[i]==',' || row[i]=='?' || row[i]=='!')//"исключения" - здесь
                        row[i]=' ';
        i=0;
        istringstream ist(row);
        while(ist>>word)
                i++;
 
        cout<<" Слов найдено : "<<i<< endl<<endl;
        }
        cin.get();
        return 0;
}
2) Зачем комментировать? Что неясно?
Batarchuk
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
01.04.2011, 10:11  [ТС]     Нужно прокомментировать программу #3
istringstream ist(row);
while(ist>>word)
i++;

Вот эту часть не пойму(
IrineK
Заблокирован
01.04.2011, 10:59     Нужно прокомментировать программу #4
istringstream ist(row); // запускаем в поток строку row
while(ist>>word) // из потока считываем отдельные слова (наборы символов, разделенные пробелами)
i++; // как только слово считано - добавляем 1 в счетчик

Так все слова и посчитаем
Batarchuk
0 / 0 / 0
Регистрация: 27.03.2011
Сообщений: 28
01.04.2011, 11:01  [ТС]     Нужно прокомментировать программу #5
А есть в istringstream что-то ещё кроме word?

как я понимаю word это не константа, а тип объекта из row. Так?
Yandex
Объявления
01.04.2011, 11:01     Нужно прокомментировать программу
Ответ Создать тему
Опции темы

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