No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Invierte en tu educación con el precio especial

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

11 Días
22 Hrs
41 Min
48 Seg

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 59

Preguntas 10

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

🌟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.

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

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.

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

Espero les ayude.💚

¿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 “if” o “si” 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 “else” o “sino” en español, que se ejecutan en caso contrario a la condición establecida en el “if”, y “else if” o “sino 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 “for” y el “while” 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 “try-catch” o “intenta-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 “if” o “si” 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 “if” es la siguiente:


if condición:
    instrucción(es)

Donde “condición” es una expresión booleana que evalúa si se cumple o no una determinada condición, y “instrucció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 “else” o “sino” en español, que se ejecutan en caso contrario a la condición establecida en el “if”. La sintaxis básica de la estructura condicional “if-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 “else if” o “sino si” en español, que permite establecer varias condiciones consecutivas para tomar decisiones más complejas. La sintaxis básica de la estructura condicional “if-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: “color”, que representa el color actual del semáforo, y “tiempo”, 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 “while” y el ciclo “for”.

Ciclo while

El ciclo “while” 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 “i” sea menor o igual a 10. En cada iteración, se suma el valor de “i” a la variable “suma”, y se incrementa el valor de “i” en 1. Después de que el ciclo termina, se imprime el valor final de la variable “suma”.

Ciclo for

El ciclo “for” 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 “variable” 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 “fruta” 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 “while” y “for” 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.

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.

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

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.

### Python: En Python, la estructura `try` y `except` se utiliza de manera similar: try: \# Bloque de código que puede lanzar una excepción resultado = 10 / 0 # Esto lanzará una ZeroDivisionError except ZeroDivisionError as e: \# Bloque de código para manejar la excepción print("Error: División por cero.") Aquí, el código dentro del bloque `try` puede lanzar una excepción de tipo `ZeroDivisionError` debido a una división por cero. Si ocurre esta excepción, el flujo del programa salta al bloque `except`, donde puedes manejar la excepción, imprimir un mensaje de error o realizar cualquier acción necesaria. En resumen, `try` y `catch` (o `except`) se utilizan para manejar excepciones y errores que pueden surgir durante la ejecución del código, lo que ayuda a controlar los casos excepcionales y a garantizar una ejecución más robusta del programa.

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

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.

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 “Lo 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.")
![](https://static.platzi.com/media/user_upload/image-73675b90-b992-4eef-a183-fb0db77dd10d.jpg)C# :)
El `try-catch` y el `if-else` son estructuras de control diferentes. El `try-catch` se utiliza para manejar excepciones o errores en tiempo de ejecución. Permite ejecutar un bloque de código (try) y, si ocurre un error, ejecutar un bloque alternativo (catch) para manejarlo sin romper el flujo del programa. Por otro lado, el `if-else` evalúa condiciones booleanas. Si la condición es verdadera, se ejecuta un bloque; si es falsa, se ejecuta otro. Ambos son útiles, pero se aplican en contextos distintos: manejo de errores vs. control de flujo lógico.
![](https://static.platzi.com/media/user_upload/image-06c1911d-1309-4fb5-af61-f4fbbd94123e.jpg)
Mi definición -> Función que cuida la ejecución del código con “planes de contingencia” en caso de que hayan errores (previamente indicados). **Try:** Sección de código que puede tener un error **Catch:** Solución alterna
**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.
Ejemplos de try... catch con py y js:# ```python // javascript let data = [21, 17, 35, "🍎", 40, 15]; data.forEach((item) => { try { // Verifica si el item es un número if (typeof item !== 'number') { throw new Error('Este elemento no es un número.'); } // Si es un número, verifica si es mayor o menor de edad if (item >= 18) { console.log(`El número ${item} es mayor de edad.`); } else { console.log(`El número ${item} es menor de edad.`); } } catch (error) { console.log(error.message); } }); /* El número 21 es mayor de edad. El número 17 es menor de edad. El número 35 es mayor de edad. Este elemento no es un número. El número 40 es mayor de edad. El número 15 es menor de edad. */ # python data = [21, 17, 35, '🍎', 40, 15] for index, item in enumerate(data): try: if item >= 18: print(f'El número {item} es mayor de edad.') else: print(f'El número {item} es menor de edad.') except: print(f'Este elemento no es un número.') ''' El número 21 es mayor de edad. El número 17 es menor de edad. El número 35 es mayor de edad. Este elemento no es un número. El número 40 es mayor de edad. El número 15 es menor de edad. ''' ```// javascriptlet data = \[21, 17, 35, "🍎", 40, 15]; data.forEach((*item*) => {  try {    // Verifica si el item es un número    if (typeof *item* !== 'number') {      throw new *Error*('Este elemento no es un número.');    }     // Si es un número, verifica si es mayor o menor de edad    if (*item* >= 18) {      console.log(`El número ${*item*} es mayor de edad.`);    } else {      console.log(`El número ${*item*} es menor de edad.`);    }  } catch (error) {    console.log(error.message);  }}); /\*El número 21 es mayor de edad.El número 17 es menor de edad.El número 35 es mayor de edad.Este elemento no es un número.El número 40 es mayor de edad.El número 15 es menor de edad. \*/
try catch es una estructura de control su usabilidad nos permite manejar los errores de nuestro algoritmo permitiendo la continuidad sin afectar su flujo try : ejecuta el error de nuestro codigo catch : captura el erros y lo maneja NOTA : algunos lenguajes de programacion no usan try catch
🍃 Try Catch La estructura de control `try / catch` evalúa si un algoritmo contiene errores, permitiendo manejar las excepciones y evitar que el flujo del programa colapse. Dependiendo del lenguaje de programación, la sintaxis puede variar, pero el concepto es el mismo: gestionar errores de manera controlada. ### ¿Qué Sucede si Existe un Error en el Algoritmo? Un algoritmo es una serie de pasos para resolver un problema. Sin embargo, estos pasos no siempre son perfectos y pueden causar fallos en el programa. Considera el siguiente ejemplo: "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, todas las líneas se ejecutarán hasta el final del programa. Sin embargo, si ocurre un error en algún punto, el programa se detendrá, y las líneas posteriores no se ejecutarán. "Línea 1" "Línea 2" ERROR ### Cómo Utilizar la Estructura Try / Catch Para manejar estos errores y evitar que el programa se detenga, utilizamos 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 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" ### Ejemplos en Diferentes Lenguajes ### JavaScript console.log("Línea 1"); console.log("Línea 2"); try { // Línea que puede causar un error let resultado = 10 / 0; console.log(resultado); } catch (error) { console.log("Algo salió mal: " + error.message); } console.log("Línea 4"); console.log("Final del programa"); ### PHP \getMessage() . "\\\\\\\n"; } echo "Línea 4\\\\\\\n"; echo "Final del programa\\\\\\\n"; ?> ### Python print("Línea 1") print("Línea 2") try: \# Línea que puede causar un error resultado = 10 / 0 print(resultado) except ZeroDivisionError as e: print("Algo salió mal:", e) print("Línea 4") print("Final del programa") ### Uso del Bloque Finally Además del bloque `try` y `catch`, algunos lenguajes de programación incluyen un bloque `finally`. El bloque `finally` se ejecuta siempre, independientemente de si ocurrió una excepción o no. Es útil para liberar recursos o realizar tareas de limpieza. ### Ejemplo con Finally en JavaScript console.log("Línea 1"); console.log("Línea 2"); try { // Línea que puede causar un error let resultado = 10 / 0; console.log(resultado); } catch (error) { console.log("Algo salió mal: " + error.message); } finally { console.log("Este bloque se ejecuta siempre."); } console.log("Línea 4"); console.log("Final del programa"); ### Ejemplo con Finally en PHP \getMessage() . "\\\\\\\n"; } finally { echo "Este bloque se ejecuta siempre.\\\\\\\n"; } echo "Línea 4\\\\\\\n"; echo "Final del programa\\\\\\\n"; ?> ### Ejemplo con Finally en Python print("Línea 1") print("Línea 2") try: \# Línea que puede causar un error resultado = 10 / 0 print(resultado) except ZeroDivisionError as e: print("Algo salió mal:", e) finally: print("Este bloque se ejecuta siempre.") print("Línea 4") print("Final del programa") ### Conclusión La estructura `try / catch` es esencial para manejar errores y excepciones en la programación. Permite que el programa continúe ejecutándose incluso cuando ocurre un error, proporcionando una manera de gestionar y reaccionar ante fallos de manera controlada. Los ejemplos en JavaScript, PHP y Python muestran cómo implementar esta estructura en diferentes lenguajes de programación, asegurando un manejo robusto de errores y una ejecución continua del programa.
Bien los dijo la profe es un plan B para tratar los errores que puedan presentarse y para asegurarse de que nuestro proceso finalice correctamente.
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

```python # con for Edades = [5,10,20,18] for i in range(4): if Edades[i] >= 18: print(f'Con la edad de {Edades[i]},es mayor de edad') else: print(f'con la edad de {Edades[i]}, es menor de edad') # con while n = 0 while n < 3: if Edades[n] >= 18: print(f'Con la edad de {Edades[n]},es mayor de edad') n += 1 # esto aumenta la variable n else: print(f'con la edad de {Edades[n]}, es menor de edad') n += 1 # esto aumenta la variable n ```