Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 12.05.2016
Сообщений: 41

Калькулятор для начинающих, прошу оценить

18.05.2016, 20:43. Показов 1366. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#include <iostream>
#include <math.h>
using namespace std;
 
int menu ();
int sum ();
int razn ();
int vozved ();
int delen ();
 
 
int main (){
    for (;;){
            
            menu ();
            
    }
    return 0;
    
}
 int menu(){
    
    int choice;
    
    cout <<"Calculator V.01\n";
    cout <<"1.Suma\n";
    cout <<"2.Raznica\n";
    cout <<"3.Ymnozenie\n";
    cout <<"4.Delenie\n";
    
    cout <<"Enter the number:1 - 4;\n";
    cin>> choice;
    cout <<"\n";
    
    switch (choice){
        case 1:
            cout <<sum()<<"\n";
            break;
        case 2:
            cout <<razn()<<"\n";
            break;
        case 3:
            cout <<vozved()<<"\n";
            break;
        case 4:
            cout <<delen()<<"\n";
            break;
    }
    
 }
 int sum (){
    float a,b,x;
    
    for (x = 0; x != 0005;){
    cout <<"Enter the first number: \n";
    cin>>a;
    cout <<"Enter the second number: \n";
    cin>>b;
    
    cout <<"Answer: "<< a + b<<" \n";
 
    menu ();
}
}
int razn (){
    float a,b,x;
    
    for (x = 0; x != 0005;){
    cout <<"Enter the first number: \n";
    cin>>a;
    cout <<"Enter the second number: \n";
    cin>>b;
    
    cout <<"Answer: "<< a - b<<" \n";
 
    menu ();
}
}
 
int vozved (){
    float a,b,x;
    
    for (x = 0; x != 0005;){
    cout <<"Enter the first number: \n";
    cin>>a;
    cout <<"Enter the second number: \n";
    cin>>b;
    
    cout <<"Answer: "<< a * b<<" \n";
 
    menu ();
}
}
 
int delen (){
    float a,b,x;
    
    for (x = 0; x != 0005;){
    cout <<"Enter the first number: \n";
    cin>>a;
    cout <<"Enter the second number: \n";
    cin>>b;
    
    cout <<"Answer: "<< a / b<<" \n";
 
    menu ();
}
}
// Прошу оценить!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.05.2016, 20:43
Ответы с готовыми решениями:

Оценить качество кода -- решение учебное задачи для начинающих
Я где-то читал, что программисту важно хорошо разбираться в О больших. Например, можно решить задачу за O(n*n), но ещё лучше -- решить её...

Прошу оценить код на C++
Сильно не пинайте, только начал изучать C++, написал вот такое кот. Что не так в этом коде? Перечислите, какие есть недостатки. Предложите...

Прошу оценить свой уровень
Код во вложениях

24
0 / 0 / 0
Регистрация: 12.05.2016
Сообщений: 41
22.05.2016, 00:45  [ТС]
Студворк — интернет-сервис помощи студентам
DaVillka, Наброски сделаешь? Что бы представить это.
0
 Аватар для DaVillka
-1 / 8 / 6
Регистрация: 31.10.2015
Сообщений: 151
22.05.2016, 00:46
Adamtotu, хранить в буffер результат предедужеи операчии, а потом брать этот буffер для следующеи, и так пока юзер не введет '=', условия ты должен уже знать if, else

Добавлено через 17 секунд
Adamtotu, хорошо
1
0 / 0 / 0
Регистрация: 12.05.2016
Сообщений: 41
22.05.2016, 00:48  [ТС]
Цитата Сообщение от DaVillka Посмотреть сообщение
Adamtotu, хранить в буffер результат предедужеи операчии, а потом брать этот буffер для следующеи, и так пока юзер не введет '=', условия ты должен уже знать if, else

Добавлено через 17 секунд
Adamtotu, хорошо
DaVillka, Эти инструкции мне известны, мне когда ждать? Ты сейчас или завтра?
0
 Аватар для DaVillka
-1 / 8 / 6
Регистрация: 31.10.2015
Сообщений: 151
22.05.2016, 01:09
Adamtotu, даж не знаю, попробую щас)

Добавлено через 18 минут
Adamtotu, поздно уже, башка вообще варить не хочет, ну вот как то так получилось
C++ (Qt)
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
#include <iostream>
 
float calculator(float chislo1, char simvol, float chislo2)
{
    switch (simvol)
    {
    case '+': return chislo1 + chislo2;
    case '-': return chislo1 - chislo2;
    case '*': return chislo1 * chislo2;
    case '/': return chislo1 / chislo2;
    default: return 1;
    }
    return 0;
}
int main()
{
    setlocale (LC_ALL, "RUS");
    std::cout << "Калькулятор\n";
 
    float chislo1 = 0, chislo2 = 0, chislo3 = 0, buffer = 0;
    char simvol   = 0;
 
    std::cout <<"Введите первое число: " << std::endl;
    std::cin >> chislo1;
    
    std::cout <<"Введите символ: " << std::endl;
    std::cin >> simvol;
    std::cout <<"Введите число: " << std::endl;
    std::cin >> chislo2;
 
    chislo3 = calculator(chislo1,  simvol,  chislo2);
 
    for (;;)
    {
        buffer = chislo3;
 
        std::cout <<"Введите символ: " << std::endl;
        std::cin >> simvol;
 
        if (simvol == '=') break;
        else
        {
            std::cout << chislo3 << std::endl;
            std::cout <<"Введите число: " << std::endl;
            std::cin >> chislo2;
            chislo3 = calculator(buffer,  simvol,  chislo2);
        }
 
    }
    std::cout << buffer << std::endl;
    system("pause");
    return 0;
}
0
0 / 0 / 0
Регистрация: 12.05.2016
Сообщений: 41
22.05.2016, 01:17  [ТС]
Цитата Сообщение от DaVillka Посмотреть сообщение
Adamtotu, даж не знаю, попробую щас)

Добавлено через 18 минут
Adamtotu, поздно уже, башка вообще варить не хочет, ну вот как то так получилось
C++ (Qt)
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
#include <iostream>
 
float calculator(float chislo1, char simvol, float chislo2)
{
    switch (simvol)
    {
    case '+': return chislo1 + chislo2;
    case '-': return chislo1 - chislo2;
    case '*': return chislo1 * chislo2;
    case '/': return chislo1 / chislo2;
    default: return 1;
    }
    return 0;
}
int main()
{
    setlocale (LC_ALL, "RUS");
    std::cout << "Калькулятор\n";
 
    float chislo1 = 0, chislo2 = 0, chislo3 = 0, buffer = 0;
    char simvol   = 0;
 
    std::cout <<"Введите первое число: " << std::endl;
    std::cin >> chislo1;
    
    std::cout <<"Введите символ: " << std::endl;
    std::cin >> simvol;
    std::cout <<"Введите число: " << std::endl;
    std::cin >> chislo2;
 
    chislo3 = calculator(chislo1,  simvol,  chislo2);
 
    for (;;)
    {
        buffer = chislo3;
 
        std::cout <<"Введите символ: " << std::endl;
        std::cin >> simvol;
 
        if (simvol == '=') break;
        else
        {
            std::cout << chislo3 << std::endl;
            std::cout <<"Введите число: " << std::endl;
            std::cin >> chislo2;
            chislo3 = calculator(buffer,  simvol,  chislo2);
        }
 
    }
    std::cout << buffer << std::endl;
    system("pause");
    return 0;
}
DaVillka, Да это хорошо, буффер рулит. Правда мне не известна была эта инструкция, наверное потому и не смог сделать. А ты молодец.

Но я попытаюсь усовершенствовать твой буфер, ибо увидел кое какие не точности.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.05.2016, 01:17

Прошу оценить стиль программы
Всем мира! Ребят, в общем наваял я тут чудо-чудное, диво-дивное (мне так кажется:)) Прошу, чтоб посмотрели код, посоветовали, что можно...

Прошу оценить системник для продажи
Всему железу 4 года, работает исправно. Процессор Intel Core i7-3770K Материнка Asus P8Z77-V LX Оперативка Kingston DDR3-1333 4gb -...

Прошу оценить компьютер для продажи
процессор DualCore Intel Core i3-530, 2933 MHz (22 x 133) память DDR3-1333 DDR3 SDRAM 3003 Мб видюха NVIDIA GeForce GTS 250 (512 МБ) ...

Прошу оценить сборку для рабочего ПК
Задачи: Программирование. Android Studio&amp;IntelliJ IDEA В игры играть не планирую...(видеокарты возможно не будет, на интегрированном)...

Прошу оценить б.у. ноутбук для продажи на Avito
Здравствуйте. Имеется ноутбук AcerEmachinesE732g 15.6&quot; (1366x768) i3-330M (2.13 ГГц) 6gb RAM (докупалась плашка на 4) родные 3 гб ...


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

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Новые блоги и статьи
Сукцессия 20. Война автоботов. Делаем ставки. Лёд против "пш-пш!".
anaschu 11.07.2026
Битва ИИ в ризосфере: Как мы скрестили жесткие ОДУ, закон Фика и «подземный шантаж» Уважаемые коллеги! Хочу поделиться уникальным опытом ведения междисциплинарной компьютерной разработки. Прямо. . .
Сукцессия 19. Какие выводы я сделал из модели? Часть 2.Внутримикоризный стехиометрический буфер и хроно-дискретные зоны экспансии
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы Математический аппарат моделирования
Сукцессия 18. Какие выводы я сделал из войны грибов с деревьями? Часть 1- рассказ и немного про термины
anaschu 11.07.2026
Био-Инженерный Ликбез: Архитектура Модели Ризосферы Математический аппарат моделирования Система ОДУ описывает динамику изменения массы различных компонентов системы во времени. Ключевой. . .
Просветление в 5 секунд
kumehtar 10.07.2026
Андрей Веретенников выдал фразу недавно: "Вам не обязательно кем-то себя считать"
Эксперимент с картинкой-обложкой на CodinGame
Adler 10.07.2026
Решил на днях провести эксперимент. У меня есть аккаунт на CodinGame, ТОП-3 по РФ среди 2200 участников (в разделе соревнования по программированию ИИ-ботов). Там есть обложка, куда можно влепить. . .
GitDOS: Когда я решил скрестить MS-DOS, GitHub и Claude
MaGz GoLd 08.07.2026
Привет, Киберфорум! Хочу поделиться своим проектом, который, надеюсь, вас заинтересует. GitDOS — это веб-приложение, которое позволяет запускать DOS в браузере с тремя крутыми фичами: диски живут в. . .
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал. Оно само - говорит. Кто слышит тот слышит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru