0907 - AfisareNumerePare1: Difference between revisions

From Bitnami MediaWiki
No edit summary
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==
*Doi parametri a și b, reprezentând limitele inferioară și superioară ale intervalului de numere naturale pare de afișat.
==Date de ieșire==
* 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.


==Restricții de precizări==
==Restricții de precizări==
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>

Revision as of 17:02, 30 April 2023

Cerință

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

  • Doi parametri a și b, reprezentând limitele inferioară și superioară ale intervalului de numere naturale pare de afișat.

Date de ieșire

  • 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.


Restricții de precizări

  • 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

Dacă a=7 și b=2, apelul subprogramului va afișa pe ecran:

2 4 6

Important

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

Rezolvare ver. 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):

   """
   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>