Ir al contenido principal

Ejercicio 42:


Un texto está bien parentizado si por cada paréntesis abierto hay otro más adelante que lo cierra. Por ejemplo, la cadena:
‘Esto (es (un) (ejemplo (de) ((cadena) bien)) parentizada).’
Está bien parentizada, pero no lo están estas otras:
‘una cadena)’, ‘(una cadena’, ‘(una (cadena)’, ‘)una (cadena’
Diseña un programa que lea una cadena y nos diga si la cadena está bien o mal parentizada.

#Solución 

entrada = "Esto (es (un) (ejemplo (de) ((cadena) bien)) parentizada)."
pf = 0; sf = 0; iniciar = None
entrada2 = []
for i in entrada:
    if i == ')':
        entrada2.append(i)
        pf += 1
    if i == '(':
        entrada2.append(i)
        sf += 1

if pf == sf:
    u = len(entrada2)-1   
    while u >= 0:
        if entrada2[u]== ')':
            entrada2.pop(u)
            iniciar = True
        if iniciar:
            l = len(entrada2)-1
            if l == -1:
                print('está mal parentizada'); break;
            elif l == 0:
                print('está bien parentizada'); break;
            while iniciar:
                if entrada2[l] == '(':
                    entrada2.pop(l)
                    iniciar = False
                l = l - 1
        u = len(entrada2)-1
        if entrada2[u]== '(':
            print('está mal parentizada'); break;
else:
    print('está mal parentizada');
 
Ayudanos a resolver más ejercicios!
https://www.paypal.com/paypalme/CwilVargas?locale.x=es_XC  

Comentarios

Entradas populares de este blog

Ejercicio 7:

Haz un programa que pida al usuario una cantidad de euros, una tasa de interés y un número de años. Muestra por pantalla en cuánto se habrá convertido el capital inicial transcurridos esos años si cada año se aplica la tasa de interés introducida. Recuerda que un capital de C euros a un interés del x por cien durante n años se convierten en C · (1 + x/100) ** n euros. (Prueba tu programa sabiendo que una cantidad de 10,000 € al 4.5 % de interés anual se convierte en 24,117.14 € al cabo de 20 años). #Solución #Entrada de datos c = float(input("Ingrese la cantidad de Euros: ")) x = float(input("Ingrese la tasa de interés: ")) n = int(input("Ingrese el # de años: ")) #Proceso Tdinero = c * (1 + x/100) ** n #Salida print("El capital final es de: ", Tdinero, "Euros.")   Ayudanos a resolver más ejercicios! https://www.paypal.com/paypalme/CwilVargas?locale.x=es_XC  

Ejercicio 21:

Diseña un programa que, dado un número real que debe representar la calificación numérica de un examen, proporcione la calificación cualitativa correspondiente al número dado. La calificación cualitativa será una de las siguientes: «Suspenso» (nota menor que 5), «Aprobado» (nota mayor o igual que 5, pero menor que 7), «Notable» (nota mayor o igual que 7, pero menor que 9), «Sobresaliente» (nota mayor o igual que 9, pero menor que 10), «Matrícula de Honor» (nota 10). #Solución #Entrada de Datos note = float(input("enter your note")) msg="" #Proceso if note < 5:     msg = "Suspenso" if note < 7 and note >= 5:     msg = "Aprobado" if note < 9 and note >= 7:     msg = "Notable" if note == 9 :     msg = "Sobresaliente" if note == 10 :     msg = "Matricula de Honor" if note < 0 or note > 10:     msg = "Note not valid" #Salida print(msg)    ...

Ejercicio 27:

Haz un programa que vaya leyendo números hasta que el usuario introduzca un número negativo. En ese momento, el programa mostrará por pantalla el número mayor de cuantos ha visto. #Solución n= int(input("Ingrese un numero:\n ")) mayor = n while True:     if n > 0:         print(n)         n= int(input("Ingrese un numero:\n "))         if n > mayor:             mayor = n     else:         print("Se terminò el mayor es: ", mayor);break   Ayudanos a resolver más ejercicios! https://www.paypal.com/paypalme/CwilVargas?locale.x=es_XC