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

Подскажите, как можно упростить/укоротить код - мини-калькулятора? - C++

Восстановить пароль Регистрация
 
Timurcpp
0 / 0 / 0
Регистрация: 01.03.2014
Сообщений: 36
24.03.2014, 19:47     Подскажите, как можно упростить/укоротить код - мини-калькулятора? #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
#include <iostream>
using namespace std;
void main()
{
    char a, b, c, e, num;
    double first, second;
    int sum;
    cout<<"Please input the function: a[+], b[-], c[*] and e[/]"<<endl;
    cin>>num;
    if(num=='a'||num=='b'||num=='c'||num=='e'){switch(num)
    {case'a':
    cout<<"Please input the first and second digits and press ENTER:"<<endl;
    cin>>first>>second;
    cout<<"The ADD function sum is:"<<first+second<<endl;
    break;
    case'b':
    cout<<"Please input the first and second digits and press ENTER:"<<endl;
    cin>>first>>second;
    cout<<"The MINUS function sum is:"<<first-second<<endl;
    break;
    case'c':
    cout<<"Please input the first and second digits and press ENTER:"<<endl;
    cin>>first>>second;
    cout<<"The MULTIPLY function sum is:"<<first*second<<endl;
    break;
    case'e':
    cout<<"Please input the first and second digits and press ENTER:"<<endl;
    cin>>first>>second;
    cout<<"The DIVIDE function sum is:"<<first/second<<endl;
    break;
    }
    }
    system("pause");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2014, 19:47     Подскажите, как можно упростить/укоротить код - мини-калькулятора?
Посмотрите здесь:

Как можно укоротить.... C++
Как можно упростить программу?(или подкорректировать) C++
C++ Как можно упростить exp^CA (если вводимые числа 5 и 4)
C++ Как лучше упростить код?
C++ Как упростить код
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
24.03.2014, 19:58     Подскажите, как можно упростить/укоротить код - мини-калькулятора? #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
#include <iostream>
using namespace std;
int main()
{
    char a, b, c, e, num;
    double first, second;
    int sum;
    cout<<"Please input the function: a[+], b[-], c[*] and e[/]"<<endl;
    cin>>num;
    if(num=='a'||num=='b'||num=='c'||num=='e')
    {   
        cout<<"Please input the first and second digits and press ENTER:"<<endl;
        cin>>first>>second;
        switch(num)
        {
        case'a':
            cout<<"The ADD function sum is:"<<first+second<<endl; break;
        case'b':
            cout<<"The MINUS function sum is:"<<first-second<<endl; break;
        case'c':
            cout<<"The MULTIPLY function sum is:"<<first*second<<endl;  break;
        case'e':
            cout<<"The DIVIDE function sum is:"<<first/second<<endl; break;
        }
    }
    system("pause");
    return 0;
}
Arigato
Программист
 Аватар для Arigato
278 / 175 / 94
Регистрация: 05.12.2013
Сообщений: 568
Записей в блоге: 5
24.03.2014, 19:59     Подскажите, как можно упростить/укоротить код - мини-калькулятора? #3
Выше ответили...
Man2201
 Аватар для Man2201
75 / 75 / 4
Регистрация: 25.04.2010
Сообщений: 296
24.03.2014, 20:01     Подскажите, как можно упростить/укоротить код - мини-калькулятора? #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Поскольку все операции бинарные, то можно повторяющийся код считывания значений вынести из switch
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
#include <iostream>
using namespace std;
void main()
{
    char a, b, c, e, num;
    double first, second;
    int sum;
    cout<<"Please input the function: a[+], b[-], c[*] and e[/]"<<endl;
    cin>>num;
    if(num=='a'||num=='b'||num=='c'||num=='e')
    {
    cout<<"Please input the first and second digits and press ENTER:"<<endl;
    cin>>first>>second;
    switch(num)
    {case'a':
    cout<<"The ADD function sum is:"<<first+second<<endl;
    break;
    case'b':
    cout<<"The MINUS function sum is:"<<first-second<<endl;
    break;
    case'c':
    cout<<"The MULTIPLY function sum is:"<<first*second<<endl;
    break;
    case'e':
    cout<<"The DIVIDE function sum is:"<<first/second<<endl;
    break;
    }
    }
    system("pause");
}
... не успел))
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
24.03.2014, 20:05     Подскажите, как можно упростить/укоротить код - мини-калькулятора? #5
Man2201,

Не по теме:

Я тоже на это нарывался мне тут про песню Modern Tallking You Can win the race напоминали

Man2201
 Аватар для Man2201
75 / 75 / 4
Регистрация: 25.04.2010
Сообщений: 296
25.03.2014, 01:20     Подскажите, как можно упростить/укоротить код - мини-калькулятора? #6
mustimur,

Не по теме:

Та да, песня в тему)) Только на самом деле то гонки никакой и нет, просто желание помочь новичку

mustimur
25.03.2014, 06:27     Подскажите, как можно упростить/укоротить код - мини-калькулятора?
  #7

Не по теме:

Man2201,согласен на 200%

Yandex
Объявления
25.03.2014, 06:27     Подскажите, как можно упростить/укоротить код - мини-калькулятора?
Ответ Создать тему
Опции темы

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