3480 - 9 Ian: Difference between revisions
No edit summary |
Vardai Erwin (talk | contribs) |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
==Cerință== | ==Cerință== | ||
Se dă un număr natural '''n'''. Calculați '''ultima cifră''' a lui <math>9^n</math>. | Se dă un număr natural '''n'''. Calculați '''ultima cifră''' a lui '''<math>9^n</math>'''. | ||
==Date de intrare== | ==Date de intrare== | ||
Line 6: | Line 6: | ||
==Date de ieșire== | ==Date de ieșire== | ||
Fișierul de ieșire '''9lan.out''' va conține '''ultima cifră''' a lui <math>9^n</math>. | Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse.". Fișierul de ieșire '''9lan.out''' va conține '''ultima cifră''' a lui '''<math>9^n</math>'''. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse." | ||
==Restricții | ==Restricții și precizări== | ||
0 ≤ '''n''' ≤ 100.000 | 0 ≤ '''n''' ≤ 100.000 | ||
==Exemplul 1== | ==Exemplul 1== | ||
; | ;9lan.in | ||
:6 | :6 | ||
; | ;9lan.out | ||
:1 | :1 | ||
;Ieșire | |||
:Datele de intrare corespund restricțiilor impuse. | |||
==Rezolvare== | ==Rezolvare== | ||
Line 41: | Line 44: | ||
if __name__ == '__main__': | if __name__ == '__main__': | ||
# Citirea valorii n din fișierul de intrare. | # Citirea valorii n din fișierul de intrare. | ||
with open(' | with open('9lan.in', 'r') as fin: | ||
n = int(fin.readline().strip()) | n = int(fin.readline().strip()) | ||
Line 52: | Line 55: | ||
# Calcularea și scrierea rezultatului în fișierul de ieșire. | # Calcularea și scrierea rezultatului în fișierul de ieșire. | ||
result = ultima_cifra(n) | result = ultima_cifra(n) | ||
with open(' | with open('9lan.out', 'w') as fout: | ||
fout.write(str(result)) | fout.write(str(result)) | ||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 17:49, 22 April 2023
Cerință[edit | edit source]
Se dă un număr natural n. Calculați ultima cifră a lui .
Date de intrare[edit | edit source]
Fișierul de intrare 9lan.in conține pe prima linie numărul n.
Date de ieșire[edit | edit source]
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse.". Fișierul de ieșire 9lan.out va conține ultima cifră a lui . În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții și precizări[edit | edit source]
0 ≤ n ≤ 100.000
Exemplul 1[edit | edit source]
- 9lan.in
- 6
- 9lan.out
- 1
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
Rezolvare[edit | edit source]
Rezolvare ver. 1[edit | edit source]
<syntaxhighlight lang="python" line="1" start="1">
- Funcție pentru validarea valorii n.
def validare(n):
if 0 <= n <= 100000: return True else: return False
- Funcție pentru calcularea ultimei cifre a lui 9^n.
def ultima_cifra(n):
if n % 2 == 0: return 1 else: return 9
if __name__ == '__main__':
# Citirea valorii n din fișierul de intrare. with open('9lan.in', 'r') as fin: n = int(fin.readline().strip())
# Validarea valorii n. if not validare(n): print("Datele de intrare nu corespund restricțiilor impuse.") else: print("Datele de intrare corespund restricțiilor impuse.")
# Calcularea și scrierea rezultatului în fișierul de ieșire. result = ultima_cifra(n) with open('9lan.out', 'w') as fout: fout.write(str(result))
</syntaxhighlight>