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

Написать парсер математических выражений с функцией упрощения этих выражений - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как реализовать генерацию рандомных чисел в заданном диапазоне? http://www.cyberforum.ru/cpp-beginners/thread1799943.html
Я Хочу Сделать Генерацию Рандомный Чисел В Заданном Диапазоне ну например от 100 до 120.Ошибок Компилятор не выдаёт.Но Программа Работает не правильно Мой Код: #include <iostream> #include <ctime> using namespace std; int main(int argc, char* argv) { int a, b; cout << "Min Value: ";
C++ Как настроить условие, что оно считало двухсимвольную последовательность ff,fl,fi? Наверняка у меня неправильно ( с=='f' && ++c=='f'). Подскажите, как в условие перейти на другой символ и узнать его значение... #include <iostream> #include<vector> #include<string> using namespace std; int main() { char k2, t2, h, h3, h2, h5,f4; http://www.cyberforum.ru/cpp-beginners/thread1799932.html
C++ Найти в строке в текстовом файле в кодировке OEM 866 (кириллица и латиница), слова, содержащие кириллицу
Приветствую, форумчане! Вот уже несколько дней не могу решить проблему. Дано: строка в текстовом файле в кодировке OEM 866, содержащая кириллицу и латиницу. Требуется найти в данном тексте слово на кириллице. Вот пример кода. К сожалению, совпадений не находит. Пробовал менять кодировку входящего текста через OemToChar(). Исход тот же. Самое интересное, что латиницу находит. A также...
C++11, потоки, std::condition_variable C++
Проблема в том, что в коде ниже сначала работает лишь поток th1, а затем только th2 (поток th1 бездействует). Хотелось бы, чтобы при получении данных, сразу начиналась их обработка. #include <condition_variable> #include <iostream> #include <fstream> #include <mutex> #include <queue> #include <string> #include <thread>
C++ Сортировка вставками, нужен пример с комментариями http://www.cyberforum.ru/cpp-beginners/thread1799899.html
Не могу понять процесс вычисления минимального значения в уже отсортированных числах (при выбранном числе) т.е. как программа это делает? Пример: 5461...сортирует (4561) это при первой итерации как я понял а вот дальше у меня никак :( и как будет выполнена сортировка 3-его элемента (1) данного мною массива ВОТ основной момент для меня! Буду благодарен за пояснения и если можно то на примере...
C++ Inline функции: как обеспечить уверенность в том, что заданный код, абсолютно всегда будет инлайниться? Вопрос заключается в следующем: как обеспечить уверенность в том, что приведенный ниже код, абсолютно всегда будет инлайниться? Это вообще возможно? // this function casts passed pointer to specified function type and calls it // with passed parameters template<typename ToCast, typename... Args> inline typename std::result_of<ToCast>::type call(void* callable_code, Args&&... args) подробнее

Показать сообщение отдельно
Martein
Оператор ЭВМ 6 разряда
 Аватар для Martein
453 / 66 / 12
Регистрация: 22.06.2014
Сообщений: 141
29.08.2016, 16:02     Написать парсер математических выражений с функцией упрощения этих выражений
Короче парняга пыжытся над упражнениями по парсингу уравнений и их решение через паттерн диспетчер и хочет чтобы вы вместо него написали программу с классами подобного типа:
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 <iostream>
#include <vector>
#include <string>
#include <algorithm>
 
class Expression {
public:
    virtual Expression& operation() = 0;
    virtual void transform(Expression& other) = 0;
};
 
class Number : public Expression {
public:
    Expression &operation();
    void transform(Expression &other) {
        if (Number* number = dynamic_cast<Number*>(other)) {
            // operation Number-Number
        } else {
            
        }
    }
};
 
class Div : public Expression {
public:
    /*virtual*/
    Expression &operation();
    /*virtual*/
    void transform(Expression &other) {
        if (Div* div = dynamic_cast<Div*>(other)) {
            // operation Div-Div
        } else {
            
        }
    }
};
 
class Mul : public Expression {
public:
    /*virtual*/
    Expression &operation();
    /*virtual*/
    void transform(Expression &other) {
        if (Mul* mul = dynamic_cast<Mul*>(other)) {
            // operation Mul-Mul
        } else {
            
        }
    }
};
 
int main()
{
    return 0;
}
И теперь похвастаться не перед кем, что он такой осилятор, так хочет посмотреть, как умеют другие. Короче это юношеский максимализм, не обращайте внимания.
 
Текущее время: 06:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru