Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
gromik
1

Преобразование арифметического выражения!

27.03.2011, 14:13. Просмотров 1055. Ответов 1
Метки нет (Все метки)

помогите пожалуйста с написание программы..задание такое:
1. Преобразовать арифметическое выражение, не содержащее скобок (и соответственно функциональных символов) в промежуточное представление.
Например , A1+B1-X/15.5 .
я к сожалению не знаю как это делать, а сдать нужно...
заранее спасибо!
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.03.2011, 14:13
Ответы с готовыми решениями:

Вычисления линейного арифметического выражения
Помогите , пожалуйста. Нужна помощь в написании программы для вычисления линейного арифметического...

Программа для вычисления арифметического выражения
День добрый. Попался такой же пример. Но результат не сходится с ответом. Может, кто делал и...

Составить программу для вычисления арифметического выражения
сделайте пожалуйста под цифрой 3 заранее спасибо Запрещено размещать задания и решения в виде...

Расчет арифметического выражения
Помогите с формулой не могу понять

1
gromik
28.03.2011, 22:02 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
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
# include <fstream>
#include <iostream.h>
using namespace std;
struct Node{ //описываем структуру стека
char info;
Node *next;
} *stack;
int empty (Node*stack) //функция проверяет пустой стек или нет
{return (stack==0);
}
void reset(Node*&stack) //функция обнуления списка
{stack=0;
}
void push (Node*&stack,char a) //функция добавления элемента в стек
{if (empty(stack))
{stack=new Node;
stack->info=a;
stack->next=0;
}
else
{Node*p=new Node;
p->info=a;
p->next=stack;
stack=p;
}
}
void pop (Node*&stack, char &a) // функция извлечения элемента из стека
{if (!empty(stack))
{Node *p=stack;
a=p->info;
delete p;
}
}
 
ifstream myin("A.txt");
ofstream myout("B.txt");
int main()
{const int n=1000;
char a,b[n];
int m=0,i=0;
reset(stack);
while (!myin.eof()) //считываем информацию из файла и заносим в стек
{myin.get(a);
push (stack,a);
}
while ((i<n)&(!empty(stack))) //без данной процедуры формула выведется «задом наперед»
{pop(stack,b[i]);
m++;
i++;
}
 
for (i=m-1;i>0;i--)
myout.put(b[i]); //вывод в файл
return 0;
}
Примеры.

Входной файл А:
A1+B1-X/15.5

Выходной файл В:
A1+B1-X/15.5

Входной файл А:
-X^2-t*r+q1/0.3

Выходной файл В:
-X^2-t*r+q1/0.3
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.03.2011, 22:02

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Вычислить значение арифметического выражения
5...Требуется вычислить значение арифметического выражения. Выражение записано без пробелов в...

Вычисление арифметического выражения по формуле
Учитывая значения переменных, вычислить арифметическое выражение по формуле. Алгоритм решения...

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

Проверить правильность арифметического выражения
С++ Проверить правильность арифметического выражения, состоящего из числовых констант, знаков...


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

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

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