Python - Ejercicio Algoritmo de busqueda lineal

 
Vista:

Ejercicio Algoritmo de busqueda lineal

Publicado por eder.ariza (5 intervenciones) el 28/09/2018 07:37:11
Hola saludos

Tengo un problema me piden un ejercicio que ya he resuelto pero quiero realizarlo con el ciclo while y no se como trabajar listas con el ciclo while

Lo he realizado con el ciclo for

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
'Algoritmo de busqueda lineal'
 
#Lista asignada
L=[-50,-45,-23,-21,-14,-9,-2,0,1,3,5,16,17,24,29,30,40,52,53,92]
 
#Aviso para ingresar los numeros exigidos en el laboratorio
print("Numeros exigidos en el laboratorio | -45 | -21 | 0 | 92 | 100 |")
 
#Variable de entrada - Para ingresar los valores solicitados en el laboratorio
n=int(input("Ingrese uno de los valores exigidos en el laboratorio: "))
 
#Variable de asignacion en caso de que el resultado sea verdadero
Ban1="Verdadero"
 
#Variable de asignacion en caso de que el resultado sea falso
Ban2="Falso"
 
#Variable contador - Cuenta el numero de veces que se repite el ciclo - Iniciada en 0
suma=0
 
#Ciclo for - Recorre de 1 a 1 la lista L
for i in L:
 
    #Variable contador - Actualiza al contador con cada ciclo
    suma=suma+1
 
    #Condicional - Si en el ciclo i es igual a n el ciclo se interrumpe
    if i==n:
        break
 
#Condicional - Determina si el valor ingresado esta en la lista
#El valor ingresado esta en la lista
if i==n:
 
    #Afirmacion verdadera
    print(Ban1,"El numero",n,"se encuentra en la lista")
 
    #Numero de iteraciones
    print("El numero de iteraciones es:",suma)
 
#El valor ingresado no esta en la lista
else:
 
    #Afirmacion falsa
    print(Ban2,"El numero",n,"no se encuentra en la lista")
 
    #Numero de iteraciones
    print("El numero de iteraciones es:",suma)


Por favor me puedes ayudar... no es para tarea pues la he hecho... pero para un proxima ocasion y satisfaccion personal quiero saber como realizarlo en ciclo while

pues mira lo he intentado asi con while pero no encuentro el numero de iteraciones

1
2
3
4
5
6
7
8
9
10
11
12
13
14
um=int(input("Ingrese uno de los valores exigidos en el laboratorio: "))
 
i=0
suma=0
while num in L:
 
    i=i+1
    suma=suma+
    print(num)
    print(i)
    print(suma)
 
    if num in L:
        break



Gracias
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: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Ejercicio Algoritmo de busqueda lineal

Publicado por tincopasan (1082 intervenciones) el 28/09/2018 11:22:25
la verdad no entendí bien que queres hacer, pero igual hice este código por si te sirve:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#-*- coding: utf -8 -*-
L=[-50,-45,-23,-21,-14,-9,-2,0,1,3,5,16,17,24,29,30,40,52,53,92]
print("Numeros exigidos en el laboratorio | -45 | -21 | 0 | 92 | 100 |")
n=int(input("Ingrese uno de los valores exigidos en el laboratorio: "))
contador=0
posicion= 0
while contador < len(L):
    if L[contador] == n:
        posicion=contador
    contador+=1
 
if posicion != 0:
    print("el número {} se encuentra en la lista en el lugar {}".format(n,posicion+1))
else:
    print("el número {} no se encuentra en la lista".format(n))
Saludos
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