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

Что не так с прогой? - C++

Восстановить пароль Регистрация
 
Temich
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 21
07.11.2013, 18:21     Что не так с прогой? #1
Когда вводишь в значение k двузначное число прога не может сравнить это число с выражением.Может какой нибудь другой тип переменных надоо написать?
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
#include <iostream>                             
#include <conio.h>                           
#include <locale.h>                         
 
using namespace std; 
int main()                                  
{
     setlocale(LC_ALL, "Russian");              
    char k; 
    float x;    
    float c,d,e,f;                              
    cout << "Ââåäèòå ñèìâîë "; 
    cout << "x= ";                              
    cin >> x; 
    cout << "k= ";          
    cin >> k;
    switch (k){                             
        case '3':                               
        case '6':                               
        case '11':  
            c=2*x+5;                                                                                        
            cout <<2<<"*"<<x<<"+"<<5<<"="<<c<<endl; break;                                                           
        case '9':                               
        case '10':                                                                                              
            d=10-x;                                                                                 
            cout <<10<<"-"<<x<<"="<<d<<endl; break;                                                                      
        case '13':
            e=3*x;                                                                                           
            cout <<3<<"*"<<x<<"="<<e<<endl; break;                                                                                                                       
                                                                                    
        default :                                                                                            
                f=12*x;                                                                                      
            cout <<12<<"*"<<x<<"="<<f<<endl; break;     
    }
    getche();
    return(0);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.11.2013, 18:21     Что не так с прогой?
Посмотрите здесь:

что не так? C++
C++ Что не так с прогой?
что не так? C++
C++ Что-то не так?
что не так C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ssXXss
263 / 185 / 10
Регистрация: 15.01.2011
Сообщений: 668
07.11.2013, 18:30     Что не так с прогой? #2
попробуй написать :
C++
1
2
3
4
5
...
char k; 
std::cin >> x;
std::cout << std::hex << n << '\n';
....
Temich
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 21
07.11.2013, 18:35  [ТС]     Что не так с прогой? #3
Ничего..........Кстати,а зачем там флаги менять?
nord_v
227 / 176 / 69
Регистрация: 22.08.2013
Сообщений: 723
07.11.2013, 21:39     Что не так с прогой? #4
Цитата Сообщение от Temich Посмотреть сообщение
Когда вводишь в значение k двузначное число
k - это char, а значит символ должен быть один ('11', '13' - это уже строки, а не символы).
-=ЮрА=-
Заблокирован
Автор FAQ
07.11.2013, 22:18     Что не так с прогой? #5
Temich, у тебя множественный выбор
Цитата Сообщение от Temich Посмотреть сообщение
switch (k)
написан для разбора чаровского флага, а ты что вводишь :
Цитата Сообщение от Temich Посмотреть сообщение
Когда вводишь в значение k двузначное число прога не может сравнить это число с выражением.
- вообще понимаешь что делаешь?

Добавлено через 5 минут
Вот поправленный код
https://ideone.com/dBS7jd
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
#include <iostream>     
using namespace std; 
int main()  
{   
    int k;  
    float x;    
    float c,d,e,f;      
    cout << "x= ";  
    cin >> x; 
    cout << "k= ";  
    cin >> k;
    switch (k)
    {   
        case 3: 
        case 6: 
        case 11: 
            c=2*x+5;    
            cout <<2<<"*"<<x<<"+"<<5<<"="<<c<<endl; 
        break;  
        case 9: 
        case 10:    
            d=10-x; 
            cout <<10<<"-"<<x<<"="<<d<<endl; 
        break;  
        case 13:
            e=3*x;  
            cout <<3<<"*"<<x<<"="<<e<<endl; 
        break;  
 
        default : 
            f=12*x; 
            cout <<12<<"*"<<x<<"="<<f<<endl; 
        break;  
    }
    cin.get();
    return 0;
}
stdin copy
5
14
stdout copy
x= k= 12*5=60
Temich
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 21
15.11.2013, 10:04  [ТС]     Что не так с прогой? #6
Ага,спасибо.Чето я упрлся....
Yandex
Объявления
15.11.2013, 10:04     Что не так с прогой?
Ответ Создать тему
Опции темы

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