Нужно написать рабочий код для задачи в паскале.

0 голосов

Нужно написать рабочий код для задачи в паскале.


image

спросил от (37 баллов) в категории Информатика
1 Ответ
0 голосов
ответил от БОГ (150k баллов)
 
Лучший ответ
// PascalABC.NET 3.2, сборка 1362 от 14.12.2016
// Внимание! Если программа не работает, обновите версию!

begin
  var s:=ReadlnString('Введите 17-ричное число с последующей точкой:');
  var p:=Pos('.',s);
  if p=0 then Writeln('точка не найдена')
  else begin
    s:=Copy(s,1,p-1).ToUpper;
    if (s.All(c->c in ['0'..'9','A'..'G'])) then
      // написано корректно, проверем на нечет
      if s.Select(c->c<='9'?c.ToDigit:Ord(c)-Ord('A')+10).Sum.IsOdd<br>      then Writeln('Yes')
      else Writeln('No')
    else Writeln('No')
    end;
end.

Пример
Введите 17-ричное число с последующей точкой: 015C45Ef9a.xyz
Yes
оставил комментарий от (37 баллов)

Я использую сайт перевода чисел и то число оказывается не четно.

оставил комментарий от (37 баллов)

Я тоже видел это правило с суммой но написать программу исходя из него не смог

оставил комментарий от (37 баллов)

Завтра по идее должны исправить.

...