0209 - Elim Cif: Difference between revisions
Pagină nouă: == Cerința == Să se scrie un program care citeşte de la tastatură un număr natural cu exact trei cifre şi determină numărul obţinut prin eliminarea cifrei din mijloc. == Date de intrare == Programul va citi de la tastatură un număr natural '''num'''. == Date de ieșire == Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse". În următorul rând se va afişa pe ecran un număr '''num_fara_cifra_mijloc''', reprezentând numărul obţinu... |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 7: | Line 7: | ||
În următorul rând se va afişa pe ecran un număr '''num_fara_cifra_mijloc''', reprezentând numărul obţinut prin eliminarea cifrei din mijloc a numărului '''num'''. | În următorul rând se va afişa pe ecran un număr '''num_fara_cifra_mijloc''', reprezentând numărul obţinut prin eliminarea cifrei din mijloc a numărului '''num'''. | ||
În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul " | În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Nu au fost respectate cerintele impuse". | ||
== Restricții și precizări == | == Restricții și precizări == | ||
* 99 < '''num''' < 1000 | * 99 < '''num''' < 1000 | ||
Line 26: | Line 26: | ||
<syntaxhighlight lang="python" line> | <syntaxhighlight lang="python" line> | ||
# 0209 - ElimCif | # 0209 - ElimCif | ||
def | def validare(num): | ||
num | # Daca datele sunt invalide v-om face raise la eroarea ValueError | ||
if not (num > 99 and num < 1000): | |||
raise ValueError | |||
def eliminare_cifra_mijloc(num): | |||
# Convertim num in string | |||
string_num = str(num) | |||
# Luam characterul 0 (adica prima cifra) | |||
# si caracterul 1 (adica ultima cifra), si le adunam | |||
# Adunarea a doua string-uri in Python inseamna ca | |||
# ele se lipesc unul de altul, ex. "test" + "test2" = "testtest2" | |||
# Dupa ce avem string-ul cu cele doua numere | |||
# (inafara numerului din mijloc), il convertim in int | |||
num_fara_cifra_mijloc = int(string_num[0] + string_num[-1]) | |||
print(num_fara_cifra_mijloc) | |||
if __name__ == '__main__': | if __name__ == '__main__': | ||
eliminare_cifra_mijloc() | # Citim de la tastatura numerele cerute | ||
num = int(input()) | |||
# Verificam daca datele introduse sunt valide | |||
# daca nu afisam mesajul corespunsador | |||
try: | |||
validare(num) | |||
except ValueError: | |||
print("Nu au fost respectate cerintele impuse") | |||
else: | |||
print("Datele de intrare corespund restricțiilor impuse") | |||
eliminare_cifra_mijloc(num) | |||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 11:13, 23 May 2023
Cerința[edit | edit source]
Să se scrie un program care citeşte de la tastatură un număr natural cu exact trei cifre şi determină numărul obţinut prin eliminarea cifrei din mijloc.
Date de intrare[edit | edit source]
Programul va citi de la tastatură un număr natural num.
Date de ieșire[edit | edit source]
Pe ecran se va afișa mesajul: "Datele de intrare corespund restricțiilor impuse". În următorul rând se va afişa pe ecran un număr num_fara_cifra_mijloc, reprezentând numărul obţinut prin eliminarea cifrei din mijloc a numărului num.
În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Nu au fost respectate cerintele impuse".
Restricții și precizări[edit | edit source]
- 99 < num < 1000
Exemplu 1[edit | edit source]
- Intrare
- 123
- Ieșire
- Datele de intrare corespund restricțiilor impuse
- 13
Exemplu 2[edit | edit source]
- Intrare
- 1000
- Ieșire
- Nu au fost respectate cerintele impuse
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line>
- 0209 - ElimCif
def validare(num):
# Daca datele sunt invalide v-om face raise la eroarea ValueError
if not (num > 99 and num < 1000): raise ValueError
def eliminare_cifra_mijloc(num):
# Convertim num in string string_num = str(num)
# Luam characterul 0 (adica prima cifra) # si caracterul 1 (adica ultima cifra), si le adunam # Adunarea a doua string-uri in Python inseamna ca # ele se lipesc unul de altul, ex. "test" + "test2" = "testtest2" # Dupa ce avem string-ul cu cele doua numere # (inafara numerului din mijloc), il convertim in int num_fara_cifra_mijloc = int(string_num[0] + string_num[-1])
print(num_fara_cifra_mijloc)
if __name__ == '__main__':
# Citim de la tastatura numerele cerute num = int(input())
# Verificam daca datele introduse sunt valide # daca nu afisam mesajul corespunsador try: validare(num) except ValueError: print("Nu au fost respectate cerintele impuse") else: print("Datele de intrare corespund restricțiilor impuse")
eliminare_cifra_mijloc(num)
</syntaxhighlight>