0665 - Div Cif
Sursă: [1]
Cerinţa
Se dau două numere naturale numar1, numar2. Determinați câte numere naturale din intervalul [numar1, numar2] se divid cu toate cifrele lor nenule.
Date de intrare
Programul citește de la tastatură numerele numar1, numar2.
Date de ieşire
Programul va afișa pe ecran numărul nr_numere, reprezentând numărul de numere naturale din intervalul [numar1, numar2] care se divid cu toate cifrele lor nenule.
Restricții și precizări
- 1 ⩽ numar1 ⩽ numar2 ⩽ 1.000.000.000
- numar1 - numar2 ⩽ 1.000
Exemplu
- Intrare
- 11 25
- Ieșire
- 6
Explicație
Cele 6 numere din intervalul [11,25] care respectă regula sunt:11 12 15 20 22 24.
Rezolvare
<syntaxhighlight lang="python" line>
numar1, numar2 = map(int, input().split()) k = 0 for i in range(numar1, numar2+1):
x = i
aux = i
y = i
cate = 0
p = 0
while x != 0:
if x % 10 != 0:
if aux % (x % 10) == 0:
cate += 1
p += 1
if x % 10 == 0:
cate += 1
x = x // 10
if p == cate:
k += 1
print(k)
</syntaxhighlight>