You are on page 1of 5

Laboratoarele 9 & 10

#EXERCIȚIUL 1

element=str(input("Text: "))
element=element.replace('.','')
element=element.replace(';','')
element=element.replace(',','')
element=element.replace('!','')
element=element.replace('?','')
propozitie=element.split(' ')
suma=0
suma_m=0
v=[]
for i in propozitie:
if (i.isdigit()) or (i.startswith("-") and i[1:].isdigit()):
v.append(int(i))
for i in v:
if i<0:
suma=suma+i
suma_m=suma_m+abs(i)
print(suma)
print(suma_m)

#EXERCITIUL 2

def is_float(element) -> bool:


try:
float(element)
return True
except ValueError:
return False

element=str(input("Text: "))
element=element.replace(';','')
element=element.replace(',','')
element=element.replace('!','')
element=element.replace('?','')
propozitie=element.split(' ')
suma_int=0
suma_virgula=0
v=[]
k=[]
for i in propozitie:
if (i.isdigit()) or (i.startswith("-") and i[1:].isdigit()):
v.append(int(i))
for i in v:
if isinstance(i, int):
suma_int=suma_int+i

for i in propozitie:
if is_float(i):
k.append(float(i))

for i in k:
if i-int(i)==0:
k.remove(i)

for i in k:
if isinstance(i, float):
suma_virgula=suma_virgula+i
# a
print(suma_int)

#b
print(suma_virgula)

EXERCITIUL 3

import re, string

s = input("Text= ")
result = re.split(r'(?<=[^A-Z].[.?]) +(?=[A-Z])', s)

lungime_cuv_maxxa = 0
minim_cuvinte = 9999

minim_caractere = 9999
prop_minim_caractere = []

prop_minim_cuvinte = []
cuv_maxx = ""
propozitii_3_cuvinte = []
subst_proprii = -len(result) - 1
propozitii_fara_primul_cuv = []
primul_ultimul_cuv = []
lista_caractere = []

for prop in result:


for i in prop:
if i in string.punctuation:
if i not in lista_caractere:
lista_caractere.append(i)

prop = re.sub(r'[^\w\s]', '', prop)

propozitii_fara_primul_cuv.append(re.sub(r'^\W*\w+\W*', '',
prop))

nr_cuvinte = 0
nr_caractere = 0

primul_cuv = False
ultimul_cuv = ""

for cuv in prop.split():


ultimul_cuv = cuv

if primul_cuv == False:
primul_ultimul_cuv.append(cuv)
primul_cuv = True

nr_cuvinte += 1

if len(cuv) > lungime_cuv_maxxa:


lungime_cuv_maxxa = len(cuv)
cuv_maxx = cuv

for caracter in cuv:


nr_caractere += 1

if cuv[0].isupper():
subst_proprii += 1

primul_ultimul_cuv.append(ultimul_cuv)

if nr_cuvinte == 3:
propozitii_3_cuvinte.append(prop)

if nr_caractere < minim_caractere:


minim_caractere = nr_caractere
prop_minim_caractere = prop

if nr_cuvinte < minim_cuvinte:


minim_cuvinte = nr_cuvinte
prop_minim_cuvinte = prop

lista_cuvinte_maxxe = []
frc_cuv = {}

for prop in result:


prop = re.sub(r'[^\w\s]', '', prop)

for cuv in prop.split():


if len(cuv) == lungime_cuv_maxxa:
lista_cuvinte_maxxe.append(cuv)

if cuv not in frc_cuv:


frc_cuv.update({cuv: 1})
else:
frc_cuv[cuv] += 1

frecventa_aparitie = 0
cuv_frecventa_maxxa = ""

for key in frc_cuv:


if frc_cuv[key] > frecventa_aparitie:
cuv_frecventa_maxxa = key
frecventa_aparitie = frc_cuv[key]

cuvinte_frecventa_maxxa = []

for key in frc_cuv:


if frc_cuv[key] == frecventa_aparitie:
cuvinte_frecventa_maxxa.append(key)
print("a")
print(prop_minim_caractere)
print(" ")
print("b")
print(prop_minim_cuvinte)
print(" ")
print("c")
print(cuv_maxx)
print(" ")
print("d")
print(lista_cuvinte_maxxe)
print(" ")
print("e")
print(frc_cuv)
print(" ")
print("f")
print(cuv_frecventa_maxxa)
print(" ")
print("g")
print(cuvinte_frecventa_maxxa)
print(" ")
print("h")
print(propozitii_3_cuvinte)
print(" ")
print("i")
print(subst_proprii)
print(" ")
print("j")
print(propozitii_fara_primul_cuv)
print(" ")
print("k")
print(primul_ultimul_cuv)
print(" ")
print("l")
print(len(lista_caractere))

#EXERCITIUL 4

dict={}
n=int(input("Cati elevi?: "))
luni={'01':int(0),'02':0,'03':
0,'04':0,'05':0,'06':0,'07':0,'08':0,'09':0,'10':0,'11':0,'12':0}

for i in range(n):
k=str(input("Data nasterii: "))
v=str(input("Nume elev: "))
dict[k]=v

for j in luni:
for i in dict:
if j == i[3:5]:
luni[j]=luni[j]+1

luna=max(luni, key=luni.get)
print("Cei mai multi elevi sunt nascuti in luna: "+luna)
print("Elevii se numesc: ")
for i in dict:
if i[3:5] == luna:
print(dict[i])

You might also like