Python - No me funciona un bucle como quiero que funcione

 
Vista:

No me funciona un bucle como quiero que funcione

Publicado por Kali (1 intervención) el 24/11/2020 00:12:02
1
2
3
4
5
6
7
8
9
10
11
12
13
14
palabra = input("ingrese una palabra: ")
i = 0
suma = 0
 
while i < len(palabra) :
    if 'h' in palabra:
        suma = suma + 1
    if 'o' in palabra:
        suma = suma + 4
    if 'l' in palabra:
        suma = suma + 1
    if 'a' in palabra:
        suma = suma + 3
print(suma)

Que debo hacer para que cuando escriba "hola" me devuelva un 9? :c
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 48
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

No me funciona un bucle como quiero que funcione

Publicado por JoAnCa (12 intervenciones) el 24/11/2020 02:40:41
Para empezar, estas en un ciclo infinito, ya que i=0 siempre sera menor que len(palabra) siempre que ingreses cualquier palabra o letra.

Tienes que establecer el valor de i para que termine el while

Agrega la siguiente linea al final del while

i += suma

El código quedaría así:

1
2
3
4
5
6
7
8
9
10
while i < len(palabra):
    if 'h' in palabra:
        suma = suma + 1
    if 'o' in palabra:
        suma = suma + 4
    if 'l' in palabra:
        suma = suma + 1
    if 'a' in palabra:
        suma = suma + 3
    i += suma

Y te devolverá 9
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar