Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kid0
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 8
#1

не корректная работа меню или всей программы - C++

30.05.2013, 21:57. Просмотров 279. Ответов 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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <iostream>
#include <conio.h>
#include <cstdlib>
using namespace std;
// функция определения символа
void prog()
{
     string fileName, currWord, currMax = "";
 cout<<"\nВедите имя файла ";
    cin>>fileName;
    freopen(fileName.c_str(), "r", stdin);
    while (cin>>currWord)
    {
        if (2 <= currWord.length() && 'E' == currWord[1]&& currWord.length() >= currMax.length())
            currMax = currWord; 
    }
    if (currMax.length()){
            cout<<"Результат:\n"<<currMax;}
    else{
            cout<<"Слов с таким условием не найдено";}
            getch();
         fileName = ' ';
        return ;
   }
            
 
//функция вывода кода
 void listing()
 {
    cout<< "string fileName, currWord, currMax = "";";
    cout<<  "cout<<""n""Ведите имя файла;"<<endl;
    cout<<     "cin>>fileName;"<<endl;
    cout<<     "freopen(fileName.c_str(), ""r"", stdin);"<<endl;
    cout<<     "while (cin>>currWord)"<<endl;
    cout<<     "{"<<endl;
    cout<<            "if (2 <= currWord.length() && 'E' == currWord[1]&& currWord.length() >= currMax.length())"<<endl;
    cout<<                " currMax = currWord;"<<endl; 
    cout<<     "}"<<endl;
    cout<<     "if (currMax.length())"<<endl;
    cout<<        "cout<<""Результат""n""<<currMax;"<<endl;
    cout<<     "else"<<endl ;
    cout<<         "cout<<Слов с таким условием не найдено"<<endl;
    cout<<     "getch();";
 }
 //функция меню
 void menu()
 {
 int c = 0;
    while (true)
 {
     cout<<endl;
     cout<< "1 - программа"<<endl;
     cout<< "2 - листинг"<<endl;
     cout<< "3 - выход"<<endl;
     cin >> c;
     switch(c){
            case 1: prog();
            break;
            case 2: listing();
            break;  
          default: return ;
}
}
}
//головная функция
int main()
{ 
setlocale(LC_ALL, "Russian");
menu();  
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.05.2013, 21:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос не корректная работа меню или всей программы (C++):

Корректная работа программы с русскими буквами - C++
Здравствуйте. Мне нужно было написать программу, которая ставит кратчайшее слово в конец и из строки убирает все цифры. В принципе,...

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

Простые числа, не корректная работа - C++
Здравствуйте! Помогите пожалуйста найти ошибку. #include&lt;iostream&gt; using namespace std; void main() { for (int i = 2; i &lt; 100;...

Не корректная работа функции memmove - C++
Мой код хоть и написан с помощью winapi, но все же вопрос связан не с этим. При первом вызове моей функции DeleteShip, все работает...

Не корректная работа visual studio 2012 Express - C++
Приветствую. Вот такой код: #include &lt;iostream&gt; #include &lt;clocale&gt; using namespace std; int main() { setlocale(0,&quot;&quot;); int...

Не корректная работа цикла при вызове функции добавления пользователя - C++
Всем Доброго времени суток. Такая проблема у меня есть класс в который мы вводим имя пользователя и деньги,в классе BlackJack ,я поставил...

2
alsav22
5428 / 4823 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
30.05.2013, 22:27 #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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <string>
#include <fstream>
using namespace std;
 
// функция определения символа
void prog()
{
    string fileName, currWord, currMax = "";
    cout << "\nВедите имя файла ";
    (cin >> fileName).get();
    ifstream fin(fileName.c_str());
    if (!fin.is_open())
    {
         cout << "Ошибка открытия файла!" << endl; 
         return;
    }
 
    while (fin >> currWord)
    {
        if (2 <= currWord.length() && 'E' == currWord[1] && currWord.length() >= currMax.length())
            currMax = currWord; 
    }
    fin.close();
    if (currMax.length()) cout<<"Результат:\n"<<currMax;
    else cout<<"Слов с таким условием не найдено";
            
    cin.get();
    
    return;
}
            
 
//функция вывода кода
 void listing()
 {
    cout<< "string fileName, currWord, currMax = "";";
    cout<<  "cout<<""n""Ведите имя файла;"<<endl;
    cout<<     "cin>>fileName;"<<endl;
    cout<<     "freopen(fileName.c_str(), ""r"", stdin);"<<endl;
    cout<<     "while (cin>>currWord)"<<endl;
    cout<<     "{"<<endl;
    cout<<            "if (2 <= currWord.length() && 'E' == currWord[1]&& currWord.length() >= currMax.length())"<<endl;
    cout<<                " currMax = currWord;"<<endl; 
    cout<<     "}"<<endl;
    cout<<     "if (currMax.length())"<<endl;
    cout<<        "cout<<""Результат""n""<<currMax;"<<endl;
    cout<<     "else"<<endl ;
    cout<<         "cout<<Слов с таким условием не найдено"<<endl;
    cout<<     "getch();";
 }
 
 //функция меню
 void menu()
 {
     int c = 0;
     while (true)
     {
         cout<<endl;
         cout<< "1 - программа"<<endl;
         cout<< "2 - листинг"<<endl;
         cout<< "3 - выход"<<endl;
         cin >> c;
         switch(c)
         {
                case 1: prog();
                break;
                
                case 2: listing();
                break;  
              
                default: return;
        }
    }
}
 
//головная функция
int main()
{ 
    setlocale(LC_ALL, "Russian");
    menu();
    
    system("pause");
    return 0;  
}
1
kid0
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 8
31.05.2013, 02:00  [ТС] #3
Спасибо=)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2013, 02:00
Привет! Вот еще темы с ответами:

Компоновка всей программы в один файл - C++
Можно ли сделать так, чтоб при построение программы она, включая все внешние картинки, звуковые файлы, редистрюбитивы VC и пр компоновались...

Повторение всей программы заного через да\нет - C++
Хочу сделать повтор программы через да\нет. Но в итоге выдает бесконечный вопрос об повторе. немного сократил сам код (убрал пару...

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

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


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

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

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