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

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

Войти
Регистрация
Восстановить пароль
 
СаньчО
2 / 2 / 0
Регистрация: 08.03.2014
Сообщений: 47
#1

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

09.03.2014, 06:36. Просмотров 699. Ответов 3
Метки нет (Все метки)

Всем привет, извините, что постю сюда эту тему, но выхода нет((( Проблема состоит в том что надо сделать калькулятор из множества действий +-*/ то есть у меня 8+8, а мне надо 8+8*3/2 как то так( Хотя бы действий 15 сделать! Возможно у кого то есть исходники? Прошу вас откликнитесь, выхода у меня больше нет, все облазил ни где не нашел((( Работаю в buildere c++

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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
void __fastcall TForm2::LabeledEdit3Change(TObject *Sender)
{
    UnicodeString primer = LabeledEdit3->Text.Trim(); //Trim убирает пробелы в начале и в конце строки
    while (primer.Pos(".")) {
        primer[primer.Pos(".")] = ',';
    }
    if(LabeledEdit3->Text == "")
    LabeledEdit4->Text = 0;
    if (primer.Pos("+") >0) {
        int pos = primer.Pos("+");
        UnicodeString levo = primer.SubString(0,pos-1).Trim();
        UnicodeString pravo = primer.SubString(pos+1,primer.Length()-(pos)).Trim();
        if (levo.IsEmpty() || pravo.IsEmpty()) {
            return;
        }
        double vivod = levo.ToDouble() + pravo.ToDouble();
        LabeledEdit4->Text=FloatToStr(vivod);
    }
    if (primer.Pos("-") >0) {
        int pos = primer.Pos("-");
        UnicodeString levo = primer.SubString(0,pos-1).Trim();
        UnicodeString pravo = primer.SubString(pos+1,primer.Length()-(pos)).Trim();
        if (levo.IsEmpty() || pravo.IsEmpty()) {
            return;
        }
        double vivod = levo.ToDouble() - pravo.ToDouble();
        LabeledEdit4->Text=FloatToStr(vivod);
    }
    if (primer.Pos("*") >0) {
        int pos = primer.Pos("*");
        UnicodeString levo = primer.SubString(0,pos-1).Trim();
        UnicodeString pravo = primer.SubString(pos+1,primer.Length()-(pos)).Trim();
        if (levo.IsEmpty() || pravo.IsEmpty()) {
            return;
        }
        double vivod = levo.ToDouble() * pravo.ToDouble();
        LabeledEdit4->Text=FloatToStr(vivod);
    }
    if (primer.Pos("/") >0) {
        int pos = primer.Pos("/");
        UnicodeString levo = primer.SubString(0,pos-1).Trim();
        UnicodeString pravo = primer.SubString(pos+1,primer.Length()-(pos)).Trim();
        if (levo.IsEmpty() || pravo.IsEmpty()) {
            return;
        }
        if (pravo.ToDouble() ==0) {
            LabeledEdit4->Text="делить на 0 нельзя";
        }
        else {
            double vivod = levo.ToDouble() / pravo.ToDouble();
            LabeledEdit4->Text=FloatToStr(vivod);
        }
 
    }
}
 
//---------------------------------------------------------------------------
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2014, 06:36     калькулятор
Посмотрите здесь:

Калькулятор - C++
Добрый вечер. Помогите пожалуйста с кодом. У меня есть код который, записывает числа в один массив, а знаки в другой, мне как-то теперь...

Калькулятор на C++ - C++
Доброго времени суток! У меня возник вопрос. При вводе чисел в cmd, они у меня просто складываются, но код (мне кажется) правильный. Думаю...

Калькулятор в С++ - C++
Доброго времени суток. Нужно разработать класс «Калькулятор» Вид данных: квадрат; Необходимо осуществить ввод и вывод координат...

Калькулятор - C++
#include "stdafx.h" #include <stdio.h> #include <iostream> #include <conio.h> using namespace std; int main() { ...

Калькулятор - C++
В идеале, то что представлено ниже является калькулятором с 4-мя действиями (+,-,*,/) и с произвольным количеством переменных. Но вот не...

Калькулятор - C++
Есть такое условие: If(b=='+') s=a+b; как сделать так чтобы я мог додавать не два числа а a+b+...+n

C++ Калькулятор - C++
Начал практиковаться в C++ помогите понять почему не работает мой калькулятор? Вроде все правильно,ввожу числа а он просто отключается....

Калькулятор на С++ - C++
калькулятор в принципе готов, надо только сделать запрет деления на 0, помогите кто чем может #include<stdio.h> #include<conio.h> ...

Калькулятор на С - C++
калькулятор в принципе готов, надо только сделать деление на дробные числа, помогите кто чем может пожалуйста

Калькулятор - C++
Строковый калькулятор методом обратной польской нотации, со скобками. Есть у кого нить код? Заранее спасибо.

Калькулятор на C++ - C++
Здравствуйте, нужна помощь в создании калькулятора. Калькулятор должен работать при вводе например: 5+3*2. И соответственно должен...

Калькулятор - C++
Вот сам калькулятор: #include<conio.h> #include<locale.h> #include<stdio.h> #define END '0' #define ERROR -1 #include<stdlib.h>...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
LVV
57 / 57 / 4
Регистрация: 15.02.2010
Сообщений: 245
09.03.2014, 07:24     калькулятор #2
Если числа одноразрядные, как в Вашем примере, то обработка строки (выражения) в консольном приложении на Visual Studio выглядит примерно так:
Вариант 13 из http://lvvas.pp.ua/index.php?option=...168&Itemid=210
СаньчО
2 / 2 / 0
Регистрация: 08.03.2014
Сообщений: 47
09.03.2014, 08:35  [ТС]     калькулятор #3
Цитата Сообщение от LVV Посмотреть сообщение
Если числа одноразрядные, как в Вашем примере, то обработка строки (выражения) в консольном приложении на Visual Studio выглядит примерно так:
Вариант 13 из http://lvvas.pp.ua/index.php?option=...168&Itemid=210
968+5/2/2=10,25 а должно быть 243,25
Ev[G]eN
09.03.2014, 10:59     калькулятор
  #4
 Комментарий модератора 
Данная тема уже создана Вами в разделе "C++ Builder"(Тема: Вычисление выражения, введенного в Edit).
Ознакомьтесь с Правилами нашего Форума. Особое внимание уделите пункту №5.5:
"Запрещено размещать тему в нескольких разделах одновременно (кросспостинг), а также дублировать тему в одном разделе."
Данная тема закрыта!
Yandex
Объявления
09.03.2014, 10:59     калькулятор
Закрытая тема Создать тему
Опции темы

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