0665 - Div Cif

From Bitnami MediaWiki
Revision as of 16:49, 12 March 2023 by Tamas Claudia (talk | contribs) (Pagină nouă: Sursă: [https://www.pbinfo.ro/probleme/665/divcif] == 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, num...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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>