Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
underwaterspace
2 / 2 / 1
Регистрация: 29.01.2013
Сообщений: 47
1

for,while,do while (программа должна сообщить кол-во введенных слов)

31.01.2013, 16:03. Просмотров 365. Ответов 7
Метки нет (Все метки)

"Напишите программу,использующую массив char и цикл для чтения по одному слову за раз до тех пор,пока не будет введено слово done.Затем программа должна сообщить кол-во введенных слов(исключая done).Вы должны включить заголовочный файл cstring и использовать функцию strcmp() для выполнения проверки."
C++ (Qt)
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 <conio.h>
#include <cstring>
#include <locale>
using namespace std;
int main()
{
    setlocale(LC_CTYPE,"russian");
    char word[20];
    int s=0;
    cout<<"Вводите слова (для завершения введите слово done): ";
    do
    {
        cin>>word;
        cin.get();
        s++;
    }
    while(strcmp(word,"done"));
    cout<<"Вы ввели "<<s<<" слов.";
    getch();
    return 0;
}
Можете подсказать, как сделать так, чтобы done не считалось (не используя s-- или if)?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.01.2013, 16:03
Ответы с готовыми решениями:

Программа которая сообщает количество введенных слов
Программа которая использует объекта string и цикл для чтения по одному слову...

Найти повторяющиеся строки (от 2-х и больше) и сообщить их кол-во
Друзья, помогите мне пожалуйста закончить программу. 1) От программы нужно...

Пользователь вводит 10 чисел программа должна выдать 2 максимальных(берём от 1 до 10,если выпадает 2 10,то программа должна выдать 2 10,а не 10,9)
#include &lt;iostream&gt; using namespace std; int main () { int number,...

Дан файл, содержащий текст на русском языке. Подсчитать кол-во слов, в которых кол-во гласных и согласных совпадает
Дан файл, содержащий текст на русском языке. Подсчитать кол-во слов, в которых...

Подсчитать сколько слов HELLO среди введенных слов в строке
Пользователь вводит строки, пока не введёт слово &quot;exit&quot;. Программа...

7
The_bolT
71 / 71 / 12
Регистрация: 22.01.2013
Сообщений: 231
31.01.2013, 16:08 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <conio.h>
#include <cstring>
#include <locale>
using namespace std;
int main()
{
    setlocale(LC_CTYPE,"russian");
    char word[20];
    int s=0;
    cout<<"Вводите слова (для завершения введите слово done): ";
     cin>>word;
    while(strcmp(word,"done"))
    {
        cin>>word;
        cin.get();
        s++;
    }
    
    cout<<"Вы ввели "<<s<<" слов.";
    getch();
    return 0;
}
1
avg93
61 / 61 / 12
Регистрация: 11.12.2009
Сообщений: 248
Завершенные тесты: 3
31.01.2013, 16:09 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <conio.h>
#include <cstring>
#include <locale>
using namespace std;
int main()
{
    setlocale(LC_CTYPE,"russian");
    char word[20];
    int s=0;
    cout<<"Вводите слова (для завершения введите слово done): ";
    while(cin>>word)
    {
        cin.get();
        if (!strcmp(word,"done")) break;
        s++;
    }
    cout<<"Вы ввели "<<s<<" слов.";
    getch();
    return 0;
}
0
underwaterspace
2 / 2 / 1
Регистрация: 29.01.2013
Сообщений: 47
31.01.2013, 16:15  [ТС] 4
есть еще какие-нибудь способы?
0
The_bolT
71 / 71 / 12
Регистрация: 22.01.2013
Сообщений: 231
31.01.2013, 16:39 5
Можно просто отнять единицу в конце
C++
1
 cout<<"Вы ввели "<<(s-1)<<" слов.";
0
underwaterspace
2 / 2 / 1
Регистрация: 29.01.2013
Сообщений: 47
31.01.2013, 16:46  [ТС] 6
"Можете подсказать, как сделать так, чтобы done не считалось (не используя s-- или if)"//
0
The_bolT
71 / 71 / 12
Регистрация: 22.01.2013
Сообщений: 231
31.01.2013, 18:05 7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <conio.h>
#include <string>
#include <locale>
using namespace std;
int main()
{
    setlocale(LC_CTYPE,"russian");
    char word[20];
    int s=0;
    string a="done";
    cout<<"Вводите слова (для завершения введите слово done): ";
    bool b=true;
    while(b)
    {
        cin>>word;
        cin.get();
        (word!=a) ? s++ : b=false ;
    }
   cout<<"Вы ввели "<<s<<" слов.";
    getch();
    return 0;
}
1
underwaterspace
2 / 2 / 1
Регистрация: 29.01.2013
Сообщений: 47
31.01.2013, 18:46  [ТС] 8
The_bolT, хоть в этом примере и присутствует условная операция, но все равно спасибо
0
31.01.2013, 18:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.01.2013, 18:46

Дана последовательность слов. Найти кол-во слов начинающихся с d и кончающихся буквой w
Кто может, помогите, пожалуйста. Использование указателей при работе со...

Строка, введенная пользователем, состоит из слов, разделенных запятой. Подсчитать и вывести на экран количество введенных слов
Задание: Строка, введенная пользователем, состоит из слов, разделенных запятой....

Пользователь вводит с клавиатуры строку символов. Сообщить, сколько слов в строке
Помогите пожалуйста. Надо написать программу: Пользователь вводит с клавиатуры...


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

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

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