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

Ошибка в коде.. - C++

Восстановить пароль Регистрация
 
Ferk
 Аватар для Ferk
3 / 3 / 1
Регистрация: 28.07.2011
Сообщений: 105
27.11.2011, 10:49     Ошибка в коде.. #1
Здравствуй народ)) помогите плиз) у меня код выполняеться не так как я бы хлтел)
дело в том что в конце выполнения вычеслений программа запрашивает : вернуться ли в главное меню(y/n)
жмем y она повторяеться)
жмем n она тоже повторяеться)

помогите найти ошибку плиззз..Заранее благодарен!)

вот он код
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
#include <iostream>
using namespace std;
int main()
{
    int a,y,x,k=0,i;
    double c=0;
    char s[1];
    bool done=true;
 while(done!=false)
    {
   done=true;
             k=0;  
    cout<<"Выбор меню:"<<endl;
    cout<<"1.Возвидение числа y в степень x."<<endl;
    cout<<"2.Квадратное уровнение вида (ax^2+bx+c=0)."<<endl;
    cout<<"3.Арефметические операции (* / + -)."<<endl;
    cout<<"4.Корень из чесла"<<endl;
    cout<<"Введи номер меню:  ";
    cin>>a;
    cout<<a<<endl;
    
    if(a==1)
    {
            system("cls");
            cout<<"Введи число y: ";
            cin>>y;
            cout<<"Введи степень x:  ";
            cin>>x;
            c=y;
            for(i=1;i<x;i++)
            {
                            c*=y;
                            }
                            cout<<"Число у в степени х равно: "<<c<<endl;
                            cout<<"Вернуться в гланое меню? (y/n)"<<endl;
                            cin>>s;
                            cout<<s<<endl;
                            cout<<done<<endl;
                            if(s=="y")
                            {
                                      done=true;
                                      }
                                      else 
                                      {
                                          done=false;
                               
                                         
                                          }
                                          
                                          
                                          
                            
                            
}
}
 
    
    
    
    
    
    
    
    
    
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2011, 10:49     Ошибка в коде..
Посмотрите здесь:

C++ Ошибка в коде)
Ошибка в коде C++
C++ ошибка в коде
Ошибка в коде! C++
C++ Ошибка в коде
Ошибка в коде C++
C++ Ошибка в коде
Ошибка в коде C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
greshnikk
 Аватар для greshnikk
30 / 30 / 0
Регистрация: 05.11.2008
Сообщений: 162
27.11.2011, 11:13     Ошибка в коде.. #2
У меня программа прекрасно выполняется, за исключением того факта, что Вы выделяете память под массив с одним элементом char (не могу понять за чем это надо, ведь Вы в таком случае можете просто написать char s; ), а при занесении туда строки, вы заносите 2 символа, ответ и символ окончания строки. Решить проблему можно двумя способами:

1. Замена
C++
1
2
3
char s[1];
...
if(s=="y")
на
C++
1
2
3
char s;
...
if(s=='y')
2. Замена
C++
1
char s[1];
на
C++
1
char s[2];
Первый вариант более эстетичен на мой взгляд.
Ferk
 Аватар для Ferk
3 / 3 / 1
Регистрация: 28.07.2011
Сообщений: 105
27.11.2011, 11:32  [ТС]     Ошибка в коде.. #3
спасибо большое) осознал ошибку)
Yandex
Объявления
27.11.2011, 11:32     Ошибка в коде..
Ответ Создать тему
Опции темы

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