0907 - AfisareNumerePare1: Difference between revisions

From Bitnami MediaWiki
 
(4 intermediate revisions by 2 users not shown)
Line 2: Line 2:


Scrieți definiția completă a funcției Python '''afisare''' care primește doi parametri '''a''' și '''b''' și determină afișarea pe ecran, în ordine crescătoare, numerele naturale pare cuprinse între '''a''' și '''b''', inclusiv acestea.
Scrieți definiția completă a funcției Python '''afisare''' care primește doi parametri '''a''' și '''b''' și determină afișarea pe ecran, în ordine crescătoare, numerele naturale pare cuprinse între '''a''' și '''b''', inclusiv acestea.
==Date de intrare==
Se citesc de la tastatură doi parametri a și b, reprezentând limitele inferioară și superioară ale intervalului de numere naturale pare de afișat.
==Date de ieșire==
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." Funcția nu returnează nimic, ci doar afișează pe ecran, în ordine crescătoare, numerele naturale pare cuprinse între a și b, inclusiv acestea, separate prin câte un spațiu.  În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."


==Restricții de precizări==
==Restricții de precizări==
Line 11: Line 19:


==Exemplu==
==Exemplu==
 
;Intrare
Dacă '''a=7''' și '''b=2''', apelul subprogramului va afișa pe ecran:
:7
 
:2
2 4 6
;Ieșire
:Datele de intrare sunt corecte.
:2 4 6


==Important==
==Important==
Line 24: Line 34:
===Rezolvare ver. 1===
===Rezolvare ver. 1===
<syntaxhighlight lang="python" line="1" start="1">
<syntaxhighlight lang="python" line="1" start="1">
def validare(a, b):
    """
    Verifică dacă valorile primite ca parametri sunt valide.
    """
    if a <= 0 or a > 1000 or b <= 0 or b > 1000:
        return False
    return True
def afisare(a, b):
def afisare(a, b):
     """
     """
Line 29: Line 47:
     """
     """
     # verificam daca valorile primite sunt valide
     # verificam daca valorile primite sunt valide
     if a <= 0 or a > 1000 or b <= 0 or b > 1000:
     if not validare(a, b):
         print("Valorile primite nu sunt valide!")
         print("Valorile primite nu sunt valide!")
         return
         return
Line 47: Line 65:
     a = int(input("numarul 1: "))
     a = int(input("numarul 1: "))
     b = int(input("numarul 2: "))
     b = int(input("numarul 2: "))
     if 0 < a and b <= 1000:
     if validare(a, b):
         print("Datele de intrare sunt corecte.")
         print("Datele de intrare sunt corecte.")
         afisare(a, b)
         afisare(a, b)
     else:
     else:
         print("Datele de intrare sunt incorecte.")
         print("Valorile primite nu sunt valide!")
 






</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 16:46, 6 May 2023

Cerință[edit | edit source]

Scrieți definiția completă a funcției Python afisare care primește doi parametri a și b și determină afișarea pe ecran, în ordine crescătoare, numerele naturale pare cuprinse între a și b, inclusiv acestea.

Date de intrare[edit | edit source]

Se citesc de la tastatură doi parametri a și b, reprezentând limitele inferioară și superioară ale intervalului de numere naturale pare de afișat.

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." Funcția nu returnează nimic, ci doar afișează pe ecran, în ordine crescătoare, numerele naturale pare cuprinse între a și b, inclusiv acestea, separate prin câte un spațiu. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

Restricții de precizări[edit | edit source]

  • numele funcției va fi afisare
  • funcția va avea exact doi parametri: a, respectiv b
  • 0 < a , b <= 1000
  • numerele vor fi afișate pe aceeași linie, separate prin câte un spațiu

Exemplu[edit | edit source]

Intrare
7
2
Ieșire
Datele de intrare sunt corecte.
2 4 6

Important[edit | edit source]

Soluţia propusă va conţine doar definiţia funcţiei cerute. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.


Rezolvare[edit | edit source]

Rezolvare ver. 1[edit | edit source]

<syntaxhighlight lang="python" line="1" start="1"> def validare(a, b):

   """
   Verifică dacă valorile primite ca parametri sunt valide.
   """
   if a <= 0 or a > 1000 or b <= 0 or b > 1000:
       return False
   return True

def afisare(a, b):

   """
   Afiseaza numerele naturale pare cuprinse intre a si b inclusiv acestea, in ordine crescatoare.
   """
   # verificam daca valorile primite sunt valide
   if not validare(a, b):
       print("Valorile primite nu sunt valide!")
       return
   
   # determinam care este numarul mai mic si care este numarul mai mare
   start = min(a, b)
   end = max(a, b)
   
   # afisam numerele pare din intervalul [start, end]
   for i in range(start, end+1):
       if i % 2 == 0:
           print(i, end=" ")
   print()  # afisam un newline la final
  1. exemplu de utilizare a functiei afisare

if __name__ == "__main__":

   a = int(input("numarul 1: "))
   b = int(input("numarul 2: "))
   if validare(a, b):
       print("Datele de intrare sunt corecte.")
       afisare(a, b)
   else:
       print("Valorile primite nu sunt valide!")



</syntaxhighlight>