No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Try Catch

12/17
Recursos

La estructura de control try / catch eval煤a si un algoritmo contiene errores, para que el flujo del programa no colapse. Dependiendo del lenguaje, puede cambiar su nombre, pero el concepto ser谩 el mismo.

Qu茅 sucede si existe un error en en algoritmo

Recordar谩s que un algoritmo es una serie de pasos para resolver un problema, sin embargo, estas soluciones no son perfectas, por lo que pueden ocasionar fallos en el programa.

Suponiendo que tenemos el siguiente programa:

"L铆nea 1"
"L铆nea 2"
"L铆nea 3"
"L铆nea 4"
"Final del programa"

Los programas eval煤an l铆nea por l铆nea el c贸digo, si no ocurre ning煤n problema, se ejecutar谩n todas hasta el final del programa. Sin embargo, si ocurre un error en determinado lugar, el programa se detendr谩. Por lo tanto, las l铆neas que se encuentren despu茅s del problema, no ser谩n ejecutadas.

"L铆nea 1"
"L铆nea 2"
ERROR

La forma de solucionar esto, es con la estructura try/catch.

C贸mo utilizar la estructura try / catch

Envolvemos en el bloque try las l铆neas de c贸digo que podr铆an provocar un problema, y en caso de que exista un error lo manejaremos en el bloque catch.

"L铆nea 1"
"L铆nea 2"
try
    "L铆nea 3"
catch
    Mostrar "Algo sali贸 mal..."
"L铆nea 4"
"Final del programa"

En el caso de que exista un error, el programa ejecutar谩 una serie de sentencias alternativas, sin detener la ejecuci贸n de las dem谩s l铆neas del c贸digo.

"L铆nea 1"
"L铆nea 2"
"Algo sali贸 mal..."
"L铆nea 4"
"Final del programa"

Esta estructura es similar a un condicional if-else, pero 煤nicamente con errores.

Contribuci贸n creada por Andr茅s Guano (Platzi Contributor).

Aportes 49

Preguntas 10

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

馃専Resumen

Funcionamiento de Try Catch:

  1. Primero, se ejecuta el c贸digo en try {鈥.
  2. Si no hubo errores, se ignora catch (err): la ejecuci贸n llega al final de try y contin煤a, omitiendo catch.
  3. Si se produce un error, la ejecuci贸n de try se detiene y el control fluye al comienzo de catch (e). La variable e (podemos usar cualquier nombre para ella) contendr谩 un objeto de error con detalles sobre lo que sucedi贸.

Try catch -> Plan B bajo la manga

Try catch

  • Instrucci贸n que verifica y cuida la ejecuci贸n de los procesos, en caso de error ejecutar谩 un plan de contingencia.
  • Cuida la l贸gica en caso de que una instrucci贸n haya fallado.

En lenguajes como JAVA, el uso de Try Catch Finally es indispensable para el desarrollo profesional. Es importante tomar en cuenta el uso de excepciones para monitorear errores y saber manejarlos en tiempo de ejecuci贸n.

Compa帽eros,seg煤n mi percepci贸n, la sentencia Try Catch recuerda a cuando vamos a abrir una p谩gina web pero se genera un error de conexi贸n o seguridad, y el sistema nos muestra un mensaje y indicandonos que debemos hacer para poder continuar.

Ejemplo de try catch

Importancia del uso de try catch

El uso de try catch nos da la posibilidad de mostrar al usuario que est谩 ocurriendo con el programa, en caso de presentarse un error y el programa deba finalizar, as铆 evitamos el hecho de que el programa simplemente se interrumpa abruptamente y el usuario no sepa que es lo que est谩 ocurriendo.

Try catch explicado brevemente:

"intenta hacer X pero si fallas has Y

X viene siendo el c贸digo normal que planteamos dentro de nuestro algoritmo

Y es la forma en como vamos a manejar la falla.

Es importante aclarar que esto 煤nicamente se acciona cuando hay un error de EJECUCI脫N y NO de L贸gica

try:
    edad = int(input("Ingresa tu edad: "))
    if edad >= 18:
        print("Eres mayor de edad.")
    else:
        print("Eres menor de edad.")
except:
    print("Ha ocurrido un error al ingresar tu edad.")

En este ejemplo, el programa solicita al usuario que ingrese su edad utilizando la funci贸n input. Luego, intentamos convertir el valor ingresado a un n煤mero entero utilizando la funci贸n int. Si esto tiene 茅xito, comprobamos si la edad ingresada es mayor o igual a 18 utilizando un if, y mostramos un mensaje correspondiente en la pantalla. Sin embargo, si el usuario ingresa un valor que no puede ser convertido a un n煤mero entero, se producir谩 una excepci贸n.

Para manejar esta excepci贸n, utilizamos un bloque try-catch. Dentro del bloque try, intentamos ejecutar el c贸digo que podr铆a generar una excepci贸n. Si se produce una excepci贸n, el programa saltar谩 al bloque except y ejecutar谩 el c贸digo dentro de este bloque, en lugar de detenerse abruptamente con un mensaje de error. En este ejemplo, simplemente imprimimos un mensaje en la pantalla que indica que ha ocurrido un error al ingresar la edad.

Sufro de ansiedad y el hecho de que la profesora escriba en la pantalla me genera mayor ansiedad, no logro concentrarme en lo que dice y como parece que est谩 escribiendo al rev茅s se me hace verdaderamente insoportable. Es una l谩stima porque creo que es la mejor profesora de Platzi.

驴Qu茅 es un dato?

En inform谩tica, un dato es cualquier informaci贸n que puede ser almacenada y procesada por un programa de computadora. Los datos pueden tomar muchas formas diferentes, desde texto y n煤meros hasta im谩genes y sonidos. En general, se considera que los datos son la materia prima con la que trabajan los programas de computadora.

Tipos de datos

Existen varios tipos de datos que se utilizan en programaci贸n, entre los que destacan:

  • Datos de texto: se refieren a cadenas de caracteres que representan palabras, frases, oraciones, etc. Los datos de texto se utilizan ampliamente en aplicaciones como procesadores de texto, correo electr贸nico y redes sociales.
  • Datos num茅ricos: se refieren a valores que representan n煤meros, ya sean enteros o decimales. Estos datos se utilizan en una amplia variedad de aplicaciones, desde c谩lculos matem谩ticos hasta simulaciones cient铆ficas y financieras.
  • Datos booleanos: se refieren a valores que pueden ser verdaderos o falsos. Estos datos se utilizan ampliamente en aplicaciones que requieren toma de decisiones, como la programaci贸n de juegos y sistemas de votaci贸n en l铆nea.
  • Arrays: como se mencion贸 anteriormente, los arrays son estructuras de datos que permiten almacenar una colecci贸n de elementos del mismo tipo en una 煤nica variable. Los arrays son muy utilizados en programaci贸n para almacenar y manipular grandes cantidades de datos de manera eficiente.

Ejemplo de algoritmo de un reloj

A continuaci贸n, se presenta un ejemplo de un algoritmo para mostrar la hora actual en un reloj digital:

  1. Obtener la hora actual del sistema.
  2. Convertir la hora actual a un formato de 24 horas.
  3. Dividir la hora actual en horas, minutos y segundos.
  4. Mostrar las horas, minutos y segundos en un formato de reloj digital.
  5. Esperar un segundo.
  6. Repetir el paso 1.

Este algoritmo utiliza datos num茅ricos para representar las horas, minutos y segundos, as铆 como datos de texto para representar el formato del reloj digital. Adem谩s, utiliza un bucle para repetir continuamente la obtenci贸n y muestra de la hora actual.

驴Qu茅 son las estructuras de control?

Las estructuras de control son instrucciones o bloques de c贸digo que permiten modificar el flujo de ejecuci贸n de un programa de computadora. Es decir, son herramientas que permiten controlar el orden en que se ejecutan las instrucciones del programa, permitiendo tomar decisiones, realizar repeticiones y ejecutar acciones condicionales.

Las estructuras de control son fundamentales en la programaci贸n, ya que permiten escribir programas m谩s complejos y sofisticados que pueden tomar decisiones y realizar acciones de manera aut贸noma. Adem谩s, el uso adecuado de las estructuras de control puede mejorar la eficiencia y eficacia del programa al reducir el n煤mero de instrucciones innecesarias y repetitivas.

Existen tres tipos principales de estructuras de control:

Estructuras condicionales

Las estructuras condicionales permiten tomar decisiones en funci贸n del resultado de una o varias condiciones. La estructura condicional m谩s com煤n es el 鈥渋f鈥 o 鈥渟i鈥 en espa帽ol, que ejecuta una instrucci贸n o bloque de c贸digo solo si se cumple una condici贸n. Tambi茅n existen otras estructuras condicionales como 鈥渆lse鈥 o 鈥渟ino鈥 en espa帽ol, que se ejecutan en caso contrario a la condici贸n establecida en el 鈥渋f鈥, y 鈥渆lse if鈥 o 鈥渟ino si鈥 en espa帽ol, que permiten establecer varias condiciones consecutivas para tomar decisiones m谩s complejas.

Estructuras de repetici贸n

Las estructuras de repetici贸n permiten ejecutar una o varias instrucciones varias veces en funci贸n de una condici贸n. Las estructuras de repetici贸n m谩s comunes son el 鈥渇or鈥 y el 鈥渨hile鈥 en los que se establece una condici贸n y se ejecutan las instrucciones dentro de un bloque de c贸digo hasta que se cumpla o se deje de cumplir dicha condici贸n. Estas estructuras son especialmente 煤tiles cuando se necesitan realizar operaciones repetitivas con datos.

Estructuras de control de excepciones

Las estructuras de control de excepciones permiten manejar errores o situaciones excepcionales en la ejecuci贸n del programa. Las estructuras de control de excepciones m谩s comunes son el 鈥渢ry-catch鈥 o 鈥渋ntenta-captura鈥 en espa帽ol, que intentan ejecutar una instrucci贸n y, si se produce una excepci贸n o error, se ejecuta un bloque de c贸digo para manejar la situaci贸n. Estas estructuras son muy 煤tiles para evitar que los programas se detengan por completo debido a errores inesperados y para manejar errores de manera eficiente.

Estructuras condicionales

Las estructuras condicionales son aquellas que permiten tomar decisiones en funci贸n del resultado de una o varias condiciones. En la programaci贸n, la estructura condicional m谩s com煤n es el 鈥渋f鈥 o 鈥渟i鈥 en espa帽ol, que ejecuta una instrucci贸n o bloque de c贸digo solo si se cumple una condici贸n.

La sintaxis b谩sica de la estructura condicional 鈥渋f鈥 es la siguiente:


if condici贸n:
    instrucci贸n(es)

Donde 鈥渃ondici贸n鈥 es una expresi贸n booleana que eval煤a si se cumple o no una determinada condici贸n, y 鈥渋nstrucci贸n(es)鈥 es una o varias instrucciones que se ejecutar谩n si se cumple la condici贸n.

Tambi茅n existen otras estructuras condicionales, como el 鈥渆lse鈥 o 鈥渟ino鈥 en espa帽ol, que se ejecutan en caso contrario a la condici贸n establecida en el 鈥渋f鈥. La sintaxis b谩sica de la estructura condicional 鈥渋f-else鈥 es la siguiente:


if condici贸n:
    instrucci贸n(es) si se cumple la condici贸n
else:
    instrucci贸n(es) si no se cumple la condici贸n

Adem谩s, existe el 鈥渆lse if鈥 o 鈥渟ino si鈥 en espa帽ol, que permite establecer varias condiciones consecutivas para tomar decisiones m谩s complejas. La sintaxis b谩sica de la estructura condicional 鈥渋f-else if-else鈥 es la siguiente:


if condici贸n1:
    instrucci贸n(es) si se cumple la condici贸n1
elif condici贸n2:
    instrucci贸n(es) si se cumple la condici贸n2
else:
    instrucci贸n(es) si no se cumple ninguna de las condiciones anteriores

Las estructuras condicionales son fundamentales en la programaci贸n, ya que permiten que los programas tomen decisiones de manera aut贸noma y ejecuten instrucciones espec铆ficas en funci贸n de las condiciones establecidas. En general, las estructuras condicionales se utilizan para hacer que el programa sea m谩s inteligente y eficiente en la toma de decisiones, lo que a su vez mejora la experiencia del usuario final.

Algoritmos con variables y condicionales

Los algoritmos con variables y condicionales son aquellos que utilizan variables para almacenar valores y estructuras condicionales para tomar decisiones en funci贸n de esos valores. Estos algoritmos son muy 煤tiles para resolver problemas complejos en la programaci贸n.

A continuaci贸n se presenta un ejemplo de algoritmo con variables y condicionales, que simula el funcionamiento de un sem谩foro:

markdownCopy code
1. Iniciar variable color en "verde"
2. Iniciar variable tiempo en 0
3. Mientras tiempo < 60:
4.     Si color es "verde":
5.         Imprimir "Semaforo en verde"
6.         Incrementar tiempo en 1
7.         Si tiempo >= 60:
8.             Terminar el algoritmo
9.         Si tiempo >= 30:
10.            Cambiar color a "amarillo"
11.    Si color es "amarillo":
12.        Imprimir "Semaforo en amarillo"
13.        Incrementar tiempo en 1
14.        Si tiempo >= 60:
15.            Terminar el algoritmo
16.        Si tiempo >= 45:
17.            Cambiar color a "rojo"
18.    Si color es "rojo":
19.        Imprimir "Semaforo en rojo"
20.        Incrementar tiempo en 1
21.        Si tiempo >= 60:
22.            Terminar el algoritmo
23.        Si tiempo >= 55:
24.            Cambiar color a "verde"

En este algoritmo, se utilizan dos variables: 鈥渃olor鈥, que representa el color actual del sem谩foro, y 鈥渢iempo鈥, que representa el tiempo transcurrido desde que el sem谩foro se puso en verde. El algoritmo inicia con el sem谩foro en verde y el tiempo en 0, y se ejecuta en un ciclo mientras el tiempo sea menor a 60 segundos. En cada iteraci贸n del ciclo, se verifica el color actual del sem谩foro y se imprimen mensajes correspondientes en funci贸n de ese color. Adem谩s, se incrementa el tiempo en 1 segundo en cada iteraci贸n y se cambia el color del sem谩foro si se cumplen ciertas condiciones (por ejemplo, cambiar a amarillo despu茅s de 30 segundos en verde, y a rojo despu茅s de 45 segundos en amarillo). Finalmente, cuando el tiempo llega a 60 segundos, el algoritmo termina.

Este ejemplo muestra c贸mo se pueden utilizar variables y estructuras condicionales para simular un proceso complejo en un programa, lo que puede ser muy 煤til en situaciones reales.

Ciclos

Los ciclos son estructuras de control en programaci贸n que permiten ejecutar una serie de instrucciones repetidamente mientras se cumple una condici贸n determinada. Los ciclos son 煤tiles para procesar grandes cantidades de datos, realizar operaciones matem谩ticas complejas o simplemente para automatizar tareas repetitivas.

Existen dos tipos principales de ciclos en programaci贸n: el ciclo 鈥渨hile鈥 y el ciclo 鈥渇or鈥.

Ciclo while

El ciclo 鈥渨hile鈥 ejecuta una serie de instrucciones repetidamente mientras se cumpla una condici贸n determinada. La sintaxis b谩sica de un ciclo while es la siguiente:


while condici贸n:
    instrucciones

El ciclo while eval煤a la condici贸n al inicio de cada iteraci贸n. Si la condici贸n se cumple, se ejecutan las instrucciones dentro del ciclo. Despu茅s de ejecutar las instrucciones, el ciclo vuelve a evaluar la condici贸n y, si se cumple, se repite el proceso. El ciclo termina cuando la condici贸n no se cumple m谩s.

A continuaci贸n, se presenta un ejemplo de ciclo while que suma los primeros 10 n煤meros naturales:


suma = 0
i = 1

while i <= 10:
    suma += i
    i += 1

print("La suma de los primeros 10 n煤meros naturales es:", suma)

En este ejemplo, el ciclo while se repite mientras la variable 鈥渋鈥 sea menor o igual a 10. En cada iteraci贸n, se suma el valor de 鈥渋鈥 a la variable 鈥渟uma鈥, y se incrementa el valor de 鈥渋鈥 en 1. Despu茅s de que el ciclo termina, se imprime el valor final de la variable 鈥渟uma鈥.

Ciclo for

El ciclo 鈥渇or鈥 es una estructura de control que permite iterar sobre una secuencia de elementos (como una lista o una cadena de caracteres) y ejecutar una serie de instrucciones para cada elemento de la secuencia. La sintaxis b谩sica de un ciclo for es la siguiente:


for variable in secuencia:
    instrucciones

En cada iteraci贸n del ciclo for, la variable 鈥渧ariable鈥 toma el valor de uno de los elementos de la secuencia y se ejecutan las instrucciones dentro del ciclo. Despu茅s de ejecutar las instrucciones, el ciclo avanza al siguiente elemento de la secuencia y repite el proceso hasta que se han procesado todos los elementos.

A continuaci贸n, se presenta un ejemplo de ciclo for que imprime los elementos de una lista de frutas:


frutas = ["manzana", "banana", "kiwi", "naranja"]

for fruta in frutas:
    print(fruta)

En este ejemplo, el ciclo for itera sobre la lista de frutas y en cada iteraci贸n, la variable 鈥渇ruta鈥 toma el valor de uno de los elementos de la lista y se imprime en la consola.

En resumen, los ciclos son estructuras de control en programaci贸n que permiten repetir una serie de instrucciones mientras se cumple una condici贸n determinada. Los ciclos 鈥渨hile鈥 y 鈥渇or鈥 son los tipos principales de ciclos en programaci贸n y son 煤tiles para procesar grandes cantidades de datos y automatizar tareas repetitivas.

Algoritmos con ciclos

Aqu铆 hay algunos ejemplos de algoritmos que utilizan ciclos:

  1. Suma de n煤meros: Este algoritmo pide al usuario un n煤mero n y calcula la suma de todos los n煤meros enteros desde 1 hasta n utilizando un ciclo for.

Inicio
  Leer n
  suma = 0
  Para i desde 1 hasta n hacer
    suma = suma + i
  FinPara
  Mostrar suma
Fin

  1. Factorial de un n煤mero: Este algoritmo pide al usuario un n煤mero n y calcula su factorial utilizando un ciclo while.

Inicio
  Leer n
  factorial = 1
  i = 1
  Mientras i <= n hacer
    factorial = factorial * i
    i = i + 1
  FinMientras
  Mostrar factorial
Fin

  1. Tabla de multiplicar: Este algoritmo pide al usuario un n煤mero n y muestra su tabla de multiplicar del 1 al 10 utilizando un ciclo for anidado.

Inicio
  Leer n
  Para i desde 1 hasta 10 hacer
    producto = n * i
    Mostrar n, " x ", i, " = ", producto
  FinPara
Fin

  1. B煤squeda en una lista: Este algoritmo busca un elemento espec铆fico en una lista y devuelve su 铆ndice utilizando un ciclo for.

Inicio
  lista = [2, 4, 6, 8, 10]
  elemento = 8
  indice = -1
  Para i desde 0 hasta longitud(lista)-1 hacer
    Si lista[i] == elemento entonces
      indice = i
      SalirPara
    FinSi
  FinPara
  Mostrar indice
Fin

Estos son solo algunos ejemplos de algoritmos que utilizan ciclos. Los ciclos son una herramienta poderosa en la programaci贸n que nos permiten automatizar tareas repetitivas y procesar grandes cantidades de datos de manera eficiente.

Try Catch

Try-Catch es una estructura de control utilizada en programaci贸n para manejar excepciones o errores que puedan ocurrir durante la ejecuci贸n de un programa.

La estructura Try-Catch consta de dos bloques principales: el bloque Try y el bloque Catch.

  • El bloque Try es donde se coloca el c贸digo que se espera que se ejecute sin errores. Si se produce alg煤n error en este bloque, se genera una excepci贸n y el control del programa pasa al bloque Catch.
  • El bloque Catch es donde se coloca el c贸digo que se ejecutar谩 en caso de que se produzca una excepci贸n. Este bloque recibe como par谩metro la excepci贸n generada por el bloque Try, lo que permite al programador analizar y solucionar el problema.

Aqu铆 hay un ejemplo sencillo de c贸mo se utiliza la estructura Try-Catch en Java:

csharpCopy code
try {
   // C贸digo que se espera que se ejecute sin errores
   int a = 10 / 0; // Genera una excepci贸n de divisi贸n entre cero
} catch (ArithmeticException e) {
   // C贸digo que se ejecutar谩 en caso de que se produzca una excepci贸n
   System.out.println("Ha ocurrido un error: " + e.getMessage());
}

En este ejemplo, el bloque Try contiene una operaci贸n de divisi贸n entre cero, lo que generar谩 una excepci贸n de tipo ArithmeticException. El bloque Catch recibe esta excepci贸n y muestra un mensaje de error en la consola.

El uso de Try-Catch es fundamental en la programaci贸n moderna, ya que permite manejar errores de manera controlada y predecible. Con esta estructura de control, podemos garantizar que nuestro programa no se detendr谩 abruptamente en caso de errores inesperados, sino que manejar谩 los errores de manera apropiada para seguir funcionando correctamente.

FUNCIONAMIENTO DE UN TRY CATCH: Una analog铆a para entender esto ser铆a imaginar que est谩s preparando una comida en la cocina y tienes una tabla de cortar y un cuchillo. Cortar los ingredientes con el cuchillo podr铆a causar un accidente, como cortarte un dedo. Si quieres minimizar el riesgo de accidentes, podr铆as hacer lo siguiente:

  • Usar el cuchillo con cuidado y atenci贸n.
  • Tener una venda o un botiqu铆n de primeros auxilios a mano en caso de que ocurra un accidente.

En este caso, el uso cuidadoso del cuchillo es similar a la secci贸n de c贸digo protegida por try. La venda o el botiqu铆n de primeros auxilios son similares a la secci贸n de c贸digo protegida por catch. Si algo sale mal, como cortarse un dedo, se puede usar la venda o el botiqu铆n de primeros auxilios para manejar la situaci贸n y solucionar el problema. De manera similar, si se produce

Espero les ayude.馃挌

Con el ejemplo de la clase anterior he anadido un try catch (en python try except) para no bloquear el programa si ocurre un error.

No conoc铆a esta instrucci贸n es buena porque siempre hay que tener un plan b

La estructura de control try / catch, tambi茅n conocida como try / except, es una herramienta importante en la programaci贸n para manejar errores y excepciones que puedan ocurrir durante la ejecuci贸n del c贸digo. Su prop贸sito principal es evitar que el programa colapse o se detenga abruptamente cuando se producen errores y brindar una forma de manejarlos de manera controlada.

C贸mo funciona la estructura try / catch:

  1. Se coloca el c贸digo que podr铆a generar un error dentro del bloque try.
  2. Si ocurre alg煤n error dentro del bloque try, el flujo del programa se detiene inmediatamente y se salta al bloque catch.
  3. El bloque catch contiene el c贸digo que se ejecutar谩 en caso de que ocurra un error en el bloque try.
  4. Una vez que el c贸digo dentro del bloque catch se ejecuta, el programa contin煤a su flujo normal a partir del siguiente bloque despu茅s del catch.

Ventajas de usar try / catch:

  1. Evita que el programa se detenga por completo en caso de errores.
  2. Permite manejar las excepciones de manera controlada.
  3. Facilita la identificaci贸n y correcci贸n de errores al mostrar mensajes o realizar acciones espec铆ficas cuando ocurren excepciones.

Es importante tener en cuenta que el manejo adecuado de excepciones es fundamental para escribir programas robustos y seguros. El bloque try / catch es especialmente 煤til en situaciones donde se interact煤a con fuentes externas, se realizan operaciones que pueden fallar o se lee y se procesa datos de entrada que pueden ser impredecibles.

Ejemplo de uso de try / catch en Python:

try:
    numero = int(input("Ingresa un n煤mero: "))
    resultado = 10 / numero
    print("El resultado es:", resultado)
except ZeroDivisionError:
    print("Error: No se puede dividir entre cero.")
except ValueError:
    print("Error: Debes ingresar un n煤mero v谩lido.")
except Exception as e:
    print("Error desconocido:", e)
finally:
    print("Fin del programa.")

En este ejemplo, si el usuario ingresa un valor no num茅rico, se captura la excepci贸n ValueError. Si el usuario ingresa el valor cero, se captura la excepci贸n ZeroDivisionError. Adem谩s, se agrega un bloque finally que se ejecutar谩 siempre, independientemente de si se produce un error o no.

En resumen, la estructura de control try / catch es una herramienta poderosa para el manejo de errores en la programaci贸n, permitiendo un flujo de trabajo m谩s seguro y eficiente. Es esencial aprender a utilizarla adecuadamente para desarrollar programas m谩s s贸lidos y confiables.

ejemplo sencillo en python, se coloca un numero si colocas algo mas saldra 鈥淟o siento, eso no es un n煤mero v谩lido.鈥

# Solicitar al usuario un n煤mero
numero = input("Introduce un n煤mero: ")

# Intentar convertir el n煤mero a entero
try:
    numero_entero = int(numero)
    print("El n煤mero es:", numero_entero)
except ValueError:
    print("Lo siento, eso no es un n煤mero v谩lido.")
La estructura `try-catch` en programaci贸n se utiliza para manejar excepciones o errores que pueden ocurrir durante la ejecuci贸n de un bloque de c贸digo. La idea es intentar ejecutar un bloque de c贸digo dentro de un `try`, y si ocurre una excepci贸n, capturarla y manejarla en el bloque `catch`. Esto ayuda a prevenir que un error en una parte del c贸digo cause que todo el programa falle.
permite manejar los errores en tiempo de ejecucion, cuidando nuestra logica.

Gracias, muy bueno este repaso del try Cacth!

En este ejemplo, si el usuario ingresa un valor no num茅rico, se captura la excepci贸n ValueError. Si el usuario ingresa el valor cero, se captura la excepci贸n ZeroDivisionError. Adem谩s, se agrega un bloque finally que se ejecutar谩 siempre, independientemente de si se produce un error o no.

Es importante tener en cuenta que el manejo adecuado de excepciones es fundamental para escribir programas robustos y seguros. El bloque try / catch es especialmente 煤til en situaciones donde se interact煤a con fuentes externas, se realizan operaciones que pueden fallar o se lee y se procesa datos de entrada que pueden ser impredecibles.

Ventajas de usar try / catch: 1- Evita que el programa se detenga por completo en caso de errores. 2- Permite manejar las excepciones de manera controlada. 3- Facilita la identificaci贸n y correcci贸n de errores al mostrar mensajes o realizar acciones espec铆ficas cuando ocurren excepciones.

C贸mo funciona la estructura try / catch: 1- Se coloca el c贸digo que podr铆a generar un error dentro del bloque try. 2- Si ocurre alg煤n error dentro del bloque try, el flujo del programa se detiene inmediatamente y se salta al bloque catch. 3- El bloque catch contiene el c贸digo que se ejecutar谩 en caso de que ocurra un error en el bloque try. 4- Una vez que el c贸digo dentro del bloque catch se ejecuta, el programa contin煤a su flujo normal a partir del siguiente bloque despu茅s del catch.

La estructura de control try / catch, tambi茅n conocida como try / except, es una herramienta importante en la programaci贸n para manejar errores y excepciones que puedan ocurrir durante la ejecuci贸n del c贸digo. Su prop贸sito principal es evitar que el programa colapse o se detenga abruptamente cuando se producen errores y brindar una forma de manejarlos de manera controlada.

Ciclo do-while (haz algo mientras): El ciclo do-while es similar al ciclo while, pero con una diferencia clave: el bloque de c贸digo se ejecuta al menos una vez antes de evaluar la condici贸n. Si la condici贸n es verdadera, el ciclo se repite; de lo contrario, el ciclo finaliza.

Ciclo while (mientras): El ciclo while se utiliza cuando no conocemos la cantidad exacta de repeticiones que deseamos realizar, y el bloque de c贸digo se ejecuta siempre y cuando la condici贸n sea verdadera. La condici贸n se eval煤a antes de cada iteraci贸n.

-Inicio: Se inicializa una variable que ser谩 evaluada en la expresi贸n de comparaci贸n. -Comparaci贸n: Es una expresi贸n que debe cumplirse para que el ciclo contin煤e. Si la expresi贸n es falsa, el ciclo termina. -Incremento: Es el intervalo en el cual cambia la variable inicial en cada iteraci贸n.

Ciclo for (para): El ciclo for es utilizado cuando conocemos la cantidad de veces que deseamos que se repita un bloque de c贸digo. La estructura del ciclo for se compone de tres partes: inicio, comparaci贸n e incremento.

Los ciclos repetitivos, tambi茅n conocidos como bucles, son estructuras de control esenciales en programaci贸n que permiten ejecutar una serie de instrucciones de forma repetida mientras se cumpla una condici贸n espec铆fica. A continuaci贸n, vamos a revisar cada uno de los tres tipos de ciclos repetitivos:

Que recuerdos usar los valores de try-catch. Son los mas usados en los lenguajes de programacion y sirven mucho para ayudar a detectar los errores por si algo ocurrio mal. Es muy visto en el backEnd y poco en el frontEnd.

muy buen contenido

Gracias por la clase

Try catch: es una instrucci贸n que en caso de que exista un error de ejecuci贸n va a activar un plan de contingencia, es decir, cuida la l贸gica de lo programado en caso de que algo haya fallado

Try Catch es muy 煤til para gestionar excepciones no consideradas inicialmente

Try Catch

Try-Catch es una estructura de control utilizada en programaci贸n para manejar excepciones o errores que puedan ocurrir durante la ejecuci贸n de un programa.

La estructura Try-Catch consta de dos bloques principales: el bloque Try y el bloque Catch.

  • El bloque Try es donde se coloca el c贸digo que se espera que se ejecute sin errores. Si se produce alg煤n error en este bloque, se genera una excepci贸n y el control del programa pasa al bloque Catch.
  • El bloque Catch es donde se coloca el c贸digo que se ejecutar谩 en caso de que se produzca una excepci贸n. Este bloque recibe como par谩metro la excepci贸n generada por el bloque Try, lo que permite al programador analizar y solucionar el problema.

Aqu铆 hay un ejemplo sencillo de c贸mo se utiliza la estructura Try-Catch en Java:

csharpCopy code
try {
   // C贸digo que se espera que se ejecute sin errores
   int a = 10 / 0; // Genera una excepci贸n de divisi贸n entre cero
} catch (ArithmeticException e) {
   // C贸digo que se ejecutar谩 en caso de que se produzca una excepci贸n
   System.out.println("Ha ocurrido un error: " + e.getMessage());
}

En este ejemplo, el bloque Try contiene una operaci贸n de divisi贸n entre cero, lo que generar谩 una excepci贸n de tipo ArithmeticException. El bloque Catch recibe esta excepci贸n y muestra un mensaje de error en la consola.

El uso de Try-Catch es fundamental en la programaci贸n moderna, ya que permite manejar errores de manera controlada y predecible. Con esta estructura de control, podemos garantizar que nuestro programa no se detendr谩 abruptamente en caso de errores inesperados, sino que manejar谩 los errores de manera apropiada para seguir funcionando correctamente.

Lo he hecho en python con un ciclo while para realizar una divisi贸n en cero:

Try/Except. Ejemplo de C贸digo en Python

para validar que la edad generada sea mayor a 18 a帽os:

import random

# Crear un array vac铆o
edades = []

# Agregar 100 edades aleatorias al array
for i in range(100):
    try:
        edad = random.randint(17, 55)
        if edad < 18:
            raise ValueError("La edad es menor a 18 a帽os")
        edades.append(edad)
    except ValueError as e:
        print(f"Error: {e}")

# Imprimir el array de edades
print(edades)

Aqu铆 est谩 un ejemplo de algoritmo en pseudoc贸digo que utiliza una estructura try-catch para manejar excepciones. Este algoritmo utiliza una estructura try-catch para manejar una posible excepci贸n que se puede producir al ingresar un n煤mero igual a cero.

Intenta
  Escribir "Por favor ingrese un n煤mero: "
  Leer num
  Si num = 0 entonces
    Lanzar una excepci贸n "El n煤mero no puede ser cero"
  Fin si
Atrapa la excepci贸n como ex
  Escribir "Ha ocurrido una excepci贸n: ", ex.mensaje
Fin atrapa

El bloque de c贸digo dentro de la estructura try solicita al usuario que ingrese un n煤mero y lo almacena en la variable num. Si el valor de num es igual a cero, el c贸digo dentro del bloque if lanza una excepci贸n con un mensaje espec铆fico. Si se produce una excepci贸n dentro del bloque try, la ejecuci贸n salta al bloque catch y se imprime el mensaje de la excepci贸n. Si no se produce ninguna excepci贸n, la ejecuci贸n contin煤a despu茅s del bloque try-catch.

Que 煤til es para manejo de errores.

Intentemos programar un ejemplo de try catch en Javascript para contar los d铆as de la semana. Para ello, usaremos un bucle for para iterar a trav茅s de los d铆as. Dentro del cuerpo del bucle, colocaremos una instrucci贸n try catch que intentar谩 obtener el d铆a jueves. Si la instrucci贸n try no puede encontrar el d铆a jueves, entonces el bloque catch recoger谩 el error y desplegar谩 un mensaje de error.

for (let i = 0; i < 7; i++) {
  try {
    if (i === 4) {
      console.log("Es el Jueves!");
    } else {
      console.log("Es el d铆a: " + i);
    }
  } catch (error) {
    console.log("No se pudo encontrar el Jueves, se ha producido un error: " + error);
  }
}

**Try Catch
**

  • Plan de contingencia
  • Seguridad en nuestra l贸gica y cod.
  • Maneja los errores.
  • Sirve para cuidar que nuestra l贸gica y que se mantenga salva caso alguna execcuci贸n tenga una falla.

Me ha dejado pensado鈥 pues al romperse el algoritmo, no continua nada, es decir, se acaba. Con Try Catch, la l贸gica del algoritmo guarda y continua trabajando.

TRY CATCH
ejecuta planes de contingencia en caso de haber errores y permite que la aplicaci贸n no se detenga, se debe utilizar con mucho cuidado porque no es un ciclo normal, ya que maneja eventos fallidos en la aplicaci贸n debemos tener cuidado con que tipo de errores validar de esta manera