# Practica 4. Utilización try...except:

## Ejercicio.

Introducir tres números positivos.

## Análisis:

* Pedir el número.
* Verificar que esté sea un dato válido, es decir, número y  mayor que cero.

### **Diagrama**

![](https://156834076-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M3CsDMenpAVuNy6kou5%2F-M3Fprb-3ksmwmOEY3E-%2F-M3FqI_32cuj1FQKVVsn%2Fdiagrama_numero.jpg?alt=media\&token=df50de8f-166a-42d8-9b02-bb56edbfb77a)

## Datos iguales

Se deben pedir tres números, y se debe verificar que para cada datos introduciodo sea un número entero y además mayor que cero.  Se utilizará `try`...`except`

```python
try:
   Código (pedir el número)
excpet:
   Código, en caso de error
```

### Código común

```
cierto=True
while cierto:
    try:
          numero=int(input("Teclea el número"))
          if numero >1:        
               cierto=False
               print("Has introducido un número correcto")
          else:
               print("Haste tecleado un número menor que uno")
    except:
            print("Has introducido una letra")

```

Se observa que si el usuario introduce una letra, aparece un error de ejecución y esté debe evitarse. El diagrama quedaría:

![](https://156834076-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M3CsDMenpAVuNy6kou5%2F-M3Fprb-3ksmwmOEY3E-%2F-M3FqNuyGqWslzou63ZX%2Fdiagrama2.jpg?alt=media\&token=6eb47aa6-8254-49e2-9306-464e3c444152)

## Código completo

Para que el código lo pueda utilizar los tres números, dado que es lo mismo, se debe crear una funcion `def`, que en este caso se llama `valida`, en la cuál se le envia un `mensaje`, diferente, en función del número que se le pide, y regresa el número validado `return numero`, que se convetirá en tres números diferentes `n1`,`n2`,`n3`.

```python
def validar(mensaje):
    cierto=True
    while cierto:
        try:
              numero=int(input(mensaje))
              if numero >1:        
                   cierto=False
              else:
                   print("haste tecleado un número menor que uno")
        except:
                print("has introducido una letra")
    return numero
n1=validar('Dame el primer número===>')
n2=validar('Dame el segundo número===>')
n3=validar('Dame el tercero===>')

```

## Probarlo

{% embed url="<https://colab.research.google.com/drive/1HN2jxZ4qhvuGY6cBz7IWT6rwK57wlQo6>" %}
