Новые сообщения · Правила  
  • Страница 1 из 1
  • 1
Модератор форума: Berestovskiy  
Найти порядковый номер наибольшего по значению числа...
Найти порядковый номер наибольшего по значению числа, являющегося симметричным в десятичном представлении
1 | Автор: pavlgd | 2015-11-18, 20:23   |  Репутация: [ + 0 ]
Код
function Pal(S: String): Boolean;
//(C) Puporev
begin
  if Length(S) <= 1{если 0 или 1 символ, это палиндром} Then
    Pal := True
  Else
    Pal := (S[1] = S[Length(S)]) and Pal(Copy(S, 2, Length(S) - 2));
  {иначе проверяем совпадение символов симметрично от концов строки к середине}
end;

var
  s: string;
  i, max: byte;

begin
  {Найти порядковый номер наибольшего по значению числа, являющегося
  симметричным в десятичном представлении}
  max := 0;
  readln(s);
  if pal(s) then
  begin
    for i := 1 to length(s) do
      if StrToInt(s[i]) > max then
        max := StrToInt(s[i]);
    writeln('Max = ', max)
  end
  else
    writeln('Число не симметрично.');
end.
2 | Автор: babax | 2015-11-18, 20:46   |  Репутация: [ + 5 ]
  • Страница 1 из 1
  • 1
Поиск: