Преобразовать строку, содержащую выражение на си с операциями (=,==,! =,a+=,a-=), в строку, содержащую эти же операции с синтаксисом языка паскаль (: =,=,#,a=a+,a= вывести результат на экран.

arinkachoo arinkachoo    3   16.06.2019 11:30    12

Ответы
sasha07022005 sasha07022005  02.10.2020 02:43
#include <iostream>
#include <string>

int main()
{
    std::string str;
    getline(std::cin,str);

    const int n = 5;
    std::string c[n] = { "=", "==", "!=", "a +=", "a -=" };
    std::string psl[n] = { ": =", "=", "#", "a = a +", "a = a -" };

    for (unsigned int i = n-1; i > 0; i--){
        int p = str.find(c[i]);
        while (p > 0)
        {
            str.replace(p, c[i].size(), psl[i]);
            p = str.find(c[i]);
        }        
    }
    std::cout << str;
    return 0;
}
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика