martes, 8 de mayo de 2012

PSeInt - Función Para

La función "Para" nos sirve para repetir un proceso una determinada cantidad de veces hasta llegar a un número de referencia que determinará el fin del proceso.

Tenemos la función "Mientras", que repite un proceso mientras una condición se cumpla, es decir, mientras la condición que hayamos definido se cumpla, el programa validará internamente este proceso como "true", y comenzará su ejecución infinitas veces hasta que la condición que hayamos definido sea considerada como "false" (es decir, que no se cumpla). En el caso de la función "Para" esta se repetirá hasta que la variable definida llegue a su punto de referencia límite.

Para variable<-1 hasta numX Con Paso 1 Hacer

Para     variable  <-        1    hasta     numX   Con Paso    1    Hacer
                (*)      ----     (1)    ------      (2)      ---------   (3)   ------

(*) variable --> Asignación de un nombre para definir el proceso. // (Le doy un nombre al proceso).
(1) 1 --> Valor inicial asignado a la variable. // (El valor con el cual comenzará la variable).
(2) 2 --> Valor que la variable tomará como referencia de límite. // (Cuando "variable" llegue a numX, terminará de repetir el ciclo y el programa continuará).
(3) 1 --> Valor que se sumará a la variable cada vez que el ciclo se repita. // (Es decir, "variable" se modificará cada vez de termine un ciclo, sumándole a la variable en este caso "1" (Podría ser 2, 3, 3549, etc etc.) quedando el primer ciclo como "1", el segundo como "2" y así hasta que llegue a la condición de término).

Ahora que tenemos definidas las condiciones del proceso, tenemos que escribir qué occurrirá dentro de este, por ejemplo:

Para var01<- 1 Hasta 10 Con Paso 1 Hacer
Escribir "Hola", varEspacio, "por", varEspacio, var01, (... etc etc.) ;
FinPara

Nuestra variable creada para la función "Para" es "var01" y este proceso se repetirá hasta que esta variable (var01) tenga el valor "10".
En los procesos a realizar dentro de la función escribimos "Hola", varEspacio, var01 --> Incluimos la variable (recordemos que es una variable numérica, no un String o caracter) que se modificará cada vez que termine un ciclo.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Proceso RepeticionDeHolas
    Definir var01 Como Entero;
    Definir varEspacio Como Caracter;
    //
    varEspacio<-" ";
    //
    Para var01<-1 Hasta 10 Con Paso 1 Hacer
        Escribir "Hola", varEspacio, "por", varEspacio, var01, "°", varEspacio, "vez.";
    FinPara   
FinProceso
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Al ejecutar el programa, este nos mastrará:

*** Ejecucion Iniciada. ***
Hola por 1░ vez.
Hola por 2░ vez.
Hola por 3░ vez.
Hola por 4░ vez.
Hola por 5░ vez.
Hola por 6░ vez.
Hola por 7░ vez.
Hola por 8░ vez.
Hola por 9░ vez.
Hola por 10░ vez.

*** Ejecucion Finalizada. ***

De esta forma, podemos repetir un proceso una determinada cantidad de veces hasta que este llegue a el punto de término definido o predefinido.

24 comentarios:

  1. muy bueno,pero tiene errores ortograficos

    ResponderEliminar
  2. ¿Se puede poner una variable como la referencia del "hasta"?

    ResponderEliminar
  3. Pinches tareas de programación, maldito CECYTEM, Por qué no me quedé en el Conalep?
    No haré nada en el tercer parcial, que Abraham me pase los trabajos alv!
    *Llora* :'v

    ResponderEliminar
  4. Respuestas
    1. ah pero exelente

      yo pensé que era excelente jejeej alv

      Eliminar
  5. podemos decir pensar, argumentar o incluso filosofar que esto no sirve alv

    ResponderEliminar
  6. alguien sabe como traducir este pseudocodigo a python.

    función Dijkstra (Grafo G, nodo_salida s)
    //Usaremos un vector para guardar las distancias del nodo salida al resto
    entero distancia[n]
    //Inicializamos el vector con distancias iniciales
    booleano visto[n]
    //vector de boleanos para los vértices que ya tenemos la distancia mínima
    para cada w ∈ V[G] hacer
    Si (no existe arista entre s y w) entonces
    distancia[w] = Infinito //puede marcar con un 1 por ejemplo
    Si_no
    distancia[w] = peso (s, w)
    fin si
    fin para
    distancia[s] = 0
    visto[s] = cierto
    //n es el número de vértices que tiene el Grafo
    mientras que (no_estén_vistos_todos) hacer
    vértice = tomar_el_mínimo_del_vector distancia y que no esté visto;
    visto[vértice] = cierto;
    para cada w ∈ sucesores (G, vértice) hacer
    si distancia[w]>distancia[vértice]+peso (vértice, w) entonces
    distancia[w] = distancia[vértice]+peso (vértice, w)
    fin si
    fin para
    fin mientras
    fin función.

    ResponderEliminar