lunes, 23 de diciembre de 2013

Funciones/Subprocesos


La sintaxis para ello es la siguiente:

     SubProceso variable_de_retorno <- nombre_de_la_funcion ( argumento_1, argumento_2, ... )
          acción 1;
          acción 1;
               .
               .
               .
          acción n;
     FinSubproceso

   Comienza con la palabra clave SubProceso (o Función, son equivalentes) seguida de la variable de retorno, el signo de asignación, el nombre del subproceso, y finalmente, la lista de argumentos entre paréntesis. Existen variantes para esta estructura. Si la función no retorna ningún valor, pueden omitirse el identificador variable_de_retorno y el signo de asignación, es decir, colocar directamente el nombre y los argumentos a continuación de la palabra clave SubProceso. Si el subproceso no recibe ningún valor pueden colocarse los paréntesis vacíos u omitirse, finalizando la primer línea con el nombre del subproceso. Las reglas para los nombres de subprocesos, variables de retorno y argumentos son las mismas que para cualquier identificador en pseudocódigo.
   Además, opcionalmente pueden agregarse las palabras claves Por Valor o Por Referencia para indicar el tipo de pasaje en cada argumento. Si no se indica, los arreglos se pasan por referencia, las demás expresiones por valor. El pasaje por referencia implica que si la función modifica el argumento, se modificará en realidad la variable que se utilizó en la llamada, mientras que el pasaje por valor implica que la función opera con una copia de la variable (o el resultado de la expresión) que se utilizó en la llamada, por lo que las modificaciones que aplique la función no se verán reflejadas fuera de la misma.
   Para invocar a la función se debe utilizar su nombre y entre paréntesis los parámetros, que podrán ser expresiones sólo si el tipo de pasaje es por referencia. Una llamada puede ser en sí una instrucción, pero si la función retorna algún valor, también puede utilizarse como operando dentro de una expresión.
Sentencia Repetir(Do-While)

La instrucción Repetir-Hasta Que ejecuta una secuencia de instrucciones hasta que la condición sea verdadera.

      Repetir
            <instrucciones>
      Hasta Que <condición>

   Al ejecutarse esta instrucción, la secuencia de instrucciones que forma el cuerpo del ciclo se ejecuta una vez y luego se evalúa la condición. Si la condición es falsa, el cuerpo del ciclo se ejecuta nuevamente y se vuelve a evaluar la condición. Esto se repite hasta que la condición sea verdadera.
   Note que, dado que la condición se evalúa al final, las instrucciones del cuerpo del ciclo serán ejecutadas al menos una vez.
   Además, a fin de evitar ciclos infinitos, el cuerpo del ciclo debe contener alguna instrucción que modifique la o las variables involucradas en la condición de modo que en algún momento la condición sea verdadera y se finalice la ejecución del ciclo.
   Si se utiliza sintaxis flexible (ver Opciones del Pseudocódigo) se permite opcionalmente utilizar Mientras Que en lugar de Hasta Que, de modo que el conjunto de acciones contenidas en el bucle se ejecuta mientras que la condición sea verdadera. Notar que la palabra Que es la que diferencia el uso de la palabra Mientras en la estructura repetir de la estructura Mientras. Es decir, si se omite la palabra que se considera como el comienzo de un bucle Mientras en lugar de el final de un bucle Repetir.

Mayor de dos números



Diagrama de flujo


Código fuente


Serie



Diagrama de flujo


Código fuente

Decimal a Binario



Diagrama de flujo


Código fuente



Nones


Diagrama de flujo


Código fuente


Tablas



 Diagrama de flujo


Código fuente


Sentencia Para(For)

   La instrucción Para ejecuta una secuencia de instrucciones un número determinado de veces.

      Para <variable> <- <inicial> Hasta <final> Con Paso <paso> Hacer
            <instrucciones>
      FinPara

   Al ingresar al bloque, la variable <variable> recibe el valor <inicial> y se ejecuta la secuencia de instrucciones que forma el cuerpo del ciclo. Luego se incrementa la variable <variable> en <paso> unidades y se evalúa si el valor almacenado en <variable> superó al valor <final>. Si esto es falso se repite hasta que <variable> supere a <final>. Si se omite la cláusula Con Paso <paso>, la variable <variable> se incrementará en 1.
   Si se habilita la sintaxis flexible en las configuración del lenguaje se pueden utilizar dos alternativas. La primer variante consiste en reemplazar el operador de asignación por la palabra clave Desde:
      Para <variable> Desde <inicial> Hasta <final> Con Paso <paso> Hacer ...
De esta forma, la lectura de la sentencia resulta más obvia. Además, con sintaxis flexible, si no se especifica el paso pero el valor final es menor al inicial, el bucle recorrerá los valores en orden inverso como si el paso fuera -1. La segunda variante solo sirve para recorrer arreglos de una o más dimensiones. Se introduce con la construcción Para Cada seguida de un identificador, la palabra clave De y otro identificador:

      Para Cada <elemento> De <Arreglo> Hacer ...

El segundo identificador debe corresponder a un arreglo. El primero será el que irá variando en cada iteración. El ciclo realizará tantas iteraciones como elementos contenga el arreglo y en cada uno el primer identificador servirá para referirse al elemento del arreglo en cuestión.

 Series



Diagrama de flujo


Código fuente


Nones


Diagrama de flujo


Código fuente


Suma de números



Diagrama de flujo


Código fuente


Tablas


Diagrama de flujo


Código fuente


Sentencia Mientras(While)

   La instrucción Mientras ejecuta una secuencia de instrucciones mientras una condición sea verdadera.

      Mientras <condición> Hacer
            <instrucciones>
      FinMientras

Al ejecutarse esta instrucción, la condición es evaluada. Si la condición resulta verdadera, se ejecuta una vez la secuencia de instrucciones que forman el cuerpo del ciclo. Al finalizar la ejecución del cuerpo del ciclo se vuelve a evaluar la condición y, si es verdadera, la ejecución se repite. Estos pasos se repiten mientras la condición sea verdadera.
   Note que las instrucciones del cuerpo del ciclo pueden no ejecutarse nunca, si al evaluar por primera vez la condición resulta ser falsa.
   Si la condición siempre es verdadera, al ejecutar esta instrucción se produce un ciclo infinito. A fin de evitarlo, las instrucciones del cuerpo del ciclo deben contener alguna instrucción que modifique la o las variables involucradas en la condición, de modo que ésta sea falsificada en algún momento y así finalice la ejecución del ciclo.

Numero mayor



Diagrama de flujo


Código fuente


Binario



Diagrama de flujo


Código fuente


Nones



Diagrama de flujo


Código fuente


Tablas de multiplicar



Diagrama de flujo

 
Código fuente

Sentencia Según(Switch)


   La secuencia de instrucciones ejecutada por una instrucción Segun depende del valor de una variable numérica.

      Segun <variable> Hacer
            <número1>: <instrucciones>
            <número2>,<número3>: <instrucciones>
            <...>
            De Otro Modo: <instrucciones>
      FinSegun

   Esta instrucción permite ejecutar opcionalmente varias acciones posibles, dependiendo del valor almacenado en una variable de tipo numérico. Al ejecutarse, se evalúa el contenido de la variable y se ejecuta la secuencia de instrucciones asociada con dicho valor.
   Cada opción está formada por uno o más números separados por comas, dos puntos y una secuencia de instrucciones. Si una opción incluye varios números, la secuencia de instrucciones asociada se debe ejecutar cuando el valor de la variable es uno de esos números.
   Opcionalmente, se puede agregar una opción final, denominada De Otro Modo, cuya secuencia de instrucciones asociada se ejecutará sólo si el valor almacenado en la variable no coincide con ninguna de las opciones anteriores.

Determinar si es Masculino o Femenino


La siguiente pantalla es el código del diagrama de flujo.


Y como resultado es el siguiente.


Número de mes



El diagrama de flujo aclara como están los casos para cada mes.

Ahora la pantalla de arriba esta el código completo.


La salida del numero 12 es Diciembre.

Caras de dado



Muestra los 6 casos que hay en el dado.


Aqui esta el código completo con los 6 casos.


Vocales y consonantes



Este ejercicio nos muestra el tipo de letra que teclea.


Separamos los casos de consonantes y vocales.


Número Romano del 1 al 10



Solo tenemos 10 casos para este tipo de ejemplo.


Con este ejercicio podemos ampliar hasta el numero romano que queramos.


Ya por último esta es nuestra salida.