martes, 1 de octubre de 2013

 Lenguaje de programación:
1- Diagrama de flujo
El diagrama de flujo o diagrama de actividades es la representación gráfica del algoritmo o proceso. Se utiliza en disciplinas como programacióneconomíaprocesos industriales y psicología cognitiva.
En Lenguaje Unificado de Modelado (UML), un diagrama de actividades representa los flujos de trabajo paso a paso de negocio y operacionales de los componentes en un sistema. Un diagrama de actividades muestra el flujo de control general.
En SysML el diagrama de actividades ha sido extendido para indicar flujos entre pasos que mueven elementos físicos (e.g., gasolina) o energía (e.g., presión). Los cambios adicionales permiten al diagrama soportar mejor flujos de comportamiento y datos continuos.
Estos diagramas utilizan símbolos con significados definidos que representan los pasos del algoritmo, y representan el flujo de ejecución mediante flechas que conectan los puntos de inicio y de fin de proceso.


                                                                                                                       

 2:



3-              Explicamos las distintas estructuras poniendo ejemplos tanto en diagrama de flujo como en pseudocódigo.
Las estructuras condicionales comparan una variable contra otro(s)valor (es), para que en base al resultado de esta comparación, se siga un curso de acción dentro del programa. Cabe mencionar que la comparación se puede hacer contra otra variable o contra una constante, según se necesite. Existen tres tipos básicos, las simples, las dobles y las múltiples. 

Simples: 

Las estructuras condicionales simples se les conoce como
Tomas de decisión. Estas tomas de decisión tienen la siguiente forma: 


Pseudocódigo:
Diagrama de flujo:
Dobles: 

Las estructuras condicionales dobles permiten elegir entre dos opciones o alternativas posibles en función del cumplimiento o no de una determinada condición. Se representa de la siguiente forma: 

Pseudocódigo:
Diagrama de flujo:
Donde: 
Si:Indica el comando de comparación 
Condición : Indica la condición a evaluar 
Entonces : Precede a las acciones a realizar cuando se cumple la condición 
Instrucción(es):Son las acciones a realizar cuando se cumple o no la condición 
si no :Precede a las acciones a realizar cuando no se cumple la condición 
Dependiendo de si la comparación es cierta o falsa, se pueden realizar una o más acciones. 

Múltiples: 

Las estructuras de comparación múltiples, son tomas de decisión especializadas que permiten comparar una variable contra distintos posibles resultados, ejecutando para cada caso una serie de instrucciones especificas. La forma común es la siguiente: 
Pseudocódigo:
Diagrama de flujo:




Múltiples (En caso de): 

Las estructuras de comparación múltiples, es una toma de decisión especializada que permiten evaluar una variable con distintos posibles resultados, ejecutando para cada caso una serie de instrucciones especificas. La forma es la siguiente: 
Pseudocódigo:
Diagrama de flujo:




Veamos algunos ejemplos donde se aplique todo lo anterior: 

Realizar un algoritmo en donde se pide la edad del usuario; si es mayor de edad debe aparecer un mensaje indicándolo. Expresarlo en Pseudocódigo y Diagrama de flujos. 
Pseudocódigo:
Diagrama de flujo:




Se pide leer tres notas del alumno, calcular su definitiva en un rango de 0-5 y enviar un mensaje donde diga si el alumno aprobó o reprobó el curso. Exprese el algoritmo usando Pseudocódigo y diagrama de flujos. 

Pseudocódigo: 

INICIO 
   Not1, Not2, Not 3 :REAL 
   Def: REAL 
   LEA Nota1, Nota2, Nota3 
   Def ß (Not1 + Not2 + Not3) /3 
   Si Def < 3 entonces 
      Escriba
Reprobó el curso 
   Sino 
      Escriba
Aprobó el curso 
   Fin-Si 
FIN 

Diagrama de flujo: 



Se desea escribir un algoritmo que pida la altura de una persona, si la altura es menor o igual a 150 cm envíe el mensaje:
Persona de altura baja; si la altura está entre 151 y 170 escriba el mensaje: Persona de altura media y si la altura es mayor al 171 escriba el mensaje: Persona alta. Exprese el algoritmo usando Pseudocódigo y diagrama de flujos. 

Pseudocódigo: 

INICIO 
   Altura: ENTERO 
   ESCRIBA
Cuál es tu altura?  
   LEA Altura 
   Si Altura <=150 entonces 
      ESCRIBA
persona de altura baja 
   Sino 
      Si Altura <=170 entonces 
         ESCRIBA
persona de altura media 
      Sino 
         Si Altura>170 ENTONCES 
            ESCRIBA
persona alta 
         Fin-Si 
      Fin-Si 
   Fin-Si 
FIN 

¡Es importante ser ordenado en el código que se escribe! 

Diagrama de flujo: 



Dado un numero entre 1 y 7 escriba su correspondiente día de la semana así: 
1- Lunes 2- Martes 3- Miércoles 4- Jueves 5- Viernes 6- Sábado 7- Domingo 
Exprese el algoritmo usando Pseudocódigo y diagrama de flujos. 

Pseudocódigo: Pseudocódigo: 

INICIO 
   Dia: ENTERO 
   ESCRIBA
Diga un número para escribir su día 
   LEA Dia 
   En-caso-de Dia haga 
      Caso 1: ESCRIBA
Lunes 
      Caso 2: ESCRIBA
Martes 
      Caso 3: ESCRIBA
Miércoles 
      Caso 4: ESCRIBA
Jueves 
      Caso 5: ESCRIBA
Viernes 
      Caso 6: ESCRIBA
Sábado 
      Caso 7: ESCRIBA
Domingo 
     SINO: ESCRIBA
Escribió un numero fuera del rango 1-7 
   Fin-Caso 
FIN 

Diagrama de flujo: 

4- ¿Qué es una estructura repetitiva?
Las estructuras repetitivas se utilizan cuando se quiere que un conjunto de instrucciones se ejecuten un cierto número finito de veces, por ejemplo, escribir algo en pantalla cierta cantidad de veces, mover un objeto de un punto a otro cierta cantidad de pasos, o hacer una operación matemática cierta cantidad de veces. Se les llama bucle o ciclo a todo proceso que se repite cierto número de veces dentro de un pseudocódigo o un programa y las estructuras repetitivas nos permiten hacerlo de forma sencilla.
Estructuras Repetitivas (Bucles)

Un bucle o lazo (Loop)  es un segmento de un algoritmo o programa, cuya instrucciones se repiten un número determinado de veces mientras se cumple una determinada condición (existe o es verdadera la condición). SE debe establecer un mecanismo para determinar las tareas repetitivas. Este mecanismo es una condición que puede ser verdadera o falsa y que se comprueba una vez a cada paso o iteración del bucle (total de instrucciones que se repiten en el bucle).
Un bucle consta de tres partes:
·          decisión,
·          cuerpo del bucle,
·          salida del bucle.
El bucle de la siguiente figura  es infinito, ya que las instrucciones (1), (2) y (3) se ejecutan indefinidamente, pues no existe salida del bucle, al no cumplirse una determinada condición.



Si tras la lectura de la variable N se coloca una condición, el bucle dejará de ser infinito y tendrá fin cuando la condición sea verdadera.

El diagrama de flujo escrito en pseudo código es aproximadamente el siguiente:
Inicio
    SUMA 0
    1: leer N
    Si N = 0 entonces
        Escribir SUMA
        Ir_a fin
    Si_no
        Suma suma + N
    FIN_SI
    IR_A 1
FIN


BUCLES ANIDADOS
Un bucle puede anidarse dentro de otro como se vio en clase con los condicionales anidados (un si fin_si dentro de otro si Fin_si)

Contadores

Un contador es una variable cuyo valor se incrementa o decremento en una cantidad constante en cada vuelta.
La siguiente figura 
contar del 1 al 50

presenta un diagrama de flujo para un algoritmo que se desea repetir 50 veces; el contador se representa en este ejemplo con la variable CONT. La instrucción que representa a un contador es la asignación CONT = CONT + 1.
La siguiente figura

Decrementar desde N hasta 0

es otro ejemplo de un diagrama de flujo con contador; es este caso, negativo. Se dice también descontar.
El contador puede ser positivo (incrementos, uno en uno) o negativo (decrementos, uno en uno).

Importante acerca de incrementos y decrementos:
En la primera Figura el contador cuenta desde 1 al 50 y deja de contar cuando la variable CONT toma el valor 51 y se termina el bucle.

En la segunda Figura el contador cuenta negativamente, o lo que es lo mismo, descuenta o decrementa; comienza a contar en n y se decrementando hasta llegar a cero, en cuyo caso se termina el bucle y se realiza la acción escribir.

Como se vio anteriormente la condición permite terminar el bucle cuando ésta es verdadera (si) 
ahora veremos las estructuras repetitivas que se usarán en el curso de algoritmos:

Tipos de estructuras repetitivas

Mientras Condicion Hacer
Fin_mientras

Desde Variable=inicio  Hasta Variable=Final  hacer
Fin_desde

(La anterior también puede ser usada con la palabra PARA en vez de DESDE ejemplo:
    PARA Variable=inicio  Hasta Variable=Final  hacer
    Fin_PARA)

Repetir
Hasta Condicion
Hemos visto que las Estructura repetitivas son aquellas en las que especialmente se diseña para todas aquellas
aplicaciones en las cuales una operación o conjunto de ellas deben repetirse muchas veces.
asi los Bucles (lazos o LOOPs) Son estructuras que repiten una secuencia de instrucciones un numero determinado de veces.

Interacción: Es el hecho de repetir la ejecución de una secuencia de acciones; en otras palabras el algoritmo repite muchas veces las acciones.

Al utilizar un bucle para sumar una lista de números, se necesita saber cuantos números se han de sumar, para poder detenerlo en el momento preciso; las dos principales preguntas ha realizarse en el diseño de un bucle son:
¿Que contiene el bucle? y ¿Cuántas veces se debe repetir?

Casos Generales de Estructuras repetitivas
1) La condición de Salida del bucle se realiza al principio del bucle (estructura mientras) también llamada PRE-CONDICIONAL
2) La condición de Salida se origina al final del bucle; el bucle se verifica hasta que se verifique una cierta condición
también llamada POST-CONDICIONAL (estructura Repetir Hasta).
3) La condición de salida se realiza con un contador que cuente el numero de interacciones. ( i es un contador que cuenta desde el valor inicial (vi.) hasta el valor final (vf) con los incrementos que se consideren.) (estructura DESDE o PARA)



Estructura mientras ("while")
Es aquella en que el cuerpo del bucle se repite mientras se cumple una determinada condición. Cuando se ejecuta la acción  mientras, la primera cosa que sucede es que se evalúa la condición (una expresión booleana que devuelve Verdadero o Falso), si se evalúa falsa ninguna acción se tomara y el programa en la siguiente instrucción del bucle; si la expresión booleana es verdadera, entonces se ejecuta el cuerpo del bucle, depuse del cual se evalúa de nuevo la expresión booleana.
Esta expresión booleana se repite una y otra vez mientras la expresión booleana (condición) sea verdadera

Estructura repetir ("repeat").
Si el valor de la expresión booleana es inicialmente falso, el cuerpo del Bucle no se ejecutara, por ello se necesitan de otros tipos de estructuras. Dicha estructura se ejecuta hasta que cumpla una condición determinada que se comprueba hasta el final del bucle

Diferencias entre las estructuras mientras y repetir
·         La estructura mientras termina cuando la condición es falsa, mientras que repetir termina cuando la condición es verdadera.
·         En la estructura repetir el cuerpo del bucle se ejecuta siempre al menos una sola vez; por el contrario mientras es mas general y permite la posibilidad de que el bucle pueda no ser ejecutado.
·         Para usar la estructura repetir debe estar seguro de que el cuerpo del bucle se repetirá al menos una sola vez.
Estructura desde/para ("for").
Son el numero total de veces que se desea ejecutar las acciones del Bucle (numero de interacciones fijo), este ejecuta las acciones del cuerpo o del Bucle un numero especifico de veces y de modo automático controla el numero de Interacciones o pasos a través del cuerpo del bucle


5- Que es una variable:
En programación, una variable está formada por un espacio en el sistema de almacenaje (memoria principal de un ordenador) y un nombre simbólico (un identificador) que está asociado a dicho espacio. Ese espacio contiene una cantidad o información conocida o desconocida, es decir un valor. El nombre de la variable es la forma usual de referirse al valor almacenado: esta separación entre nombre y contenido permite que el nombre sea usado independientemente de la información exacta que representa. El identificador, en el código fuente de la computadora puede estar ligado a un valor durante el tiempo de ejecución y el valor de la variable puede por lo tanto cambiar durante el curso de la ejecución del programa. El concepto de variables en computación puede no corresponder directamente al concepto de variables en matemática. El valor de una variable en computación no es necesariamente parte de una ecuación o fórmula como en matemáticas. En computación una variable puede ser utilizada en un proceso repetitivo: puede asignársele un valor en un sitio, ser luego utilizada en otro, más adelante reasignarsele un nuevo valor para más tarde utilizarla de la misma manera.Procedimientos de este tipo son conocidos con el nombre de iteración. En programación de computadoras, a las variables, frecuentemente se le asignan nombres largos para hacerlos relativamente descriptivas para su uso, mientras que las variables en matemáticas a menudo tienen nombres escuetos, formados por uno o dos caracteres para hacer breve en su transcripción y manipulación.

Ejemplifique:
Una variable en programación es un espacio en memoria que permite almacenar información dentro de sí. Esa información puede ser un caracter, una cadena de caracteres, un número, un arreglo y, en general, cualquier otro tipo de datos.

En tanto una constante es también un espacio en memoria, pero que almacena una dato fijo, es decir, que no cambia nunca.

Por ejemplo:
int a, b
a := 1
b := a + 2
a := 5

Aquí tenemos dos variables, "a" y "b" que almacenan 
valores numéricos enteros (int). La variable "a" almacena primero el número 1, luego "b" almacena el numero que tiene "a" más 2, por lo tanto "b" almacena un 3. Finalmente el valor de "a" es reemplazado por un 3, por lo tanto las variables contendrán estos datos al final:
a = 5
b = 3
 

Compañeros:
·         JULIAN JAVIER MENDEZ ROA


·         LINDA YUTHCELY POLANIA RODRIGUEZ