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

Повторно выводит надпись - C++

Восстановить пароль Регистрация
 
Mdmaa
0 / 0 / 0
Регистрация: 28.04.2014
Сообщений: 87
08.04.2016, 21:35     Повторно выводит надпись #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
#include <iostream>
#include <string>
using namespace std;
 
int main ()
{ 
N:
    char a[100];
    int z;
    cout<<"Введите текст"<<"\n";
gets(a);
char b[]=" .,:;!?-";
for(char*v=strtok(a,b);v!=NULL;v=strtok(NULL,b)) {if (v!=NULL) {
if (strlen(v)>8) cout<<v;
}}
cout<<"\n";
 
cout<<"\n"<<"Хотите ли вы узнать еще что-нибудь?";
cout<<"\n"<<"1 - Выход";
cout<<"\n"<<"2 - Вернуться в начало"<<"\n";
cin>>z;
   if (z==2)goto N;
 
system("pause");              
return 0; 
 
}
При запросе "Хотите ли узнать еще что-нибудь" после выбора варианта высвечивается повторно. Не знаю, как исправить
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nd2
1033 / 772 / 260
Регистрация: 29.01.2016
Сообщений: 2,413
08.04.2016, 21:42     Повторно выводит надпись #2
Цитата Сообщение от Mdmaa Посмотреть сообщение
Не знаю, как исправить
C++
1
(cin>>z).get();
Stitch Igorek
 Аватар для Stitch Igorek
44 / 44 / 17
Регистрация: 02.04.2016
Сообщений: 300
Завершенные тесты: 1
09.04.2016, 01:23     Повторно выводит надпись #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
26
27
28
29
30
31
32
33
34
35
36
#include <iostream>
#include <string>
 
using namespace std;
 
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    while (true)
    {
        char a[100];
        int z;
        cout << "Введите текст" << "\n";
        gets(a);
        char b[] = " .,:;!?-";
        for (char*v = strtok(a, b); v != NULL; v = strtok(NULL, b)) {
            if (v != NULL) {
                if (strlen(v) > 8) cout << v;
            }
        }
        cout << "\n";
 
        cout << "\n" << "Хотите ли вы узнать еще что-нибудь?";
        cout << "\n" << "1 - Выход";
        cout << "\n" << "2 - Вернуться в начало" << "\n";
        if (cin >> z && z == 1)
            break;
    }
 
    system("pause");
    return 0;
 
}
можно так (заодно убрал всеми ненавистный goto)
nd2
1033 / 772 / 260
Регистрация: 29.01.2016
Сообщений: 2,413
09.04.2016, 01:31     Повторно выводит надпись #4
Цитата Сообщение от Stitch Igorek Посмотреть сообщение
можно так
Можно и так, но будет то же самое, что и у ТС:
Цитата Сообщение от Mdmaa Посмотреть сообщение
При запросе "Хотите ли узнать еще что-нибудь" после выбора варианта высвечивается повторно.
Yandex
Объявления
09.04.2016, 01:31     Повторно выводит надпись
Ответ Создать тему
Опции темы

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