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

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

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

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

12.01.2016, 00:23. Просмотров 781. Ответов 6
Метки нет (Все метки)

добрый вечер всем,в калькуляторе нужно найти процент вот мой код,где ошибка?


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");
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.01.2016, 00:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Switch case калькулятор (C++):

Оптимальная конструкция switch-case-while / while-switch-case - C++
Имеется конструкция типа: switch() { case 1: while() { ... }

Switch case внутри switch case - C++
Привет всем! Нужна помощь. Пишу калькулятор с консольным меню. Так вот, используется цикл while, внутри которого у меня switch...

switch-case, как писать в самом case - C++
Такс дело вот в чём,прога работает всё хорошо,вот только мне не нравится как записваю страны в кейсе,можно ли каким-нибудь образом писать в...

Switch (Case) - C++
У меня есть программа, в ней по сути 2 подпрограммы, как сделать что бы при включении программы было меню выбора какое задание выполнять ? ...

switch case - C++
как в блок-схеме изображается switch case?

Switch - case - C++
Доброго времени суток. Сделал меню по такой схеме: switch(a) { case 1: { case 1: case 2: switch(aa) ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
nefton
44 / 20 / 5
Регистрация: 28.02.2013
Сообщений: 189
12.01.2016, 00:30 #2
теги форматирования. пункт 5
0
Perfilov
264 / 165 / 43
Регистрация: 25.02.2015
Сообщений: 435
12.01.2016, 00:30 #3
ошибка в вычислении процента похоже.
c=a%b; - это не вычисление процента, а остаток от деления а на б.
процент по другому считать надо. чтобы правильно посчитать - нужно знать процент чего от чего надо считать.
0
Зи
92 / 11 / 7
Регистрация: 09.12.2015
Сообщений: 30
12.01.2016, 00:39 #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");
}
0
Perfilov
264 / 165 / 43
Регистрация: 25.02.2015
Сообщений: 435
12.01.2016, 00:51 #5
c=a*b/100; - криво.

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

ну или x = b * 100 / a; если a это 100%
0
MrRyuDO
0 / 0 / 0
Регистрация: 01.09.2015
Сообщений: 86
12.01.2016, 00:58  [ТС] #6
по поводу калькулятора как сделать в чтоб при делении 5 / 2 выводило 2.5 а не просто 2
0
HELLKAR
14 / 14 / 7
Регистрация: 11.04.2015
Сообщений: 50
Завершенные тесты: 1
12.01.2016, 09:06 #7
MrRyuDO, используйте вариант Зи, в вашем варианте переменная "c", отвечающая за вывод на экран результата имеет тип int, поэтому дробная часть при выводе на экран отбрасывается.
В варианте, предоставленном Зи, с типом переменных все в норме, единственное можно поправить, как писал Perfilov, при расчете процента использовать формулу b*100/a
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.01.2016, 09:06
Привет! Вот еще темы с ответами:

Switch-case - C++
Можно ли так писать? switch (simvol) { case (('(') or ('1') or ('2') or ('3') or ('4') or ('5') or ('6') or ('7') or ('8')...

Switch - case - C++
Обязательно с использованием классов Есть задача. Дан массив вещественных чисел. а) Ко всем отрицательным элементам прибавить элемент...

Switch + case - C++
Суть задания: Задан шифр книги из библиотеки в виде шестизначного целого числа. Определить к какому подразделу ...

switch i case - C++
v 4jom u menja o6ibka? i kak vivisti rezultat? # include &lt;iostream&gt; # include &lt;conio.h&gt; using namespace std; int main () ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
12.01.2016, 09:06
Ответ Создать тему
Опции темы

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