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

Перевести префиксную запись выражения в постфиксную - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Отсечение данных, добавление указателя http://www.cyberforum.ru/cpp-beginners/thread1200079.html
Задача продемонстрировать отсечение данных. #include <iostream> using namespace std; enum breed { golden, cairn, dandie, shetland, doberman, lab }; // breed(порода) class mammal //объявляем класс {
C++ Выровнять вывод под две колонки Привет, ребята. Подскажите как сделать, что бы вывод был строго под нужными колонками, и не "сьезжал" куда не надо. Заранее спасибо! Скрин - cut Загружайте изображения на сайт. А коды положено перепечатывать в тело сообщения! http://www.cyberforum.ru/cpp-beginners/thread1200077.html
C++ Опишите посторочно, что делает эта программа
1. Описать структуру с именем PRICE, содержащую следующие поля: • название товара; • название магазина, в котором продается товар; • стоимость товара в руб. 2. Написать программу, выполняющую следующие действия: • ввод с клавиатуры данных в массив, состоящий из восьми элементов типа PRICE; записи должны быть размещены в алфавитном порядке по названиям товаров; • вывод на экран информации...
Как правильно работать с функцией _getch() ? C++
Ребята, задача такова: Надо нарисовать фигурку в консоли. И дигать ,по консоли, фигурку стрелочками из клавиатуры. Операторы котрые буду использовать(надо использовать) system("cls") для обновления консоил после каждого движения фигруки. _getch() для перехвата введенной стрелки на консоль и изменения положения фигурки. Первая проблема: не могу разобраться с функцией getch() вроед...
C++ Удалить из введенной с клавиатуры строки первые 2 слова, если это цифры http://www.cyberforum.ru/cpp-beginners/thread1200057.html
Помогите написать программу, которая удаляет из введенной с клавиатуры строки первые 2 слова если это цифры.
C++ Дописать К элементов в начало файла вот текст программы)))мне нужно к уже введенным данным дописать еще в начало файла)))очень плохо шарю помогите плиз #include<iostream.h> #include<stdio.h> #include<conio.h> #include<fstream.h> struct sport{ char name; char town; int players; int credits; подробнее

Показать сообщение отдельно
kyzavr
 Аватар для kyzavr
2 / 2 / 0
Регистрация: 22.05.2013
Сообщений: 123
05.06.2014, 22:32  [ТС]     Перевести префиксную запись выражения в постфиксную
я создал быдло код)) правда не работает с вещественными ) ну и пофиг)
Кликните здесь для просмотра всего текста

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
void Revert(char* str)
{
    int a=10,i=0,i1=0,i2=0,i3=0,k;
    char stack1[10],stack2[10];
    int stack3[10];
    int length=strlen(str);
    length--;
    char st;
    cout<<str<<"   введенная строка"<<endl;
    
    while (str[length]!='\0')
    {
    
        st=str[length];
 
        if (st=='+' || st=='-' || st=='*' || st=='/' || st=='%' )
                    {
                     stack1[i1]=st;
                    
                     i1++;
                      stack3[i3]=0;
                     
                     i3++;  //НУЛИ ЭТО ЗАПИСЬ знак операц
                    }
      else
        switch(st) 
            {
                //  cout<<st<<"   введенная st"<<i<<endl;
                case ' ':
                //If symbol is space, nuber is ended
                    break;
                case '0':  //if symbol is number...
                case '1':
                case '2':
                case '3':
                case '4':
                case '5':
                case '6':
                case '7':
                case '8':
                case '9':   
                stack2[i2]=st;
                 i2++; 
                 stack3[i3]=1;  
                  i3++; break;
            }
        
    length--;
    }
            
            length=strlen(str);
           i=0; i1=0;i3=0;i2--;
            while(i<length)
            {
                     if(stack3[i3]==1)
                 {
                    str[i]=stack2[i2];
                     i2--;
                }
                    if(stack3[i3]==0)
                {
                    str[i]=stack1[i1];
                     i1++;
                 }
              i3++;
                str[++i]=' ';i++;
            }
            str[length]='\0';
        cout<<str;
        cout<<"  = ПЕРЕВЕРНУЛИ"<<endl;
    
}


Добавлено через 3 часа 16 минут
если кто то сможет переделать что бы еще и вещественные работали) буду очень благодарен ) (в простой записи работают ) хз как тут их переворачивать))
 
Текущее время: 22:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru