Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы:
— символ «?» означает ровно одну произвольную цифру;— символ «*» означает любую последовательность цифр произвольной длины; в том числе «*» может задавать и пустую последовательность.
Например, маске 123*4?5 соответствуют числа 123405 и 12300425.
Найдите все натуральные числа, не превышающие 1010, которые соответствуют маске 4*4736*1 и делятся на 7993 без остатка. В ответе запишите в первом столбце таблицы все найденные числа в порядке возрастания, а во втором столбце – соответствующие им результаты деления этих чисел на 7993.
Решение: напишем программу на языке Phyton
for i in range(55,1252095):
a = i*7993
s = str(a)
if s[0] =='4' and s.find('4736') > 0 and s[-1] =='1':
print(a,i)
Вывод:
44736821 55974064736241 508537
4303247361 538377
4347368721 543897
4447361151 556407
4473658121 559697
4794736931 599867
Ответ:
44736821 55974064736241 508537
4303247361 538377
4347368721 543897
4447361151 556407
4473658121 559697
4794736931 599867
Комментариев нет:
Отправить комментарий