0826 - CifMinParRec
Cerinţa
Să se scrie o python care să returneze cea mai mică cifră pară a unui număr natural transmis ca parametru.
Date de intrare
Se va introduce de la tastatură un număr natural care va fi transmis ca perimetru
Date de ieșire
Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse." În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Datele de intrare nu corespund restricțiilor impuse.".
Restricţii şi precizări
numele funcției va fi cifminpar
funcția va avea un parametru reprezentând numărul dat
numărul pentru care se calculează cifra minimă pară va fi mai mic decât 2.000.000.000
dacă numărul nu conţine nici o cifră pară, se va returna valoarea -1
Exemplu
cifminpar(2154) este code>2.
cifminpar(1157) este code>-1.
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
def validare_input(n): if not n.isdigit() or int(n) >= 2000000000: return False return True def cifminpar(n): if not validare_input(n): return "Datele de intrare nu corespund restricțiilor impuse." minpar = -1 for cifra in str(n): cifra = int(cifra) if cifra % 2 == 0: if minpar == -1 or cifra < minpar: minpar = cifra return minpar #Putem crea și o funcție main pentru a testa funcția cifminpar: def main(): n = input("Introduceti un numar natural: ") rezultat = cifminpar(n) if isinstance(rezultat, int): if rezultat == -1: print("Numarul nu contine cifre pare.") else: print(f"Cea mai mica cifra para din {n} este {rezultat}.") else: print(rezultat) if __name__ == '__main__': main() #Această funcție va solicita utilizatorului să introducă un număr natural, va apela funcția cifminpar și va afișa rezultatul. Dacă funcția cifminpar întoarce o valoare non-numerică, aceasta va fi afișată direct în consolă.