Будем перебирать символы строки с конца и измерять количество подряд идущих непробельных символов. Если очередной символ - пробел, то следует вывести на экран отрезок строки от предыдущего с конца символа на длину подряд идущих непробельных символов. Это делается с функции copy(). После того как слово будет выведено, надо обнулить фиксируемую длину слова.
Поскольку вывод слова "срабатывает", только когда встречается пробел, то первое слово строки (последнее из найденных при поиске с конца) выведено не будет, если перед ним нет пробела. Поэтому в программе за циклом предусмотрен отдельный вывод последней найденной подстроки.
Программа на языке Паскаль:
var
str: string;
len, i, a: byte;
begin
readln(str);
len := length(str);
a := 0;
for i:=len downto 1 do begin
if str[i] = ' ' then begin
write(copy(str,i+1,a),' ');
a := 0;
end
else
a := a + 1;
end;
write(copy(str,i,a));
writeln;
end.
Пример работы программы:
11 22 33 44 55
55 44 33 22 11
Объяснение:
но я точно не знаю я старался как мог я искал и нашел кажется
Описание переменных:
str - строка;
len - длина строки;
a - длина очередного слова;
i - текущая позиция в строке.
Алгоритм решения задачи:
Будем перебирать символы строки с конца и измерять количество подряд идущих непробельных символов. Если очередной символ - пробел, то следует вывести на экран отрезок строки от предыдущего с конца символа на длину подряд идущих непробельных символов. Это делается с функции copy(). После того как слово будет выведено, надо обнулить фиксируемую длину слова.
Поскольку вывод слова "срабатывает", только когда встречается пробел, то первое слово строки (последнее из найденных при поиске с конца) выведено не будет, если перед ним нет пробела. Поэтому в программе за циклом предусмотрен отдельный вывод последней найденной подстроки.
Программа на языке Паскаль:
var
str: string;
len, i, a: byte;
begin
readln(str);
len := length(str);
a := 0;
for i:=len downto 1 do begin
if str[i] = ' ' then begin
write(copy(str,i+1,a),' ');
a := 0;
end
else
a := a + 1;
end;
write(copy(str,i,a));
writeln;
end.
Пример работы программы:
11 22 33 44 55
55 44 33 22 11
Объяснение:
но я точно не знаю я старался как мог я искал и нашел кажется