0102 - Suma cifre zeci și unități

De la Universitas MediaWiki

Sursa: 0102 - Suma cifre zeci și unități

Cerință

Să se scrie un program care citeşte de la tastatură un număr natural numar cu cel puţin două cifre şi determină suma dintre cifra zecilor şi cifra unităţilor numărului citit.

Date de intrare

Programul va citi de la tastatură un număr natural numar.

Date de ieșire

În cazul în care datele de intrare nu corespund restricțiilor impuse, se va afișa mesajul "Datele de intrare nu corespund restricțiilor impuse.". În cazul în care datele de intrare corespund restricțiilor impuse, se va afișa mesajul "Datele de intrare corespund restricțiilor impuse.", pe următorul rând afișându-se un număr suma, reprezentând suma dintre cifra zecilor şi cea a unităţilor numărului numar.

Restricții și precizări

  • numar ∈ ℕ
  • 9 < numar < 1.000.000.000

Exemplu

Intrare
2012
Ieșire
Datele introduse corespund restricțiilor impuse.
3


Intrare
asd
Ieșire
Datele introduse nu corespund restricțiilor impuse.


Intrare
-20
Ieșire
Datele introduse nu corespund restricțiilor impuse.


Intrare
2.25
Ieșire
Datele introduse nu corespund restricțiilor impuse.

Rezolvare

Rezolvare ver. 1

def validare_date(date):
    return date.isdigit() and 1 < len(date) < 10
    # metoda .isdigit() returnează valoarea True dacă șirul dat este format doar din cifre (0 - 9)
    # functia len() furzinează lungimea șirului dat


def suma_zeci_unitati(numar):
    # cifra unităților se obține prin împărțirea cu rest a numărului introdus la 10
    cif_unitati = numar % 10
    
    # cifra zecilor se obține prin împărțirea întreagă a numărului introdus la 10, urmată de împărțirea cu rest a numărului la 10
    cif_zeci = numar // 10 % 10

    # suma cerută se obține prin adunarea celor două valori anterior obținute
    suma = cif_unitati + cif_zeci

    # afișarea rezultatului
    print(suma)


if __name__ == "__main__":
    date_intrare = input()
    
    if validare_date(date_intrare):
        print("Datele de intrare corespund restricțiilor impuse.")
        date_intrare = int(date_intrare)
            suma_zeci_unitati(date_intrare)
    else:
        print("Datele de intrare nu corespund restricțiilor impuse.")