#include <iostream>
#include <ctype.h>
#include <string>
using namespace std;
int main()
{
cout << "input string\n";
string str;
char c;
do //посимвольный ввод строки
{
c = getchar();
str += c;
}
while (isprint(c)); //пока цифра, буква или пробел
for (int i = 0; i < str.length(); ++i) //проход строки
{
int j = i;
while (isgraph(str)) //цифра или буква
{
++i;
};
if ((i - j < 5) || !((i - j) % 2))
//если слово собдержит менее 5 симв. или его длина четна
{
for (; j < i; str[j] = ' ', ++j); //забить пробелами
continue;
};
int k = 0;
while ((k < (i-j)/2) && (str[j + k] == str[i - 1 - k]))
//проверка симметричности
++k;
if (k != (i-j)/2)
//если остановились раньше центрального символа
{
for (; j < i; str[j] = ' ', ++j); // забиваем пробелами
continue;
};
};
cout << str;
getchar();
return (0);
};
Обработка строк в асме
Я написала код на С++, а на асме никак не получается
Код:
помогите, пожалуйста, перевести на ассемблер