Информатика c++. ! //необходимо найти "почти-палиндромы" //будем считать "почти-палиндромом" такой палиндром, симметрия в котором нарушена не более чем в одном символе. например: //acbaa - "почти-палиндром", aabbaa - палиндром , acbeq - не палиндром и не "почти-палиндром". // //входные данные: //на вход программе сначала подается число n (натуральное). //затем следует n непустых строк. //выходные данные: //программа должна вывести все введенные палиндромы и "почти-палиндромы". //example: //input: //5 //adam aba acbaa abba qwerty //output //aba acbaa abba
begin
var s:=ReadInteger('n=').ToString.JoinIntoString('');
Writeln('Цифр в числе- ',s.Length);
Writeln('Сумма цифр- ',s.Select(d->Integer.Parse(d)).Sum);
Writeln('Последняя цифра- ',s.Last);
Writeln('Первая цифра- ',s.First);
Writeln('Предпоследняя цифра- ',s[s.Length-1]);
var m:=ReadInteger('m=');
Write('Сумма ',m,' последних цифр числа- ');
Writeln(s.Skip(s.Length-m).Select(d->Integer.Parse(d)).Sum);
Write('Цифра 3 в запись числа ');
if Pos('3',s)>0 then Writeln('входит')
else Writeln('не входит');
Writeln('Число в обратном порядке- ',s.Reverse.JoinIntoString(''));
Writeln('Перестановка первой и последней цифр- ',
s.Last+Copy(s,2,s.Length-2)+s.First);
end.
Тестовое решение:
n= 1063
Цифр в числе- 4
Сумма цифр- 10
Последняя цифра- 3
Первая цифра- 1
Предпоследняя цифра- 6
m= 2
Сумма 2 последних цифр числа- 9
Цифра 3 в запись числа входит
Число в обратном порядке- 3601
Перестановка первой и последней цифр- 3061