В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
zzubaidulloieva
zzubaidulloieva
27.10.2021 15:02 •  Информатика

Pascal abc. ома решил придумать свой признак делимости на 8. ома будет считать что число делится на 8 если существует перестановка цифр числа такая что новое число было без лидирующих нулей и число делится на 8. вас надо сказать делится ли число 8 по правилам омы. формат входных данных в первой строке дано цело число n(1< =n< =10 в третьей степени)длина числа. во второй строка дана строка состоящая из цифр s-число которое надо проверить. формат выходных данных выведите yes если число делится на 8 про правилам омы иначе no. примеры 2 yes 23 3 no 101

Показать ответ
Ответ:
YourMango
YourMango
17.08.2020 07:27

var a:STRING;

i,n,j,k,x,z,y:integer; d:boolean;

begin

readln(n);

read(a);

d:=false;

if (n=1)and (a='8') then d:=true;

if n=2 then begin

x:=ord(a[1]) - 48;

y:=ord(a[2]) - 48;

if((x*10+y) mod 8=0) or

 ((y*10+x) mod 8=0) then d:=true;

end

else

begin

for i:=1 to N-2 do

for j:=i+1 to N-1 do

for k:=i+2 to N do

begin

x:=ord(a[i])-48;

y:=ord(a[j])-48;

z:=ord(a[k])-48;

if((x*4+y*2+z) mod 8=0) or

 ((y*4+x*2+z) mod 8=0) or

 ((y*4+z*2+x) mod 8=0) or

 ((x*4+z*2+y) mod 8=0) or

 ((z*4+y*2+x) mod 8=0) or

 ((z*4+x*2+y) mod 8=0) then d:=true;

 end; end;

 if d then write('YES') else write('NO');

 end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота