3349 - Putere1: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
== Cerință == | == Cerință == | ||
Se dau numerele naturale '''b n p'''. Determinați numărul format din ultimele p cifre ale lui <math>b^n</math>. | Se dau numerele naturale '''b n p'''. Determinați numărul format din ultimele '''p''' cifre ale lui <math>b^n</math>. | ||
== Date de intrare == | == Date de intrare == | ||
Programul citește de la tastatură numerele '''b n p'''. | Programul citește de la tastatură numerele '''b n p'''. |
Revision as of 06:46, 18 March 2023
Cerință
Se dau numerele naturale b n p. Determinați numărul format din ultimele p cifre ale lui .
Date de intrare
Programul citește de la tastatură numerele b n p.
Date de ieșire
Programul va afișa pe ecran numărul format din ultimele p cifre ale lui .
Restricții de precizări
- 1 ⩽ b ⩽ 1000000000
- 1 ⩽ n ⩽ 2^31
- 1 ⩽ p ⩽ 9
Exemplul 1
- Intrare
- 2
- 10
- 2
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 24
Exemplul 2
- Intrare
- 123456789
- 5
- 3
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 521
Rezolvare vers. 1
<syntaxhighlight lang="python" line="1" start="1"> def validare(b, n, p):
return b.isdigit() and 1 <= int(b) <= 1000000000 return n.isdigit() and 1 <= int(n) <= 2 ^ 31 return p.isdigit() and 1 <= int(p) <= 9
def putere(b, n, p):
b_str = str(b) last_p_digits = b_str[-p:] last_p_digits_int = int(last_p_digits) result = (b ** n) % (10 ** p)
print("Numarul format din ultimele {p} cifre ale lui {b} la puterea {n} este {result}.")
if __name__ == '__main__':
b = int(input("Introduceti numarul b: ")) n = int(input("Introduceti puterea n: ")) p = int(input("Introduceti numarul de cifre dorit: "))
if validare(b, n, p):
b, n, p = int(b), int(n), int(p) print("Datele introduse corespund restricțiilor impuse.") putere(n, b, p)
else:
print("Datele introduse nu corespund restricțiilor impuse.")
</syntaxhighlight>