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

Switch case калькулятор - C++

Восстановить пароль Регистрация
 
MrRyuDO
0 / 0 / 0
Регистрация: 01.09.2015
Сообщений: 86
12.01.2016, 00:23     Switch case калькулятор #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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <iostream>
using namespace std;
int main()
{
    setlocale(LC_ALL,"Rus");
int a,b,c;
char z;
cout << "Первое число: ";
cin >> a;
cout <<"Второе число: ";
cin >> b;
cout <<"Действие: ";
cin >> z;
switch (z)
{
       case '+':
{
       c=a+b;
cout <<"результат: "<< c <<endl; 
 
break;
}
      case '-':
{
      c=a-b;
cout <<"результат: "<<c<<endl;
break;
}
      case '*':
{
      c=a*b;
cout <<"результат: "<<c<<endl;
break;
 }
       case '/':
{
       c=a/b;
cout <<"результат: "<<c<<endl;
break;
}
case '%':
{
       c=a%b;
cout <<"результат: "<<c<<endl;
break;
}
default:
cout <<"Не верное значение.";        
}
system("PAUSE");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2016, 00:23     Switch case калькулятор
Посмотрите здесь:

C++ switch case
C++ Switch - case
C++ switch i case
case-switch C++
Switch-case C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nefton
44 / 20 / 5
Регистрация: 28.02.2013
Сообщений: 184
12.01.2016, 00:30     Switch case калькулятор #2
теги форматирования. пункт 5
Perfilov
264 / 165 / 43
Регистрация: 25.02.2015
Сообщений: 435
12.01.2016, 00:30     Switch case калькулятор #3
ошибка в вычислении процента похоже.
c=a%b; - это не вычисление процента, а остаток от деления а на б.
процент по другому считать надо. чтобы правильно посчитать - нужно знать процент чего от чего надо считать.
Зи
 Аватар для Зи
92 / 11 / 7
Регистрация: 09.12.2015
Сообщений: 30
12.01.2016, 00:39     Switch case калькулятор #4
видимо, вам было нужно это
p.s убрал вашу кучу ненужных скобок. и зачем они?

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
#include <iostream>
using namespace std;
int main()
{
    setlocale(LC_ALL,"Rus");
    double a,b,c;
    char z;
    double procent;
    cout << "Первое число: ";
    cin >> a;
    cout <<"Второе число: ";
    cin >> b;
    cout <<"Действие: ";
    cin >> z;
    switch (z)
    {
        case '+':   c=a+b;
                //  cout <<"результат: "<< c <<endl; 
                    break;
 
        case '-':   c=a-b;
                //  cout <<"результат: "<<c<<endl;
                    break;
 
        case '*':   c=a*b;
                //  cout <<"результат: "<<c<<endl;
                    break;
 
        case '/':   c=a/b;
                //  cout <<"результат: "<<c<<endl;
                    break;
 
        case '%':   //c=a%b;
                //  cout <<"результат: "<<c<<endl;
                    c=a*b/100; //находим сколько процентов a составляет от b
                    break;
 
        default:    cout <<"Не верное значение."; 
    }
    cout << "результат: " << c << endl;
system("PAUSE");
}
Perfilov
264 / 165 / 43
Регистрация: 25.02.2015
Сообщений: 435
12.01.2016, 00:51     Switch case калькулятор #5
c=a*b/100; - криво.

пропроция:
b - 100%
a - x%
из которой следует:
x = a * 100 / b;

ну или x = b * 100 / a; если a это 100%
MrRyuDO
0 / 0 / 0
Регистрация: 01.09.2015
Сообщений: 86
12.01.2016, 00:58  [ТС]     Switch case калькулятор #6
по поводу калькулятора как сделать в чтоб при делении 5 / 2 выводило 2.5 а не просто 2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.01.2016, 09:06     Switch case калькулятор
Еще ссылки по теме:

C++ switch и case
C++ Switch - Case
C++ Switch - case

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

Или воспользуйтесь поиском по форуму:
HELLKAR
 Аватар для HELLKAR
14 / 14 / 7
Регистрация: 11.04.2015
Сообщений: 50
Завершенные тесты: 1
12.01.2016, 09:06     Switch case калькулятор #7
MrRyuDO, используйте вариант Зи, в вашем варианте переменная "c", отвечающая за вывод на экран результата имеет тип int, поэтому дробная часть при выводе на экран отбрасывается.
В варианте, предоставленном Зи, с типом переменных все в норме, единственное можно поправить, как писал Perfilov, при расчете процента использовать формулу b*100/a
Yandex
Объявления
12.01.2016, 09:06     Switch case калькулятор
Ответ Создать тему
Опции темы

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