0447 - Cif Mid

De la Universitas MediaWiki

Cerință

Se citește de la tastatură un număr natural de 3 cifre, distincte. Să se afișeze pe ecran cifra din mijloc, ca valoare.

Date de intrare

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

Date de ieșire

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul afișează pe ecran cifra care nu este nici minimă și nici maximă.În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

Restricții și precizări

  • Numărul citit de la tastatură este natural, de 3 cifre

Exemplul 1

Intrare
397
Ieșire
Datele de intrare corespund restricțiilor impuse.
7

Rezolvare

Rezolvare ver. 1

def validare(numar):
    """
    Verifică dacă numărul dat respectă restricțiile impuse.

    Args:
        numar (int): Numărul de verificat.

    Returns:
        bool: True dacă numărul respectă restricțiile, False în caz contrar.
    """
    if 99 < numar < 1000:  # verificăm dacă numărul este între 99 și 1000 (dar nu inclusiv)
        return True
    return False


def cifra_din_mijloc(numar):
    """
    Afișează cifra din mijloc a unui număr natural de trei cifre, distincte.

    Args:
        numar (int): Numărul de trei cifre de verificat.

    Returns:
        int: Cifra din mijloc a numărului.
    """
    # Extragem cifrele numărului
    sute = numar // 100
    zeci = numar % 100 // 10
    unitati = numar % 10

    # Găsim cifra din mijloc
    if sute > zeci:
        if zeci > unitati:
            return zeci
        elif sute > unitati:
            return unitati
    elif sute > unitati:
        return sute
    elif zeci > unitati:
        return unitati


if __name__ == "__main__":
    numar = int(input("Introduceti un numar natural: "))  # citim numărul de la tastatură
    if validare(numar):  # dacă numărul respectă restricțiile impuse
        print("Datele de intrare corespund restricțiilor impuse.")
        print(cifra_din_mijloc(numar))  # afișăm cifra din mijloc
    else:
        print("Datele de intrare nu corespund restricțiilor impuse.")  # afișăm un mesaj de eroare