0348 - Afisare Puteri: Difference between revisions

From Bitnami MediaWiki
Paul Ungur (talk | contribs)
Paul Ungur (talk | contribs)
No edit summary
Line 28: Line 28:
         return False
         return False
     return True
     return True


def rezolvare(n, p):
def rezolvare(n, p):
Line 35: Line 36:
         i += 1
         i += 1


def main():
 
if __name__ == "__main__":
     n = int(input("Introduceti n: "))
     n = int(input("Introduceti n: "))
     p = int(input("Introduceti p: "))
     p = int(input("Introduceti p: "))
Line 42: Line 44:
     else:
     else:
         print("Date de intrare invalide")
         print("Date de intrare invalide")
if __name__ == "__main__":
    main()
</syntaxhighlight>
</syntaxhighlight>

Revision as of 15:53, 26 April 2023

Cerinţa:

Se dau două numere naturale nenule n și p. Afișați în ordine crescătoare puterile lui n mai mici sau egale cu p .

Date de intrare:

Programul citește de la tastatură numerele n și p .

Date de ieşire:

Programul afișează pe ecran, în ordine crescătoare, puterile lui n mai mici sau egale cu p , separate prin câte un spațiu.

Restricţii şi precizări:

2 ≤ n ≤ 10 1 ≤ p < 1.000.000.000

Exemplu:

Date de intrare 3 100

Date de ieșire 1 3 9 27 81

Rezolvare

<syntaxhighlight lang="python" line="1"> def validare(n, p):

   if not isinstance(n, int) or not isinstance(p, int):
       return False
   if n <= 1 or p <= 0 or p >= 1000000000:
       return False
   return True


def rezolvare(n, p):

   i = 0
   while n ** i <= p:
       print(n ** i, end=' ')
       i += 1


if __name__ == "__main__":

   n = int(input("Introduceti n: "))
   p = int(input("Introduceti p: "))
   if validare(n, p):
       rezolvare(n, p)
   else:
       print("Date de intrare invalide")

</syntaxhighlight>