0252 - U2 Impare: Difference between revisions
Pagină nouă: ==Cerință== Se dă un număr natural '''n'''. Să se determine cele mai mari două numere impare, mai mici decât '''n'''. ==Date de intrare== Programul citește de la tastatură numărul '''n'''. ==Date de ieșire== Programul afișează pe prima linie a ecranului cele două numere '''impare''' determinate, în ordine '''crescătoare''', separate printr-un spaţiu. ==Restricții și precizări== *4 ≤ '''n''' ≤ 1.000.000.000 ==Exemplul 1== ;Intrare :8 ;Ieșire :5... |
Vardai Erwin (talk | contribs) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 6: | Line 6: | ||
==Date de ieșire== | ==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ă cele două numere '''impare''' determinate, în ordine '''crescătoare''', separate printr-un spaţiu. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse." | |||
==Restricții și precizări== | ==Restricții și precizări== | ||
Line 17: | Line 17: | ||
;Ieșire | ;Ieșire | ||
:Datele de intrare corespund restricțiilor impuse. | |||
:5 7 | :5 7 | ||
Line 31: | Line 31: | ||
# Definim o functie care afiseaza ultimele 2 numere impare precedente numarului introdus | # Definim o functie care afiseaza ultimele 2 numere impare precedente numarului introdus | ||
def | def u2_impare(n): | ||
if n % 2 == 1: # Verificam paritatea numarului | if n % 2 == 1: # Verificam paritatea numarului | ||
print(n - 4, ' ', n - 2) | print(n - 4, ' ', n - 2) | ||
Line 44: | Line 44: | ||
# Afiseaza un mesaj de confirmare a datelor de intrare valide | # Afiseaza un mesaj de confirmare a datelor de intrare valide | ||
print("Datele de intrare corespund restricțiilor impuse.") | print("Datele de intrare corespund restricțiilor impuse.") | ||
# Afiseaza rezultatul apelarii functiei | # Afiseaza rezultatul apelarii functiei u2_impare cu parametrii specificati | ||
u2_impare(n) | |||
else: | else: | ||
# Afiseaza un mesaj de eroare daca datele de intrare nu sunt valide | # Afiseaza un mesaj de eroare daca datele de intrare nu sunt valide | ||
print("Datele de intrare nu corespund restricțiilor impuse.") | print("Datele de intrare nu corespund restricțiilor impuse.") | ||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 18:10, 22 April 2023
Cerință[edit | edit source]
Se dă un număr natural n. Să se determine cele mai mari două numere impare, mai mici decât n.
Date de intrare[edit | edit source]
Programul citește de la tastatură 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." și programul afișează cele două numere impare determinate, în ordine crescătoare, separate printr-un spaţiu. Î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]
- 4 ≤ n ≤ 1.000.000.000
Exemplul 1[edit | edit source]
- Intrare
- 8
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 5 7
Rezolvare[edit | edit source]
Rezolvare ver. 1[edit | edit source]
<syntaxhighlight lang="python" line="1" start="1">
- Definim functia pentru a verifica integritatea datelor
def validare(n):
if 4 <= n <= 1000000000: return True return False
- Definim o functie care afiseaza ultimele 2 numere impare precedente numarului introdus
def u2_impare(n):
if n % 2 == 1: # Verificam paritatea numarului print(n - 4, ' ', n - 2) else: print(n - 3, ' ', n - 1)
if __name__ == "__main__":
n = int(input()) # Introducem un numar de la tastatura # Apelam functia de validare if validare(n): # Afiseaza un mesaj de confirmare a datelor de intrare valide print("Datele de intrare corespund restricțiilor impuse.") # Afiseaza rezultatul apelarii functiei u2_impare cu parametrii specificati u2_impare(n) else: # Afiseaza un mesaj de eroare daca datele de intrare nu sunt valide print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>