3349 - Putere1

De la Universitas MediaWiki
Versiunea pentru tipărire nu mai este suportată și poate avea erori de randare. Vă rugăm să vă actualizați bookmarkurile browserului și să folosiți funcția implicită de tipărire a browserului.

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

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul va afișa pe ecran numărul format din ultimele p cifre ale lui . În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

Restricții de precizări

  • 1 ⩽ b ⩽ 1000000000
  • 1 ⩽ n ⩽ 2^31
  • 1 ⩽ p ⩽ 9

Exemplu

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.
949

Rezolvare

Rezolvare vers. 1

def validare(b, n, p):
    # Verifică dacă b, n și p sunt formate doar din cifre și dacă respectă restricțiile impuse
    return b.isdigit() and 1 <= int(b) <= 1000000000 and n.isdigit() and 1 <= int(n) <= 2 ** 31 and p.isdigit() and 1 <= int(p) <= 9


def putere(b, n, p):
    result = str(b ** n)[-p:]  # Calculează rezultatul final ca ultimele p cifre din rezultatul b la puterea n
    print(int(result))


if __name__ == '__main__':
    b = input("Introduceti numarul b: ")
    n = input("Introduceti puterea n: ")
    p = 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(b, n, p)  # Afișează rezultatul final
    else:
        print("Datele introduse nu corespund restricțiilor impuse.")