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

математическое выражение из string в int - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти сумму элементов массива http://www.cyberforum.ru/cpp-beginners/thread184609.html
Дан динамический массив. Элементы массива вводятся с клавиатуры. Найти сумму элементов массива. Тут все задачи на С++ 2006
C++ Найти произведение элементов массива кратных 3-м Дан динамический массив. Элементы массива вводятся с клавиатуры. Найти произведение элементов массива кратных 3-м. http://www.cyberforum.ru/cpp-beginners/thread184608.html
Найти сумму нечетных элементов массива C++
2)-Дан динамический массив. Элементы массива вводятся с клавиатуры. Найти сумму нечетных элементов массива.
Найти количество четных элементов массива C++
Дан динамический массив. Элементы массива вводятся с клавиатуры. Найти количество четных элементов массива. задание на С++ 2006
C++ Нужнен совет в создание скрипта! http://www.cyberforum.ru/cpp-beginners/thread184601.html
Вот люди написал такой скрипит #include <iostream> #include <conio.h> using namespace std; int main () { int x;
C++ Калькулятор с инженерными функциями задали задание написать Калькулятор с инженерными функциями на С++ 2006 !!! было бы хорошо еслиб с 0 помогли!!! и с оформлением-правда до этого мы еще не дошли!!! но желательно!!! заранее Спасибо вам!!! подробнее

Показать сообщение отдельно
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
01.11.2010, 00:12     математическое выражение из string в int
Может не то что надо,но всё же
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
#include <iostream>
#include <conio.h>
#include <cmath>
#define _USE_MATH_DEFINES
using namespace std; 
 
float number()
{
      int res = 0;
      for(;;)
      {
             char c = cin.get();
             if(c >= '0' && c <= '9')
                res = res * 10 + c - '0';
             else
             {
                 cin.putback(c);
                 return res;
             }   
      }
}
 
float expr();
 
float ckobki()
{
      char c = cin.get();
      if(c == '(')
      {  
           float x = expr();
           cin.get();
           return x;
      }
      else 
      {
           cin.putback(c);
           return number();
      }
}
 
float factor()
{
      int x = ckobki();
      for(;;)
      {
      char c = cin.get();
      switch(c)
      {
               case '*':
                    x *= ckobki();
                    break;
               case '/':
                    x /= ckobki();
                    break;
               default:
                    cin.putback(c);
                    return x;             
      }
   }
}
 
float expr()
{
      int x = factor();
      for(;;)
      {
      char c = cin.get();
      switch(c)
      {
               case '+':
                    x += factor();
                    break;
               case '-':
                    x -= factor();
                    break;
               default:
                    cin.putback(c);
                    return x;             
      }
   }
}
 
int main()
{
    cout << "Bedute Bupawehue: ";
    float res = expr();
    cout << "Pezyltat = " << res << endl;
    getch();
    return 0;
}
 
Текущее время: 22:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru