0833 - Vârste Copii: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: ==Cerință== Fiind date vârstele a doi copii ('''varsta1''' și '''varsta2''') afișați care dintre ei este cel mai mare și cu cât. ==Date de intrare== Programul citește de la tastatură vârstele celor 2 copii. ==Date de ieșire== Programul va calcula diferența de vârstă x și va afișa pe ecran Primul copil este mai mare cu x ani dacă primul copil are cea mai mare vârstă, Al doilea copil este mai mare cu x ani dacă al doilea copil este cel mai în vârstă s...
 
 
(6 intermediate revisions by 2 users not shown)
Line 7: Line 7:


==Date de ieșire==
==Date de ieșire==
Programul va calcula diferența de vârstă x și va afișa pe ecran Primul copil este mai mare cu x ani dacă primul copil are cea mai mare vârstă, Al doilea copil este mai mare cu x ani dacă al doilea copil este cel mai în vârstă sau Copiii au varste egale dacă x=0.
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul va calcula diferența de vârstă x și va afișa pe ecran 'Primul copil este mai mare cu x ani' dacă primul copil are cea mai mare vârstă, 'Al doilea copil este mai mare cu x ani' dacă al doilea copil este cel mai în vârstă sau 'Copiii au varste egale' dacă x=0. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."


==Restricții de precizări==
==Restricții și precizări==
1 ≤ '''varsta1, varsta2''' ≤ 100
1 ≤ '''varsta1, varsta2''' ≤ 100


Line 18: Line 18:


;Ieșire
;Ieșire
 
:Datele de intrare corespund restricțiilor impuse.
:Al doilea copil este mai mare cu 3 ani
:Al doilea copil este mai mare cu 3 ani


Line 27: Line 27:
===Rezolvare ver. 1===
===Rezolvare ver. 1===
<syntaxhighlight lang="python" line="1" start="1">
<syntaxhighlight lang="python" line="1" start="1">
def validare(varsta1, varsta2):
def validare(varsta1, varsta2): # Definirea functiei pentru validarea varstelor
  return varsta1.isdigit() and 1 <= varsta1 <= 100 and varsta2.isdigit() and 1 <= varsta2 <= 100
    return varsta1.isdigit() and 1 <= int(varsta1) <= 100 and varsta2.isdigit() and 1 <= int(varsta2) <= 100




def varsta(varsta1, varsta2):
def varsta(varsta1, varsta2): # Definirea functiei pentru compararea varstelor
  if varsta1 > varsta2:
    if varsta1 > varsta2:
      print("Primul copil este mai mare cu", varsta1 - varsta2, " ani.")
        print("Primul copil este mai mare cu", varsta1 - varsta2, " ani.")
  elif varsta1 == varsta2:
    elif varsta1 == varsta2:
      print("Copiii au varste egale")
        print("Copiii au varste egale")
  else:
    else:
      print("Al doilea copil este mai mare cu", varsta2 - varsta1, " ani.")
        print("Al doilea copil este mai mare cu", varsta2 - varsta1, " ani.")




if __name__ == '__main__':
if __name__ == '__main__':
    # Citirea varstelor de la utilizator
     varsta1 = input("Introduceti varsta 1: ")
     varsta1 = input("Introduceti varsta 1: ")
     varsta2 = input("Introduceti varsta 2: ")
     varsta2 = input("Introduceti varsta 2: ")
 
    # Verificarea validitatii datelor de intrare si afisarea mesajului corespunzator
  if validare(varsta1, varsta2):
    if validare(varsta1, varsta2):
         varsta1, varsta2 = int(varsta1), int(varsta2)
         varsta1, varsta2 = int(varsta1), int(varsta2)
         print("Datele de intrare corespund restricțiilor impuse.")
         print("Datele de intrare corespund restricțiilor impuse.")
        # Apelarea functiei pentru compararea varstelor
         varsta(varsta1, varsta2)
         varsta(varsta1, varsta2)
     else:
     else:
         print("Datele de intrare nu corespund restricțiilor impuse.")
         print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>
</syntaxhighlight>

Latest revision as of 16:41, 22 April 2023

Cerință[edit]

Fiind date vârstele a doi copii (varsta1 și varsta2) afișați care dintre ei este cel mai mare și cu cât.

Date de intrare[edit]

Programul citește de la tastatură vârstele celor 2 copii.

Date de ieșire[edit]

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul va calcula diferența de vârstă x și va afișa pe ecran 'Primul copil este mai mare cu x ani' dacă primul copil are cea mai mare vârstă, 'Al doilea copil este mai mare cu x ani' dacă al doilea copil este cel mai în vârstă sau 'Copiii au varste egale' dacă x=0. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

Restricții și precizări[edit]

1 ≤ varsta1, varsta2 ≤ 100

Exemplul 1[edit]

Intrare
5 8
Ieșire
Datele de intrare corespund restricțiilor impuse.
Al doilea copil este mai mare cu 3 ani

Explicație[edit]

S-au citit vârstele celor 2 copii(5 și 8). Deoarece al doilea copil e mai mare cu 3 ani decât primul se afișează Al doilea copil este mai mare cu 3 ani.

Rezolvare[edit]

Rezolvare ver. 1[edit]

<syntaxhighlight lang="python" line="1" start="1"> def validare(varsta1, varsta2): # Definirea functiei pentru validarea varstelor

   return varsta1.isdigit() and 1 <= int(varsta1) <= 100 and varsta2.isdigit() and 1 <= int(varsta2) <= 100


def varsta(varsta1, varsta2): # Definirea functiei pentru compararea varstelor

   if varsta1 > varsta2:
       print("Primul copil este mai mare cu", varsta1 - varsta2, " ani.")
   elif varsta1 == varsta2:
       print("Copiii au varste egale")
   else:
       print("Al doilea copil este mai mare cu", varsta2 - varsta1, " ani.")


if __name__ == '__main__':

   # Citirea varstelor de la utilizator
   varsta1 = input("Introduceti varsta 1: ")
   varsta2 = input("Introduceti varsta 2: ")
   # Verificarea validitatii datelor de intrare si afisarea mesajului corespunzator
   if validare(varsta1, varsta2):
       varsta1, varsta2 = int(varsta1), int(varsta2)
       print("Datele de intrare corespund restricțiilor impuse.")
       # Apelarea functiei pentru compararea varstelor
       varsta(varsta1, varsta2)
   else:
       print("Datele de intrare nu corespund restricțiilor impuse.")

</syntaxhighlight>