Sentencia WHILE Qué es un bucle while?

Anuncio
Sentencia WHILE
Con esta sentencia vamos a conseguir que un trozo de código se repita en un bucle mientras que se
cumpla una condición. Veamos un ejemplo:
>>> n = 0
>>> while n < 10:
>>>
print "Numero: " + str(n)
>>>
n = n + 1
Expliquemos un poco este código. Lo primero que hacemos es crear una variable que la igualamos a 0.
En la segunda línea comienza nuestro bucle. Ponemos la palabra reservada "while", a continuación
nuestra condición y por último ponemos ":". A partir de aquí se va a repetir el código indentado
(código que forma parte de nuestro bucle) mientras esa condición sea verdadera. Nuestro ejemplo lo
que hace es imprimir el número por pantalla y luego sumamos 1 a la variable "n". Como resultado
tenemos esto:
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
Numero:
Numero:
Numero:
Numero:
Numero:
Numero:
Numero:
Numero:
Numero:
Numero:
0
1
2
3
4
5
6
7
8
9
En el momento que la variable llegue a "10" la condición no se cumple y por tanto sale del bucle, y en
nuestro caso sale de nuestro programa.
Al igual que en las condiciones en IF podemos utilizar diferentes operadores y "and" y "or" para poder
tener varias condiciones en una misma sentencia WHILE.
Tienes que entender la importancia en el código de la línea "n = n + 1". Si no se pusiera esa línea la
condición siempre se cumpliría por lo que entraríamos en un bucle infinito y nuestro programa se
quedaría bloqueado.
Qué es un bucle while?
La instrucción while permite definir bucles. En un bucle while cada vez que se va a repetir el bucle se
comprueba si efectivamente hay que repetirlo.
La sintaxis del bucle while es la siguiente:
while condicion:
cuerpo del bucle, que se repetirá mientras la condición sea cierta.
EJERCICIOS – Utilizando el While
1. Realice una función que calcule la siguiente operación:
XY
2. Realice una función que dice si un número es primo o no. (Un número primo es aquel que solamente
es divisible por la unidad (1) y él mismo)
Hint. ¿Cómo sabemos si un número a es divisible por un número b?
–a%b=0
a es divisible por b
–a%b 0
a no es divisible por b
3. Utilizando la función anterior, calcule e imprima todos los número primos del 1 al 100
4. Escriba un programa para jugar a adivinar un número (el computador "piensa" el número y el
usuario tiene que adivinarlo). El programa empieza pidiendo entre qué números está el número a
adivinar, se "inventa" un número al azar y después el usuario va probando valores y el programa va
diciendo si son demasiado grandes o pequeños.
Nota: Para generar el número a adivinar utilice la función randrange(mínimo, máximo, paso) del
módulo random. Para poder utilizar la función randrange tiene que incluir en el programa la
instrucción siguiente:
from random import randrange
Ej.
>>> from random import randrange
>>> randrange(1, 100, 2)
11
>>> randrange(1, 100, 2)
67
Ejemplo de Salida del Programa:
Valor mínimo: 0
Valor máximo: 100
A ver si adivinas un número entero entre 0 y 100.
Escribe un número: 20
¡Demasiado pequeño! Inténtalo de nuevo: 30
¡Demasiado grande! Inténtalo de nuevo: 27
¡Acertaste! Te ha costado 3 intentos
Descargar