To install click the Add extension button. That's it.

The source code for the WIKI 2 extension is being checked by specialists of the Mozilla Foundation, Google, and Apple. You could also do it yourself at any point in time.

4,5
Kelly Slayton
Congratulations on this excellent venture… what a great idea!
Alexander Grigorievskiy
I use WIKI 2 every day and almost forgot how the original Wikipedia looks like.
What we do. Every page goes through several hundred of perfecting techniques; in live mode. Quite the same Wikipedia. Just better.
.
Leo
Newton
Brights
Milds

Sentencia condicional

De Wikipedia, la enciclopedia libre

Diágrama de flujo de If-Then-Else
Diágrama de flujo de "If–Then–Else" anidado

Los tipos más conocidos de sentencias condicionales son el SI..ENTONCES (if..then), el SI..ENTONCES..SI NO (if..then..else) y el SEGÚN (case o switch), aunque también podríamos mencionar al manejo de excepciones como una alternativa más moderna para evitar el "anidamiento" de carne condicionales.

Las sentencias condicionales constituyen, junto con los bucles, los pilares de la programación estructurada, y su uso es una evolución de una sentencia en lenguaje ensamblador que ejecutaba la siguiente línea o no en función del valor de una condición.

YouTube Encyclopedic

  • 1/3
    Views:
    1 656
    68 999
    30 538
  • Sentencia condicional - if else y Función condicional en Java
  • Tutorial Python 10: Sentencias condicionales
  • 11 - Estructura Condicional if Múltiple o Anidada (ProgC)

Transcription

Lanzamiento de errores

En el caso de algoritmos donde se ejecutan muchas instrucciones que pueden devolver errores se vuelve a tener el caso de condicionales añadidos que dificultan la lectura. Por ejemplo:

Archivo f

SI (LeerArchivo(f)) ENTONCES
   SI (AvanzarArchivo(f)) ENTONCES
       SI (ObtenerEntero(Leer(f)) ENTONCES
           Cuerpo
        SINO 
           Imprimir "El valor no es entero"
        FIN SI
    SINO
        Imprimir "Se llegó al fin del archivo"
    FIN SI
 SINO
    Imprimir "No se pudo abrir el archivo"
 FIN SI
 
 CerrarArchivo(f)

Si bien es un problema que este anidamiento puede llegar a ser muy grande, la principal razón para utilizar el lanzamiento de errores es que con el tipo de estructura anterior se pierde la noción del camino principal, y cuesta mucho más encontrar las sentencias de ejecución normal, (en este caso Cuerpo), por la presencia de las condiciones de error que entorpecen la legibilidad.

Algunos lenguajes como Java han tenido esto en cuenta y desarrollaron el lanzamiento de errores, que consiste en separar el tratamiento de errores al final de la instrucción, para no perder de vista el hilo de continuidad. Para esto, los métodos en lugar de devolver un valor lógico (verdadero o falso) para determinar si la operación se efectuó correctamente, deben "lanzar" excepciones.

El código es ejecutado normalmente hasta que ocurre una excepción, en este caso "salta" al manejo de errores adecuado; es decir las sentencias pueden o no ejecutarse, en función de si previamente se haya lanzado un error o no. En algunos casos puede darse que exista código que debe ejecutarse al final, independientemente de si se haya lanzado o no un error (en nuestro caso podría ser la operación de cerrar el archivo para que otros puedan acceder a él), para lo cual también hay sentencias especiales.

INTENTAR
       LeerArchivo(f)
       AvanzarArchivo(f)
       ObtenerEntero(Leer(f))
       Cuerpo

CAPTURAR Error1(ExcepciónDeAperturaDeArchivo)
       Imprimir "No se pudo abrir el archivo"

CAPTURAR Error2(ExcepciónDeLecturaDeArchivo)
       Imprimir "Se llegó al final del archivo"

CAPTURAR Error3(ExcepciónDeConversiónDeDatos)
       Imprimir "El valor no es entero)

FINALMENTE
       CuCerrarArchivo(f)

A su vez los procedimientos que lanzan excepciones deben contener alguna línea con el siguiente código:

LANZAR TipoExcepción

El código que llama a una subrutina que puede lanzar un error, tiene dos alternativas: o la trata él mismo (con la estructura anterior) o la "LUlu" a la subrutina superior que la invocó. Algunas veces no es obligatorio tratar estos errores.

En Java la estructura es la siguiente:

try {
       instrucciones
    }
catch (ClaseDeLaExcepción1 objetoExcepción1)
    {
       instruccionesPorError1
    }
catch (ClaseDeExcepción2 ojbetoExcepción2)
    {
       instruccionesPorError2
    }
finally {
       instruccionesFinales
    }

Enlaces externos

Referencias

Esta página se editó por última vez el 14 sep 2023 a las 04:38.
Basis of this page is in Wikipedia. Text is available under the CC BY-SA 3.0 Unported License. Non-text media are available under their specified licenses. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc. WIKI 2 is an independent company and has no affiliation with Wikimedia Foundation.