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

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

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

Оптимизация программы - C++

29.06.2013, 17:47. Просмотров 344. Ответов 4
Метки нет (Все метки)

Ув. обыватели,
Вчера написал "Калькулятор", но так как я ещё зеленый в программировании на С++, прошу вас показать как и где можно оптимизировать нижеизложенный код.
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#include <iostream>
using namespace std;
 
double add();
double sub();
double mult();
double div();
 
int main()
{
    char select;
    double a,b,c;
 
    cout<<"\t\t\t\tSelect operation\n";
    cout<<"1. Addition (+)\n";
    cout<<"2. Subtraction (-)\n";
    cout<<"3. Multiplication (*)\n";
    cout<<"4. Division (/)\n";
    cout<<"I choose: "; select = getchar();
 
    start:
    switch(select)
    {       
    case '1':
        cout<<"ADDITION (+)\n";
        add();
        break;
        case '2':
        cout<<"SUBTRACTION (-)\n";
        sub();
        break;
        case '3':
        cout<<"MULTIPLICATION (*)\n";
        mult();
        break;
    case '4':
        cout<<"DIVISION (/)\n";
        div();
        break;
    default:
        cout<<"Please, make a selection!";
    }
 
    cout<<endl;
    goto start;
    return 0;
}
 
double add()
{
    double a,b,c;
    cout<<"Enter 1st number: "; cin>>a;
    cout<<"Enter 2nd number: "; cin>>b;
    c = a + b;
    cout<<"\t\t\t\t"<<a<<" + "<<b<<" = "<<c;
    return 0;
}
double sub()
{
    double a,b,c;
    cout<<"Enter 1st number: "; cin>>a;
    cout<<"Enter 2nd number: "; cin>>b;
    c = a - b;
    cout<<a<<" - "<<b<<" = "<<c;
    return 0;
}
 
double mult()
{
    double a,b,c;
    cout<<"Enter 1st number: "; cin>>a;
    cout<<"Enter 2nd number: "; cin>>b;
    c = a * b;
    cout<<a<<" * "<<b<<" = "<<c;
    return 0;
}
 
double div()
{
    double a,b,c;
    cout<<"Enter 1st number: "; cin>>a;
    cout<<"Enter 1st number: "; cin>>b;
    c = a / b;
    cout<<a<<" / "<<b<<" = "<<c;
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.06.2013, 17:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Оптимизация программы (C++):

Оптимизация программы - C++
#include&lt;std_lib_facilities.h&gt; #include&lt;conio.h&gt; void moveHorse(int &amp;, int , int , int, int &amp;, int &amp;, int &amp;);//переставляет коня ...

Оптимизация программы на С++ - C++
Помогите оптимизировать программу на С++, я не представляю, что в ней можно изменить. Хотя бы намек на функцию, в которой нужна...

Оптимизация программы - C++
Нужно, чтобы программа случайным образом придумывала число от 1 до 32767 и печатала его цифры через 2 пробела. (Например, 4236 печатает 4 ...

Оптимизация программы - C++
Помогите оптимизировать программу, не могу сам. #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; int main() ...

Оптимизация программы - C++
Как ещё можно оптимизировать нижеприведенный код? По условию задачи он выполняется дооолго. Собственно вот задача: В секретной...

Оптимизация программы - C++
Здравствуйте,задали задачку :Напишите программу, которая будет выполнять последовательность запросов вида ADD num, PRESENT num и COUNT (без...

4
el_gato_de_Ch
35 / 35 / 1
Регистрация: 28.04.2013
Сообщений: 110
29.06.2013, 17:48 #2
что вы понимаете под оптимизацией ? по какому критерию она должна проходить ? по времени работы ?
0
Nklok
0 / 0 / 0
Регистрация: 23.06.2013
Сообщений: 22
29.06.2013, 17:51  [ТС] #3
Цитата Сообщение от el_gato_de_Ch Посмотреть сообщение
что вы понимаете под оптимизацией ? по какому критерию она должна проходить ? по времени работы ?
Быстродействие, уменьшение кол-ва кода, если возможно.
Так же я мог допустить ошибки в написании
0
0x10
2479 / 1652 / 248
Регистрация: 24.11.2012
Сообщений: 4,092
29.06.2013, 17:56 #4
Ну вынесите ввод значений в отдельную функцию, чтобы меньше копипасты было... Тут три строчки кода, говорить особо не о чем.
1
el_gato_de_Ch
35 / 35 / 1
Регистрация: 28.04.2013
Сообщений: 110
29.06.2013, 17:59 #5
1. Зачем в main нужны a,b,c ?
2. В процедуре div() дублируется cout
3. Ни в одной процедуре не нужна переменная с, просто cout << a + b; (это уже оптимизация =) )
4. Избавьтесь от goto и не пользуйтесь им впредь. Если хотите что бы прога зациклилась и предлагала пользователю повтор операции, можно воспользоваться do {} while();

Добавлено через 1 минуту
если хотите действительно, крутой и кошерный калькулятор =) попробуйте изучить обратную польскую запись вот это будет действительно круто.
1
29.06.2013, 17:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.06.2013, 17:59
Привет! Вот еще темы с ответами:

Оптимизация программы - C++
Условие : Даны две действительные квадратные матрицы порядка n. Получить новую матрицу прибавлением к элементам каждого столбца первой...

Оптимизация простой программы - C++
Суть задачи такова: программа должна вычислить сумму цифр которые делятся на a или b и цифры должны быть меньше n. Максимальное число n =...

Оптимизация программы по памяти - C++
Здравствуйте, дорогие коллеги! Прошу вашей помощи. Кто чем поможет. Есть минимальная программа рекомендательной системы( код ниже...

Оптимизация кода программы - C++
Задача В качестве самостоятельного задания исследуйте предельные значения N! (1*2*3*..*n) для двух указанных типов (long int и unsigned...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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