1310 - Cif Div: Difference between revisions
No edit summary |
Vardai Erwin (talk | contribs) |
||
| (One intermediate revision by the same user not shown) | |||
| Line 5: | Line 5: | ||
Programul citește de la tastatură numerele '''n și m'''. | Programul citește de la tastatură numerele '''n și m'''. | ||
==Date de ieșire== | ==Date de ieșire== | ||
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul afișează pe ecran valoarea cerută. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse." | |||
==Restricții de precizări== | ==Restricții de precizări== | ||
*100 ⩽ '''n, m''' ⩽ 999 | *100 ⩽ '''n, m''' ⩽ 999 | ||
| Line 28: | Line 29: | ||
def | def cif_div(n, m): #verificăm câte nr din n sunt divizibile cu m | ||
count = 0 #contorizăm nr de numere | count = 0 #contorizăm nr de numere | ||
for i in range(3): #verificarea se face pentru primele 3 cifre ale lui n, de la dreapta la stânga | for i in range(3): #verificarea se face pentru primele 3 cifre ale lui n, de la dreapta la stânga | ||
| Line 46: | Line 47: | ||
n, m = int(n), int(m) | n, m = int(n), int(m) | ||
print("Datele introduse corespund restricțiilor impuse.") | print("Datele introduse corespund restricțiilor impuse.") | ||
cif_div(n, m) | |||
else: | else: | ||
print("Datele introduse nu corespund restricțiilor impuse.") | print("Datele introduse nu corespund restricțiilor impuse.") | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Latest revision as of 18:25, 22 April 2023
Cerință
Se citesc două numere naturale n și m format din trei cifre fiecare. Să se afle câte cifre din n divid pe m.
Date de intrare
Programul citește de la tastatură numerele n și m.
Date de ieșire
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul afișează pe ecran valoarea cerută. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții de precizări
- 100 ⩽ n, m ⩽ 999
Exemplul 1
- Intrare
- 600
- 273
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 2
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1"> def validare(n, m):
return n.isdigit() and 100 <= int(n) <= 999 and m.isdigit() and 100 <= int(m) <= 999
def cif_div(n, m): #verificăm câte nr din n sunt divizibile cu m
count = 0 #contorizăm nr de numere
for i in range(3): #verificarea se face pentru primele 3 cifre ale lui n, de la dreapta la stânga
digit = n % 10
n //= 10
if digit % m == 0: #dacă condițile sunt îndeplinite se mai adaugă un nr la contor
count += 1
print(f"Există {count} cifre din n care divid pe m.")
if __name__ == '__main__':
n = input("Introduceți primul număr: ")
m = input("Introduceți al doilea număr: ")
if validare(n, m):
n, m = int(n), int(m)
print("Datele introduse corespund restricțiilor impuse.")
cif_div(n, m)
else:
print("Datele introduse nu corespund restricțiilor impuse.")
</syntaxhighlight>