0426 - Baza B
Cerință
Se dă un număr natural numar și o bază de numerație baza. Să se determine cea mai mare cifră a reprezentării lui numar în baza baza.
Date de intrare
Programul citește de la tastatură două numere naturale numar, baza .
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
- 1 ⩽ numar ⩽ 1.000.000.000
- 2 ⩽ baza ⩽ 10
Exemplu
- Intrare
- 878
- 6
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- 4
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1"> def validare_date(numar, baza):
return numar.isdigit() and 1 <= int(numar) <= 10000 and baza.isdigit() and 1 <= int(baza) <= 10
def max_cifra(numar, baza):
max_cifra = 0
while numar > 0: cifra = numar % baza if cifra > max_cifra: max_cifra = cifra numar //= baza
print(max_cifra)
if __name__ == '__main__':
numar = input("Introduceți numărul n: ") baza = input("Introduceți baza de numerație b: ")
if validare_date(numar, baza): numar, baza = int(numar), int(baza) print("Datele de intrare corespund restricțiilor impuse.") max_cifra(numar, baza) else: print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>