var b,i,z,k: integer;
a: array[1..10000] of integer;
begin
read(b);
z: =0;
k: =0;
while b> 0 do
begin
z: =z+1;
a[z]: = b mod 10;
b: =b div 10;
end;
for i: =2 to z-1 do
if a[i]=a[i-1] or a[i]=a[i+1] then
k: =1;
if k=1 then writeln (‘да’)
else writeln (‘нет’);
end.
второй способ:
var a,b,c: integer;
begin
read(a);
k: =0;
c: =10; // это должно быть обязательно число, но не цифра
while a > 0 do
begin
b: =a mod 10;
a: =a div 10;
if b=c then k: =1;
c: =b;
end;
if k=1 then writeln (‘да’)
else (‘нет’);
end.
ответ: на 5.
Правило (вполне очевидное): если число 5 умножить на любое нечетное число, то полученное число на конце будет иметь тоже 5 (1*5=5; 3*5=15; 5*5=25; 7*5=35; 9*5=45). [При умножении на 5 число всегда будет оканчиваться на 0 или на 5, но произведение нечетных чисел не может дать четного, в частности, заканчивающегося на ноль]
А так как в произведении будет присутствовать 5, то оно будет умножаться на нечетные числа много-много раз, и в конце полученного произведения (огромного!) будет стоять цифра 5.