Sunteți pe pagina 1din 9

Alte exercitii pclp


class Pacient:
def __init__(self, nume, varsta, boala, severitate):
self.nume = nume
self.varsta = varsta
self.boala = boala
self.severitate = severitate

def afisare(self):
print(f"Nume: {self.nume}; Varsta: {self.varsta}; Boala: {self.boala}; Severitate:
{self.severitate}")

def verificare_scor(self):
if self.severitate in [1, 2]:
print(f"Pacientul {self.nume} ce suferă de {self.boala} necesită programare urgentă")
elif self.severitate in [3, 4]:
print(f"Pacientul {self.nume} ce suferă de {self.boala} necesită programare")
elif self.severitate == 5:
print(f"Pacientul {self.nume} ce suferă de {self.boala} necesită programare, dar nu
prezintă o urgență")

class Programare(Pacient):
pass
# Exemplu de utilizare a claselor
pacient1 = Pacient("John Doe", 30, "gripă", 2)
pacient1.afisare()
pacient1.verificare_scor()

pacient2 = Programare("Jane Smith", 45, "diabet", 4)


pacient2.afisare()
pacient2.verificare_scor()

n=int(input("Introduceti dimensiunea listei:"))


lista=[]
i=0
while i<n:
nr=int(input("Introduceti un nr:"))
if nr%2==0:
lista.append(nr)
i+=1
else:
print("Valoarea introdusa e incorecta")
print("Lista citita este: {}".format(lista))
s=0
while True:
nr=int(input("Introduceti un numar intreg pozitiv:"))
if nr<0:
print("Numarul introdus nu este pozitiv")
break
s+=nr
print("S+{}={}".format(nr,s))
print("Ultima valoare a sumei este {}".format(s))

ce reda Introduceti un numar intreg pozitiv:12


S+12=12
Ultima valoare a sumei este 12
Introduceti un numar intreg pozitiv:14
S+14=26
Ultima valoare a sumei este 26
Introduceti un numar intreg pozitiv:16
S+16=42
Ultima valoare a sumei este 42
Introduceti un numar intreg pozitiv:18
S+18=60
Ultima valoare a sumei este 60
Introduceti un numar intreg pozitiv:-1
Numarul introdus nu este pozitiv

n=int(input("Introduceti dimensiunea dictionarului:"))


d={}
for i in range(n):
cheie=input("Introduceti cheia:")
valoare=input("Introduceti valoarea:")
d[cheie]=valoare
chei_tuplu=tuple(d.keys())
valori_tuplu=tuple(d.values())
print("Dictionarul este {}:".format(d))
print("Tuplul cu chei este{}:".format(chei_tuplu))
print("Tuplul cu valori este{}:".format(valori_tuplu))

ce reda
Introduceti dimensiunea dictionarului:3
Introduceti cheia:"Stent"
Introduceti valoarea:'Cobalt-Crom'
Introduceti cheia:"Manusi"
Introduceti valoarea:Latex
Introduceti cheia:Bara
Introduceti valoarea:fier
Dictionarul este {'"Stent"': "'Cobalt-Crom'", '"Manusi"': 'Latex',
'Bara': 'fier'}:
Tuplul cu chei este('"Stent"', '"Manusi"', 'Bara'):
Tuplul cu valori este("'Cobalt-Crom'", 'Latex', 'fier'):
n=int(input("Introduceti dimensiunea dictionarului:"))
d={}
for i in range(n):
cheie=input("Introduceti cheia:")
valoare=input("Introduceti valoarea:")
d[cheie]=valoare
print("Dictionarul este{}:".format(d))

n = int(input("Introduceți dimensiunea listei: "))

lista = []

for i in range(n):
biomaterial = input("Introduceți un biomaterial: ")
lista.append(biomaterial)
par = tuple(item for item in lista if len(item) % 2 == 0)
impar = tuple(item for item in lista if len(item) % 2 != 0)
print("Lista este:{}".format(lista))
print("Tuplul cu biomateriale formate dintr-un număr par de caractere:{}".format(par))
print("Tuplul cu biomateriale formate dintr-un număr impar de caractere:{}".format(impar))

fruits={'apple': 0.40, 'orange': 0.35, 'banana': 0.25, 'kiwi':0.50}


#in dictionarul fruits, 'apple', 'orange', 'banana' si 'kiwi' reprezinta cheile
#0.40, 0.35, 0.25, 0.50 sunt valorile asociate cheilor
for i,j in fruits.items():
print("i={} si j={}".format(i,j))

s=m=0
a,b=eval(input("Introduceti 2 numere intregi cu a<b:"))
if a<b:
print("afisarea numerelor in ordine crescatoare:")
for i in range(a,b+1):
print(i,end=' ')
print("afisarea numerelor in ordine descrescatoare:")
for i in range(b,a-1,-1):
print(i,end=' ')
print("media aritmetica a numerelor din intervalul [{},{}] este:".format(a,b))
for i in range(a,b+1):
s+=i
m=s/(b-a+1)
print(m)

lista=[]
nr=int(input("Introduceti un numar intreg: "))
while nr>=0:
lista.append(nr)
nr=int(input("Introduceti un numar intreg: "))
print(lista)

def main():
n=int(input("Introduceti un numar intreg, n (in intervalul [0, 100])>>"))
while n<0 or n>100:
print("Numarul nu apartine intervalului")
n=int(input("Introduceti un numar intreg, n (in intervalul [0, 100])>>"))
if n>0:
fact=1
for i in range(2,n+1):
fact*=i
else:
fact=1
print("Factorialul lui {} este {}".format(n,fact))
main()

#ex 3 lab 3
for i in range(10,100):
if i%4==0:
print(i,end=' ')

#ex 3 lab 3
for i in range(10,100):
if i%4==0:
print(i,end=' ')

#ex 5 lab 3
s=0
n=int(input("n="))
for i in range(1,n):
s=s+(1/(1+i))
print(s)

#ex 6 lab 3
s=0
p=1
n=int(input("n="))
for i in range(1,n+1):
for j in range(1,i):
p=p*i
s=s+p
print(s)

#ex2 Colocviu ex
def farmacie(l_med,l_stoc,med):
d={}
for i in range(len(l_med)):
d[l_med[i]]=l_stoc[i]
print(d)
if med in d:
cantitate=d[med]
if cantitate >500:
print("este un stoc mare de medicamente")
else:
print("stoc redus")
else:
print("Medicamentul nu exista")
n=int(input("Dimensiunea listei de medicamente este:"))
l_med=[]
l_stoc=[]
for i in range(n):
med=input("Introduceti numele medicamentului:")
stoc=int(input("Stoc medicament:"))
l_med.append(med)
l_stoc.append(stoc)
med=input("Introduceti numele medicamentului cautat:")
print(l_med)
print(l_stoc)
farmacie(l_med,l_stoc,med)

#ex1 colocviu sub1


#facem o functie
a=int(input("Introduceti numarul a:"))
b=int(input("Introduceti numarul b:"))
def cifre_pare(nr):
for cifra in str(nr):
if int(cifra)%2 != 0:
return False
return True
print("Numerele cu cifre pare in intervalul [{},{}]:".format(a,b))
for nr in range(a,b+1):
if cifre_pare(nr):
print(nr,end=' ')

#ex1 colocviu sub1


#facem o functie
def cifre_pare(nr):
for cifra in str(nr):
if int(cifra)%2 != 0:
return False
return True
a=int(input("Introduceti numarul a:"))
b=int(input("Introduceti numarul b:"))
print("Numerele cu cifre pare in intervalul [{},{}]:".format(a,b))
for nr in range(a,b+1):
if cifre_pare(nr):
print(nr,end=' ')

def verifica_analize(analize):
limite_normale={"Glucoza":(70,115), "Uree":(15,50), "Magneziu":(1.8,2.6),"Sodiu":
(142,150)}
for test, rezultat in analize.items():
limite=limite_normale.get(test)
if limite:
if limite[0]<=rezultat<=limite[1]:
print("Rezultatul analizei {test}={rezultat} se afla in limite normale")
else:
print("Rezultatul analizei {test}={rezultat} nu se afla in limite normale")
n=eval(input("Introduceti dimensiune dictionar:"))
analize={}
for i in range(n):
test=input("Introduceti numele testului:")
rezultat=eval(input("Introduceti rezultatul testului:"))
analize[test]=rezultat

s=0
nr=0
while nr>=0:
s+=nr
nr=eval(input("Introduceti un numar:"))
print("Suma numerelor introduse este",s)
if nr<0:
print("numarul introdus nu e pozitiv")

Partial
Nr 1
Ex 3
Tens_sis = [117, 120, 149, 139, 125, 107, 137, 112, 134]
medie_tens = []
check_tens = []

# Calcularea mediilor zilnice și verificarea valorilor


for i in range(0, len(Tens_sis), 3):
zi = Tens_sis[i:i+3]
media = sum(zi) / len(zi)
medie_tens.append(round(media, 1))
if media <= 120:
check_tens.append("da")
else:
check_tens.append("nu")

print("medie_tens =", medie_tens)


print("check_tens =", check_tens)

Nr. 9 1. Fie dicționarul pacient={"varsta": 18, "inaltime":159, "greutate":67, "puls":78, "sis":110,


"dia":67} Scrieți instrucțiunea de afişare corespunzătoare pentru afişarea unui şir formatat ca
în exemplu: "Pacientul în vârstă de 18 ani, având o înălțime de 159 cm şi o greutate de 67
kilograme are pulsul 78 bpm şi tensiunea 110/67 mm Hg
2.Ce se va afişa în urma execuției următoarelor linii de cod: A="Medical Device"
B=A[0:6] 3
X=len(A)+B.count("a")-(A+B).index("d")
print(X)
3.A) Fie o listă de valori ale pulsului unui pacient colectate la fiecare patru ore (pentru n zile
vom avea 6*n valori ale pulsului în listä). Scrieți un program care să calculeze media pulsului
pacientului pe fiecare zi şi media pulsului pacientului pe fiecare săptămână. B) Completați
programul anterior astfel încât să populați un dicţionar. Acesta va avea următoarele chei:
"medie_puls_zi" şi ,,medie_puls_saptamana". Asignați valorilor (values) mediile calculate.

1. pacient = {"varsta": 18, "inaltime": 159, "greutate": 67, "puls": 78, "sis": 110, "dia": 67}
afisare = "Pacientul în vârstă de {varsta} ani, având o înălțime de {inaltime} cm și o greutate
de {greutate} kilograme are pulsul {puls} bpm și tensiunea {sis}/{dia} mm Hg"
print(afisare.format(**pacient))

2.
B va fi Medical3 (primele 6 caractere din A + stringul "3").
B.count("a") va fi 0, deoarece în B nu există litera "a".
(A + B) va fi Medical DeviceMedical3.
(A + B).index("d") va fi 3, deoarece prima poziție a literei "d" în șirul combinat este la
indexul 3.
len(A) + B.count("a") - (A + B).index("d") va fi 12 + 0 - 3 = 10.

3 a)
puls = [80, 75, 85, 90, 70, 75, 80, 85, 90, 80, 75, 85] # Exemplu de liste de valori ale pulsului

medie_puls_zi = []
medie_puls_saptamana = []

# Calcularea mediei pulsului pe fiecare zi


for i in range(0, len(puls), 6):
zi = puls[i:i+6]
media_zi = sum(zi) / len(zi)
medie_puls_zi.append(media_zi)

# Calcularea mediei pulsului pe fiecare săptămână


for i in range(0, len(puls), 42):
saptamana = puls[i:i+42]
media_saptamana = sum(saptamana) / len(saptamana)
medie_puls_saptamana.append(media_saptamana)
print("medie_puls_zi =", medie_puls_zi)
print("medie_puls_saptamana =", medie_puls_saptamana)

b) Pentru a completa dicționarul cu valorile calculate, putem crea un dicționar gol și să


asignăm mediile calculate la cheile corespunzătoare.

dict_puls = {}

dict_puls["medie_puls_zi"] = medie_puls_zi
dict_puls["medie_puls_saptamana"] = medie_puls_saptamana

print(dict_puls)

nr 10

2. Programul următor calculează și afișează o listă cu valorile unice din lista hr folosind
funcția set().
python
hr = [60, 80, 85, 120, 160, 151, 130, 110, 85, 85, 85, 80]
valori_unice = list(set(hr))
print(valori_unice)

3. Programul următor verifică dacă valorile temperaturii din lista temperatura sunt cuprinse în
intervalul 37-38°C. Apoi, calculează media zilnică a temperaturii și adaugă valorile mai mici
decât pragul de 37°C în lista temp_norm.

temperatura = [36.1, 37.2, 38.5, 37.0, 36.3, 36.7, 38, 37.1]


media_temp = []
temp_norm = []

zi = []
suma = 0

for temp in temperatura:


if 37 <= temp <= 38:
zi.append(temp)
else:
if zi:
media = sum(zi) / len(zi)
media_temp.append(media)
zi = []
temp_norm.append(temp)

if zi:
media = sum(zi) / len(zi)
media_temp.append(media)

print("media_temp =", media_temp)


print("temp_norm =", temp_norm)

Rezultatul afișat va fi:

media_temp = [37.2, 37.025]


temp_norm = [36.1, 36.3, 38, 36.7]

S-ar putea să vă placă și