2606 - Luni Rămase

From Bitnami MediaWiki
Revision as of 16:47, 29 April 2023 by Tuca Liviu Razvan (talk | contribs) (Pagină nouă: ==Cerință== Se citește de la tastatură un '''număr natural''' ce reprezintă o lună a anului (dacă citim 3 ne referim la a treia lună, deci Martie). Programul va afișa (câte unul pe rând) numele '''lunilor rămase''' în acel an după cea citită. Se garantează că se introduce de la intrare o valoare cuprinsă între '''1 și 11'''. ==Date de intrare== Programul citește de la tastatură un număr '''l'''. ==Date de ieșire== Dacă datele sunt introduse corect,...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerință[edit | edit source]

Se citește de la tastatură un număr natural ce reprezintă o lună a anului (dacă citim 3 ne referim la a treia lună, deci Martie). Programul va afișa (câte unul pe rând) numele lunilor rămase în acel an după cea citită. Se garantează că se introduce de la intrare o valoare cuprinsă între 1 și 11.

Date de intrare[edit | edit source]

Programul citește de la tastatură un număr l.

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ă pe ecran câte una pe rând, cu inițială mare, lunile rămase după cea cu numărul citit.Î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]

  • 1 ≤ l ≤ 11

Exemplul 1[edit | edit source]

Intrare
9
Ieșire
Datele de intrare corespund restricțiilor impuse.
Octombrie
Noiembrie
Decembrie

Rezolvare[edit | edit source]

Rezolvare ver. 1[edit | edit source]

<syntaxhighlight lang="python" line="1" start="1"> def validare(l):

   if 1 <= l <= 11:
       return True
   return False


def luni_ramase(l):

   if l == 1:
       print("Februarie\nMartie\nAprilie\nMai\nIunie\nIulie\nAugust\nSeptembrie\nOctombrie\nNoiembrie\nDecembrie")
   elif l == 2:
       print("Martie\nAprilie\nMai\nIunie\nIulie\nAugust\nSeptembrie\nOctombrie\nNoiembrie\nDecembrie")
   elif l == 3:
       print("Aprilie\nMai\nIunie\nIulie\nAugust\nSeptembrie\nOctombrie\nNoiembrie\nDecembrie")
   elif l == 4:
       print("Mai\nIunie\nIulie\nAugust\nSeptembrie\nOctombrie\nNoiembrie\nDecembrie")
   elif l == 5:
       print("Iunie\nIulie\nAugust\nSeptembrie\nOctombrie\nNoiembrie\nDecembrie")
   elif l == 6:
       print("Iulie\nAugust\nSeptembrie\nOctombrie\nNoiembrie\nDecembrie")
   elif l == 7:
       print("August\nSeptembrie\nOctombrie\nNoiembrie\nDecembrie")
   elif l == 8:
       print("Septembrie\nOctombrie\nNoiembrie\nDecembrie")
   elif l == 9:
       print("Octombrie\nNoiembrie\nDecembrie")
   elif l == 10:
       print("Noiembrie\nDecembrie")
   elif l == 11:
       print("Decembrie")


if __name__ == "__main__":

   l = int(input())
   if validare(l):
       print("Datele de intrare corespund restricțiilor impuse.")
       luni_ramase(l)
   else:
       print("Datele de intrare nu corespund restricțiilor impuse.")

</syntaxhighlight>

Explicatie[edit | edit source]

Acest cod este o implementare a unei funcții care primește o valoare întreagă l și determină luna sau lunile rămase într-un an, începând cu luna dată de l.

Funcția validare(l) verifică dacă l se află în intervalul [1, 11] și returnează True dacă da și False în caz contrar.

Funcția luni_ramase(l) afișează luna sau lunile rămase în anul curent, începând cu luna dată de l. Fiecare condiție elif verifică luna curentă și afișează luna sau lunile rămase. De exemplu, dacă l este 5, atunci afișează lunile de la iunie până în decembrie.

În if __name__ == "__main__":, utilizatorul introduce valoarea întreagă l prin intermediul funcției input(). Dacă valoarea introdusă este validă, se afișează "Datele de intrare corespund restricțiilor impuse." și apoi funcția luni_ramase(l) este apelată pentru a afișa luna sau lunile rămase. În caz contrar, se afișează "Datele de intrare nu corespund restricțiilor impuse."