t2_pos = y.find("]", t2_pos);
if (pos>0 && t_pos>0 && t2_pos>0 && pos>t_pos && pos<t2_pos)
{
y.replace(pos, 1, "][");
finish = false;
}
}
while (finish == false);
}
// функція для заміни оператора рівносмті
// в середині операторів if(), while()
void ifchange (string &_y, int _pos)
{
int t_pos, t2_pos;
t_pos = _y.find(")", _pos);
t2_pos = _y.find("=", _pos);
if (t2_pos >0 && t2_pos < t_pos)
_y.replace(t2_pos, 1, "==");
t2_pos = _y.find("<=");
if (t2_pos >0 && t2_pos < t_pos)
_y.replace(t2_pos, 2, "<");
t2_pos = _y.find(">=");
if (t2_pos >0 && t2_pos < t_pos)
_y.replace(t2_pos, 2, ">");
t2_pos = _y.find("<>");
if (t2_pos >0 && t2_pos < t_pos)
_y.replace(t2_pos, 2, "!=");
t2_pos = _y.find("NOT");
if (t2_pos >0 && t2_pos < t_pos)
_y.replace(t2_pos, 3, "!");
}
// внутрішня функція
void cach (string &tmp_s)
{
int t3_pos;
t3_pos = tmp_s.find(":");
if (t3_pos > 0)
tmp_s.replace(t3_pos, 1, "");
t3_pos = tmp_s.find("INTEGER");
if (t3_pos > 0)
{
tmp_s.replace(t3_pos, 7, "");
tmp_s = "int " + tmp_s;
}
t3_pos = tmp_s.find("SHORTINT");
if (t3_pos > 0)
{
tmp_s.replace(t3_pos, 8, "");
tmp_s = "char " + tmp_s;