Даны символы s1, s2, ... Известно, что символ s1 отличен от точки и что среди s2, s3, ... имеется хотя бы одна точка. Пусть s1, ... , sn—символы, предшествующие первой точке (n заранее неизвестно). Получить:
а) последовательность sn, sn-1, ... , s1;
б) последовательность s1, s3, ... , sn, если n—нечетное, и последовательность s2, s4, ... , sn, если n—четное.
Answers & Comments
Verified answer
Язык программирования не указан, потому - самый простой вариант - программа на паскале. Даже на паскале задачу можно решать различными способами - с массивом, без массива, со строками, без строк. Опять-таки, самый простой вариант - со строками.var s,p:string; n,i:integer;
begin
writeln('Введите символы:');
readln(s);
n:=pos('.',s)-1;
writeln('n = ',n);
p:='';
for i:=1 to n do p:=s[i]+p;
writeln('а)');
writeln(p);
p:='';
if n mod 2 = 0 then i:=2 else i:=1;
while i<=n do
begin
p:=p+s[i];
i:=i+2;
end;
writeln('б)');
writeln(p);
end.
Пример:
Введите символы:Даны символы s1, s2, ... Известно, что символ s1 отличен от точки
n = 21
а)
,2s ,1s ыловмис ынаД
б)
Дн ивл 1 2