Page 1

Nombre: Mary luz Barboza Díaz

Docente: Nerita tarrillo Dávila

Curso: Educación para el trabajo

Grado y sección: 4to “A”

Institución educativa: “Félix Tello rojas”

Año:

2012


DEDICATORIA: Este trabajo, va dedicado para mi familia: personas que siempre me apoyan, están pendientes de mí, siempre dispuestos a brindarme ideas para mi mejoría o desarrollo, y por ser los seres a quienes más quiero. Sobre todo a mis padres, quienes siempre han estado pendientes de mí, y de ayudarme a cumplir todas mis metas planteadas.


INDICE: “CONOCIENDO LOS ALGORITMOS”…………………………………………………………………. 11 “VARIABLES, CONSTANTES, TIPOS DE DATOS, EXPRESIONES, OPERADORES”…..22 “DIAGRAMAS DE FLUJOS DE DATOS”………………………………………………………………..31 “SOLUCIONANDO PROBLEMAS CON DIAGRAMAS DE FLUJO DE DATOS”………….32 “INTEGRANDO LOS APRENDIZAJES I”………………………………………………………………..33 “CREANDO DRIAGRAMAS DE FLUJO DE DATOS”………………………………………………51 “ESTRUCTURAS CONDICIONALES, SIMPLES, DOBLES Y MULTIPLES”………………..53 “ INTEGRANDO LOS APRENDIZAJES II”……………………………………………………………..54


PRESENTACION: En este manual se presentara algunos temas tratados en el tercer grado de secundaria; los cuales son: Algoritmos Diagrama de Flujo de datos Con informaci贸n, ejercicios e im谩genes, que permitir谩n entender mucho mejor los temas, para su mejor aplicaci贸n y entendimiento.


“CONOCIENDO LOS ALGORITMOS” “algoritmos” Un algoritmo es un conjunto de instrucciones para resolver un problema, es una sola prescripción determinante de un proceso de cálculo, que, partiendo de diversos datos iniciales, conduce en todos los casos al resultado que le corresponde. “es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad.2 Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia. En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón.” (1)

“Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la solución o indicar la falta de esta a un problema en un tiempo determinado.” (2)

(1) http://es.wikipedia.org/wiki/Algoritmo (2) http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php


Propiedades de un algoritmo: Enunciado del problema: El enunciado del problema debe ser claro y completo.es importante que conozcamos exactamente que se desea del computador. Mientras esto no se comprenda, no tiene caso pasar a la siguiente etapa. Anรกlisis de la soluciรณn general: Entendido el problema para resolver, es preciso analizar: Los datos o resultados que se esperan. Los datos de entrada que nos suministran. El proceso al que se requiere someter esos datos a fin de obtener los resultados esperados. รreas de trabajo, formulas y otros recursos necesarios. Diferentes alternativas de soluciรณn: Analizando el problema posiblemente, tengamos diferentes formas de resolverlo. Lo importante es determinar cuรกl es la mejor alternativa; la que produce los resultados esperados en el menor tiempo o al menor costo.


Elaboración de algoritmos: Daremos un ejemplo: necesitamos calcular e imprimir el área de un triangulo cuya base y altura se suministran de un disco. Escribir correctamente el enunciado del problema : “ calcular e imprimir el area de un triangulo cuya base y altura se suministraran de un disco” ANALISIS: ¿Qué se quiere? Calcular el área de un triangulo. ¿Cómo se quiere? Lo quiero calcular a través de una fórmula: Área del triangulo: base x altura/ 2 ¿Qué deseo obtener? Imprimir el área del triangulo y suministrar los resultados en un disco. Solución: Variables utilizadas en esta solución Da lectura: base, altura Para almacenar: el valor correspondiente a cada uno. Buscar diferentes alternativas de solución al resultado del problema Algoritmo: Para calcular el área de un triangulo: Inicio: Lea Calcule Imprima

base, altura, área área= (base*altura)/2 “resultados=”área


“Caracteristicas: Las características fundamentales que debe cumplir todo algoritmo son: Ser definido: Sin ambigüedad, cada paso del algoritmo debe indicar la acción a realizar sin criterios de interpretación. Ser finito: Un número específico y numerable de pasos debe componer al algoritmo, el cual deberá finalizar al completarlos. Tener cero o más entradas: Datos son proporcionados a un algoritmo como insumo (o estos son generados de alguna forma) para llevar a cabo las operaciones que comprende. Tener una o más salidas: Debe siempre devolver un resultado; de nada sirve un algoritmo que hace algo y nunca sabemos que fue. El devolver un resultado no debe ser considerado como únicamente “verlos” en forma impresa o en pantalla, como ocurre con las computadoras. Existen muchos otros mecanismos susceptibles de programación que no cuentan con una salida de resultados de esta forma. Por salida de resultados debe entenderse todo medio o canal por el cual es posible apreciar los efectos de las acciones del algoritmo. Efectividad: El tiempo y esfuerzo por cada paso realizado debe ser preciso, no usando nada más ni nada menos que aquello que se requiera para y en su ejecución.”(3)

(3) http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php


Lenguajes Algorítmicos Es una serie de símbolos y reglas que se utilizan para describir de manera explícita un proceso. Tipos de Lenguajes Algorítmicos Gráficos: Es la representación gráfica de las operaciones que realiza un algoritmo (diagrama de flujo). No Gráficos: Representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocódigo).

Diseño del Algoritmo Las características de un buen algoritmo son:

Debe tener un punto particular de inicio. Debe ser definido, no debe permitir dobles interpretaciones. Debe ser general, es decir, soportar la mayoría de las variantes que se puedan presentar en la definición del problema. Debe ser finito en tamaño y tiempo de ejecución.


Algoritmos como funciones

“Un algoritmo se puede concebir como una función que transforma los datos de un problema (entrada) en los datos de una solución (salida). Más aun, los datos se pueden representar a su vez como secuencias de bits, y en general, de símbolos cualesquiera.1 9 11 Como cada secuencia de bits representa a un número natural (véase Sistema binario), entonces los algoritmos son en esencia funciones de los números naturales en los números naturales que sí se pueden calcular. Es decir que todo algoritmo calcula una función donde cada número natural es la codificación de un problema o de una solución. En ocasiones los algoritmos son susceptibles de nunca terminar, por ejemplo, cuando entran a un bucle infinito. Cuando esto ocurre, el algoritmo nunca devuelve ningún valor de salida, y podemos decir que la función queda indefinida para ese valor de entrada. Por esta razón se considera que los algoritmos son funciones parciales, es decir, no necesariamente definidas en todo su dominio de definición. Cuando una función puede ser calculada por medios algorítmicos, sin importar la cantidad de memoria que ocupe o el tiempo que se tarde, se dice que dicha función es computable. No todas las funciones entre secuencias datos son computables. El problema de la parada es un ejemplo.” (4) Como medida de la eficiencia de un algoritmo, se suelen estudiar los recursos (memoria y tiempo) que consume el algoritmo. El análisis de algoritmos se ha desarrollado para obtener valores que de alguna forma indiquen (o especifiquen) la evolución del gasto de tiempo y memoria en función del tamaño de los valores de entrada.

(4) http://es.wikipedia.org/wiki/Algoritmo#Algoritmos_como_fun ciones


Algoritmo “Podemos encontrar muchas definiciones completas o formales de algoritmo en los textos de algoritmica y programacion, todas ellas muy similares: Secuencia finita de instrucciones, reglas o pasos que describen de forma precisa las operaciones de un ordenador debe realizar para llevar a cabo un tarea en un tiempo mas finito. Descripcion de un esquema de comportamiento expresado mediante un reportorio finito de acciones y de informaciones elementales, identificadas, bien comprendidas y realizables a priori. Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la soluciĂłn o indicar la falta de esta a un problema en un tiempo determinado.â€?(5)

(5) http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php


“VARIABLES, CONSTANTES, TIPOS DE DATOS, EXPRESIONES, OPERADORES” Una variable es un nombre asociado a un elemento de datos que está situado en posiciones contiguas del memoria principal, su valor puede cambiar durante la ejecución de un programa. Es un valor no fijo que permanece almacenado en la memoria del computador y que es identificado con un nombre único y irrepetible. Podemos definirlo como cualquier cantidad o valor al cual hacemos referencia asignándole un nombre, clave (casi siempre abreviada) y que tomará diferentes valores durante el proceso.

“CARACTERÍSTICAS DE LAS VARIABLES: El nombre de una variable puede ir formado por una o más letras, números o la combinación de ambas. A COD COD01 Los nombres de las variables siempre deberán comenzar por una letra. FAC001 Nunca: 01COD COD01 Nunca: 001FAC Los nombres de las variables no deberán ir separados por espacios en blanco. Debe ser memotécnica. Código Empleado = CODEMP Cédula= CED Sueldo= SDO Impuesto sobre la Renta= ISLR Seguro Social Obligatorio= SS0 Monto= MTO” (6)

(6) http://html.rincondelvago.com/algoritmos-y-diagramas-deflujo.html


TIPOS DE VARIABLES:

Alfanuméricas: Son aquellas que pueden almacenar cualquier carácter, letras (A-Z); números (0-9), espacios en blanco, o caracteres especiales (¡ , %, *, + , /, $, &, etc…)

Ejemplos:

ISLR= 10% CED$= V- &&.&&&.&&& FEC= (__/__/__)

Numéricas: Son aquellas que almacenan sólo números (Dígitos) de (09). A= 0 SDO= CED= En números. TOT= MTO=

En fin: Podemos definirlo como cualquier cantidad o valor al cual hacemos referencia asignándole un nombre, clave (casi siempre abreviada) y que tomará diferentes valores durante el proceso.


Toda variable pertenece a un tipo de dato concreto. En la declaración de una variable se debe indicar el tipo al que pertenece. Así tendremos variables enteros, reales, booleanas, etc.…

Partes fundamentales: Declaración: Iniciación.- esto no es más que darle el valor inicial a una variable. Utilización.- una vez declarada e iniciada una variable, es momento de utilizarla.

“VARIABLES Es un grupo de datos que puede variar o alterarse durante la ejecución del algoritmo o la ejecución del programa, se les identifica por los siguientes atributos:

so de la variable

asociada en un determinado momento

tomar valores de ese tipo” (7)

(7) http://es.scribd.com/doc/2292086/ALGORITMOS


Constantes: Es un dato cuyo valor no puede cambiar durante la ejecución del programa. Recibe un valor en el momento de la compilación y este permanece inalterado durante todo el programa.

CONSTANTES Es un grupo de datos que permanecen sin cambio durante la ejecución del algoritmo o del programa, pueden ser:

determinado valor

cualquier combinación de caracteres

-

Las constantes se declaran en una sección que comienza con la palabra reservada constante. Después de declarar una constante, ya puedes usarla en el cuerpo principal del programa.


CONSTANTE:

Es un valor que no varía, definido con un nombre único y irrepetible que no va a cambiar durante todo el algoritmo (Programa). Es cualquier cantidad, la cual puede aparecer en forma “LITERAL” y permanecerá invariable durante el proceso (Va a almacenar un valor inalterable). Ejemplos: C= 5 Valor Fijo C= C+1 C= (5)+1

Una constante es un dato cuyo valor no puede cambiar durante la ejecución del programa. Recibe un valor en el momento de la compilación y este permanece inalterado durante todo el programa.

“I . CONSTANTES Por constante numérica se entiende un número, y se representa por su símbolo habitual en base 10. Son constantes numéricas: 12 13.5 0 3.14159 Observe que se usa punto y no coma para la parte decimal de un número. Por constante alfanumérica se entiende un conjunto de caracteres alfabéticos o numéricos de nuestro uso habitual; es decir las letras del alfabeto, los diez dígitos, los símbolos de puntuación habitual, operaciones matemáticas, y otros símbolos. Una constante alfanumérica se expresa dejando ese conjunto de caracteres escrito entre comillas dobles. Son constantes alfanuméricas: "INGENIEROS" "El promedio vale = " " **2+ " " X(i) = "” (8) (8) http://146.83.41.79/jmbm/co1/Apuntes/ProgComp/DFlujo/ DFlujo1.htm


Tipos de datos: “Real: Valores numéricos que van desde -1*10 ^ 2000 hasta 1*10 ^ 2000 . Los valores más cercanos a 0 que se pueden manejar son 1*10 ^ -2000 y -1*10 ^ -2000.

Ejemplo: 1998, 1.0007, 0, 328721, -3242781

Cadena de Caracteres: Secuencia de caracteres encerrada entre comillas simples.

Ejemplo: `Diagramar es fácil' , `París' , `1955'

Lógico: La letra V ó F encerrada entre puntos, para indicar verdadero ó falso respectivamente.

Ejemplo: .V. , .F. , .v. , .f.” (9)

(9) http://html.rincondelvago.com/dfd.html


Expresiones: Son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales. “La expresión que da el valor a una variable puede ser de varios tipos: Aritmética: Uno o más valores numéricos operados entre si. Una expresión puede constar de variables y constantes, utilizando los operadores aritméticos:

Modulo ( MOD ) Multiplicación ( * ) División ( / ) Suma ( + ) Resta ( - )

Estos operadores tienen un nivel de prioridad: Modulo - Multiplicación - División - Suma - Resta El orden de evaluación es de derecha a izquierda. Resolviendo primero los paréntesis que tenga la expresión.

El operador Modulo ( MOD ), hace un resto entre enteros, es decir coge dos numeros enteros, los divide y nos da el resto de la división. Ej:

7 MOD 3 = 1 Ya que el resto de dividir 7 entre 3 es 1.” (10)

(10)

http://html.rincondelvago.com/programacion_7.html


Operadores: Son signos que nos permiten expresar relaciones entre variables y constantes. Un operador es un símbolo que indica al compilador que realice manipulaciones lógicas o matemáticas específicas.

“Los operadores del mismo nivel de precedencia son evaluados por el compilador de izquierda a derecha. Por supuesto, se puede utilizar paréntesis para ordenar la evaluación.

También, conviene utilizar paréntesis para hacer más claro el orden en que se producen las evaluaciones, tanto para la persona que lo elabora o para los que después tengan que seguir el programa.” (11)

(11) http://www.monografias.com/trabajos38/programacion/pro gramacion2.shtml


Operadores Lógicos:

Estos operadores se utilizan para establecer relaciones entre valores lógicos. Estos valores pueden ser resultado de una expresión relacional. Operadores Lógicos And Y Or O Not Negación Prioridad de los Operadores Lógicos Not And Or Operadores de Asignación. Los operadores de asignación se utilizan para formar expresiones de asignación, en las que se asigna el valor de una expresión a un identificador. ***** Por definir el operador de asignación** . Cada expresión toma un valor que se determina tomando los valores de las variables y constantes implicadas y la ejecución de las operaciones indicadas. Una expresión consta de operadores y operandos. Según sea el tipo de datos que manipulan, se clasifican las expresiones en: Aritméticas Relaciónales Lógicas


“Operadores lógicos •

Son operadores que permiten formular condiciones complejas a partir de condiciones simples.

Los operadores lógicos son de:

Conjunción (y).- relaciona dos operandos booleanos. Proporciona un valo verdadero (V), si los dos son verdaderos; en caso contrario da un resultado falso (F). Disyunción (o).- relaciona dos operandos booleanos. Proporciona un valor verdadero (V), si uno de los dos es verdadero; en caso contrario da un resultado falso (F). Negación (No).- este operador relaciona sólo un operando booleano y da como resultado un valor opuesto al que tenga el operando. “ ( 12)

(12) http://www.google.com.pe/url?sa=t&rct=j&q=operandos%20 diagramas%20de%20flujo&source=web&cd=7&ved=0CFoQFjA G&url=http%3A%2F%2Fwww.paginasprodigy.com.mx%2Fhjimen ez1%2FBajar%2FAlgoritmos%2520y%2520Diagramas%2520de %2520flujo.ppt&ei=nPoJUJ7SK-WT6QGP982Cg&usg=AFQjCNGhpata1-oG6Z7atCO_0tkTdxW2TA


“LOS OPERADORES Los operadores son los que permiten efectuar las operaciones aritméticas en el algoritmo. Los operadores básicos que se van a usar en este tutorial son los siguientes:

+ , - , * , / : Suma, resta, multiplicación y división respectivamente.

Son las mismas operaciones que en el cálculo normal con una pequeña diferencia: El resultado de estas operaciones puede ser un numero entero o un fraccionario, por lo que se deberá especificar cual es el resultado que se desea. Para esto se debe colocar en la DOCUMENTACIÓN DEL ALGORITMO (que veremos más adelante) que la variable no SOPORTA FRACCIONES (entero), ya que por defecto, todas las variables númericas podrán ser fracciones. Lastimosamente, en DFD no podemos especificar cuando deseamos que una variable no posea fracciones ya que todas las variable numericas son "reales".

También vamos a usar operadores más complejos como son:

MOD: Dá el residuo de dividir un número entre otro sin DECIMALES. Ejemplos: 10 MOD 3 = 1. ya que el 3 está en el 10 3 veces y 3*3=9 por lo que el residuo es 1. 10 MOD 4 = 2. ya que el 4 está en el 10 2 veces y 4*2=8 por lo que el residuo es 2.

^: Potenciación. Ejemplo: 10 ^ 3 = 1000.” (13)

(13)

http://foro.infiernohacker.com/index.php?topic=8303.0


DIAGRAMAS DE FLUJO DE DATOS Es la descripción grafica de la solución de problemas y se da de manera secuencial, hace uso de las flechas para unir los símbolos.

“Diagrama de Flujo Los diagramas de flujo (o flujogramas) son diagramas que emplean símbolos gráficos para representar los pasos o etapas de un proceso. También permiten describir la secuencia de los distintos pasos o etapas y su interacción. Las personas que no están directamente involucradas en los procesos de realización del producto o servicio, tienen imágenes idealizadas de los mismos, que pocas veces coinciden con la realidad. La creación del diagrama de flujo es una actividad que agrega valor, pues el proceso que representa está ahora disponible para ser analizado, no sólo por quienes lo llevan a cabo, sino también por todas las partes interesadas que aportarán nuevas ideas para cambiarlo y mejorarlo” (14)

(14) http://www.elprisma.com/apuntes/administracion_de_empre sas/quesonlosdiagramasdeflujo/


“Ventajas de los Diagramas de Flujo

* Favorecen la comprensión del proceso a través de mostrarlo como un dibujo. El cerebro humano reconoce fácilmente los dibujos. Un buen diagrama de flujo reemplaza varias páginas de texto. * Permiten identificar los problemas y las oportunidades de mejora del proceso. Se identifican los pasos redundantes, los flujos de los reprocesos , los conflictos de autoridad, las responsabilidades, los cuellos de botella, y los puntos de decisión. * Muestran las interfases cliente-proveedor y las transacciones que en ellas se realizan, facilitando a los empleados el análisis de las mismas. * Son una excelente herramienta para capacitar a los nuevos empleados y también a los que desarrollan la tarea, cuando se realizan mejoras en el proceso” (15)

(15) http://www.elprisma.com/apuntes/administracion_de_emp resas/quesonlosdiagramasdeflujo/


¿Qué Símbolos se Emplean en los Diagramas de Flujo?

Los símbolos tienen significados específicos y se conectan por medio de flechas que indican el flujo entre los distintos pasos o etapas. Los símbolos más comunes son :


Desarrollo del Diagrama de Flujo Las siguientes son acciones previas a la realización del diagrama de flujo : * Identificar a los participantes de la reunión donde se desarrollará el diagrama de flujo. Deben estar presentes el dueño o responsable del proceso, los dueños o responsables del proceso anterior y posterior y de otros procesos interrelacionados, otras partes interesadas. * Definir que se espera obtener del diagrama de flujo. * Identificar quién lo empleará y cómo. * Establecer el nivel de detalle requerido. * Determinar los límites del proceso a describir. Los pasos a seguir para construir el diagrama de flujo son : * Establecer el alcance del proceso a describir. De esta manera quedará fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final la entrada al proceso siguiente. * Identificar y listar las principales actividades/subprocesos que están incluidos en el proceso a describir y su orden cronológico. * Si el nivel de destalle definido incluye actividades menores, listarlas también. * Identificar y listar los puntos de decisión. * Construir el diagrama respetando la secuencia cronológica y asignando los correspondientes símbolos. * Asignar un título al diagrama y verificar que esté completo y describa con exactitud el proceso elegido.


IMPORTANTE:

Cuando se desarrolla el diagrama de flujo es importante considerar el tipo y cantidad de información requerida por el usuario del mismo. Probablemente la dirección de la empresa no esté interesada en los detalles y le sea suficiente una descripción genérica del proceso. Este es el caso del ejemplo anterior, un diagrama de flujo a nivel macro. En cambio, si el objetivo del diagrama es la capacitación de nuevos empleados o la búsqueda de oportunidades de mejora, será necesario disponer de una descripción detallada del proceso y hablamos de un diagrama de flujo a nivel micro, como muestra el ejemplo siguiente. Entre ambos niveles, el macro y el micro, se ubican los diagramas con una cantidad media de detalles.


Un diagrama de flujo es la forma más tradicional de especificar los detalles algorítmicos de un proceso. Se utiliza principalmente en programación, economía y procesos industriales; estos diagramas utilizan una serie de símbolos con significados especiales. Son la representación gráfica de los pasos de un proceso, que se realiza para entenderlo mejor. Son modelos tecnológicos utilizados para comprender los rudimentos de la programación lineal.

Tipos de Diagramas:

Diagrama de Programa: Representa gráficamente un método propuesto para la solución de un problema determinado.

Diagrama de Sistema: Representa la integración; interacción lógicas de los elementos dentro de un sistema propuesto.

Diagrama de Procedimiento: Representa gráficamente una operación o flujo de datos dentro de un sistema.

“Símbolos utilizados Para poder hacer comprensibles los diagramas a todas las personas, los símbolos se someten a una normalización; es decir, se hicieron símbolos casi universales, ya que, en un principio cada usuario podría tener sus propios símbolos para representar sus procesos en forma de Diagrama de flujo. Esto trajo como consecuencia que sólo aquel que conocía sus símbolos, los podía interpretar. La simbología utilizada para la elaboración de diagramas de flujo es variable y debe ajustarse a un patrón definido previamente. En teoría, no es necesario usar un tipo especial de símbolos para crear un diagrama de flujo, pero existen algunos ampliamente utilizados por lo que es adecuado conocerlos y utilizarlos, ampliando


así las posibilidades de crear un diagrama más claro y comprensible para crear un proceso lógico y con opciones múltiples adecuadas. Se utilizan los símbolos indicados a continuación, estandarizados según la norma ISO 5807: Flecha. Indica el sentido y trayectoria del proceso de información o tarea. Rectángulo. Se usa para representar un evento o proceso determinado. Éste es controlado dentro del diagrama de flujo en que se encuentra. Es el símbolo más comúnmente utilizado. Se usa para representar un evento que ocurre de forma automática y del cual generalmente se sigue una secuencia determinada. Rectángulo redondeado: Se usa para representar un evento que ocurre de forma automática del cuál generalmente se sigue una secuencia determinada. Rombo. Se utiliza para representar una condición. Normalmente el flujo de información entra por arriba y sale por un lado si la condición se cumple o sale por el lado opuesto si la condición no se cumple. El rombo además especifica que hay una bifurcación. Círculo. Representa un punto de conexión entre procesos. Se utiliza cuando es necesario dividir un diagrama de flujo en varias partes, por ejemplo por razones de espacio o simplicidad. Una referencia debe darse dentro para distinguirlo de otros. La mayoría de las veces se utilizan números en los mismos.” ( 16)

(16) http://html.rincondelvago.com/algoritmos-y-diagramas-deflujo.html


“SOLUCIONANDO PROBLEMAS CON DIAGRAMAS DE FLUJO DE DATOS” Ejemplos: Determinar la hipotenusa de un triángulo rectángulo conocidas las longitudes de sus dos catetos. Desarrolle el algoritmo correspondiente. Pseudocódigo 1. Inicio 2. Declaración de Variables: CatA= 0, CatB=0 3. Leer el valor de cada cateto 4. Almacenarlo en la variable CatA y CatB 5. Calcular el valor de Hip con la formula indicada 6. Escribir el valor de la Hipotenusa 7. Fin


Desarrolle un algoritmo que permita determinar el รกrea y volumen de un cilindro dado su radio (R) y altura (H).


“INTEGRANDO LOS APRENDIZAJES I” Desarrollar los siguientes ejercicios:

1. Hacer el diagrama de flujo para sumar dos números leídos por teclado y escribir el resultado.

2. Modificar el anterior pero para sumar 100 números leídos por teclado.

3. Realizar el diagrama de flujo para resolver una ecuación de segundo grado, teniendo en cuenta las soluciones complejas.

4. Hacer el diagrama de flujo para sumar los N primeros impares. Realizar después uno que haga lo mismo con los pares y, otro, con los múltiplos de 3.

5. Hacer un diagrama de flujo para sumar los N primeros términos de una progresión geométrica de primer término A y razón R (dados por teclado). Se debe realizar la suma sin emplear la fórmula que existe para ello.

6. Hacer un diagrama de flujo que dada una lista de N cantidad de números, calcule la cantidad de pares y de impares, así como la posición de los números pares dentro de la lista.

7. Hacer un diagrama de flujo que dada una lista de N cantidad de números, calcule la cantidad de pares y de impares, así como la posición de los números pares dentro de la lista.


“CREANDO DIAGRAMAS DE FLUJOS DE DATOS CON EL SOFTWARE FREE DFD” “Diseñador de Flujo de Datos. Este programa permite, como la ayuda del mismo lo indica, construir y diseñar algoritmos creando Diagramas de Flujo de Datos para la representación de algoritmos de programación estructurada. Una vez diseñado el flujo de datos (?), podrá ejecutarlo, analizarlo y depurarlo (imprimirlo, guardarlo y abrirlo). En gran medida, este programa, facilita el trabajo con los diagramas. Los tipos de datos que acepta son los reales, las cadenas y los lógicos. También soporta los arreglos (vectores y matrices) de ndimensiones. Los nombres de las variables deberán empezar con una letra seguida de letras, números o el caracter _ (guión bajo).

Los principales atajos son: CTRL+N

Nuevo diagrama

CTRL+A

Abrir un diagrama

CTRL+G

Guardar el diagrama

CTRL+P

Imprimir el diagrama

CTRL+X

Cortar

CTRL+C

Copiar

CTRL+V

Pegar

SUPR ó DEL INS

Eliminar Objeto

Insertar un objeto

ENTER o Doble click

Editar objeto

F9

Ejecutar diagrama

F7

Ejecución a paso simple (objeto por objeto con pausa)

F4

Ejecutar hasta el objeto seleccionado

F5

Evaluar objetos o variables

F7

Ejecución a paso simple (objeto por objeto con pausa)


Los principales objetos son: Inicio

Indica el inicio del Diagrama

Fin

Indica el fin del Diagrama

Asignación Este objeto puede igualar (asignar) valores hasta tres variables Decisión Selecciona el flujo del programa dependiendo del valor lógico de la condición indicada. Podrá utilizarse cualquier tipo de operador o variable. Se le indicará que lado fluirá el diagrama si la condición es verdadera. Lectura Permite la entrada de valores que serán almacenados en las variables. Si es más de una variable deberán separarse mediante las comas. Salida Muestra el valor de las expresiones. Si es más de una expresión utilice las comas para separarlas. Si desea colocar un mensaje adicional, enciérrelo entre los apóstrofes. Ciclo Para Permite indicar el número de veces que se efectuarán una o más acciones dentro del bucle. Se utilizará una variable índice la cual irá desde un límite inferior hasta un superior, incrementándose en lo indicado en el mismo ciclo. Ciclo Mientras El bucle del ciclo se efectuará mientras la condición sea verdadera, es decir, no se sabe de antemano cuantas veces se realizará esta operación.” (17)

(17) http://plataforma.cbtis122.net/mod/page/view.php?id=117 2


¿Que es el programa dfd? El dfd es un programa, diseñado para analizar y construir los algoritmos. Se pueden crear diagramas de flujo de datos para representar algoritmos; estos son problemas planteados que se pueden solucionar a través de un proceso específico, teniendo en cuenta que el mismo proceso aplica solo para el mismo problema, entonces podríamos decir que para cada problema algorítmico se aplica una solución diferente. El programa posee una serie de herramientas y comandos para utilizar en la construcción de algoritmos.

Ventana principal del dfd


La barra de menús Aquí encontramos las siguientes opciones: Archivo: Este menú se encarga del manejo del archivo que estemos trabajando. Están los siguientes comandos: Nuevo: Para crear un nuevo archivo DFD. Abrir: Para abrir un archivo DFD guardado. Guardar: Para guardar el archivo que se está utilizando. Guardar como: Para guardar con un nombre diferente el DFD que se está utilizando. Imprimir: Para imprimir el archivo DFD abierto. Salir: Para terminar la sesión. Edición: Este menú es el encargado de manejar los comandos de Edición del Archivo dfd: Cortar: Para quitar un elemento del archivo Copiar: Para copiar el elemento marcado en el archivo Pegar: Para pegar en el diagrama el elemento copiado o cortado anteriormente. Eliminar: Para borrar el elemento marcado en el archivo. Editar Objeto: Para cambiar el contenido del elemento marcado.


Objeto: En este menú se utilizan todos los comandos que están representados en iconos en la misma ventana principal. Ver: Este menú habilita los siguientes comandos: Zoom: Para ampliar o disminuir la vista general del archivo. Anterior Subprograma: Para ver el archivo del anterior subprograma cuando exista. Siguiente Subprograma: Para ver el archivo del siguiente subprograma cuando exista. Ejecución: Este menú activa la ejecución del diagrama, contiene los siguientes comandos: Ejecutar: Para iniciar la ejecución del archivo. Pausar: Para pausar la ejecución. Detener: Para interrumpir la ejecución. Depuración: Controla las actividades de avance del archivo. Se compone de los siguientes comandos: Paso Simple: Analiza cada elemento paso a paso e indica el recorrido delineando la zona con un color. Ejecutar Hasta: Permite marcar un elemento dentro del archivo y realizar la ejecución del diagrama solo hasta ese punto. Detener: Para interrumpir el avance.


“Tipos de Datos y Variables FreeDFD, es capaz de manejar básicamente tres tipos de datos, los cuales son números, cadenas y booleanos, asimismo en FreeDFD se puede trabajar tanto con variables como con constantes, algunos ejemplos de constantes son: Numérica: 1234.6 Cadena: ‘Palabra’ Booleana: .F. Si observamos la definición de estos valores, nos damos cuenta que las cadenas van entre comillas simples y que para los valores booleanos, se pone la letra mayúscula correspondiente y un punto antes y después de ponerla, de este modo: Verdadero -> Falso ->

.V. .F.

Los valores numéricos pueden ir entre -1*10²⁰⁰⁰ y 1*10²⁰⁰⁰ y los números más cercanos a 0, son 1*10⁻²⁰⁰⁰ y -1*10⁻²⁰⁰⁰. Las nombres de las variables, deben empezar siempre con una letra y puede ir seguida de letras, números y guiones bajos (_), los nombres de las variables no son sensibles a mayúsculas o minúsculas, por tanto VARIABLE es igual que variable o VaRiAbLe. Cuando una variable recibe un valor por primera vez, el tipo de dato de esta será igual al tipo de dato del valor. La variables matriciales se distinguen porque sus índices se indican entre paréntesis: R(5), Matriz(2,K), vector(1,3,5).” (18)

(18) http://dfdgurzaf.wordpress.com/2010/05/06/tiposde-datos-y-variables/#more-115


“Operadores de FreeDFD En el programa FreeDFD, se usan diferentes tipos de Operadores, entre los que encontramos Matemáticos, Relacionales, Lógicos y con operaciones sobre Cadenas. A continuación, encontrarás una lista de los operadores, el tipo al que pertenecen y su sintaxis: Operadores Matemáticos: Operación Símbolo Sintaxis Suma + valor1 + valor2 Resta valor1 – valor2 Multiplicación * valor1 * valor2 División / valor1 / valor2 Residuo mod valor1 mod valor2 Potencia ^ valor1 ^ valor2 Raíz Cuadrada sqrt sqrt(valor) Valor Absoluto abs abs(valor) Seno sin sin(valor) Coseno cos cos(valor) Tangente tan tan(valor) Arco Seno asin asin(valor) Arco Coseno acos acos(valor) Arco Tangente atan atan(valor) Seno Hiperbólico sinh sinh(valor) Coseno Hiperbólico cosh cosh(valor) Tangente Hiperbólico tanh tanh(valor) Logaritmo Decimal log log(valor) Logaritmo Neperiano ln ln(valor) Exponencial de e exp exp(valor) Número Aleatorio random random(valor) Entero más cercano round round(valor) Parte entera trunc trunc(valor)


Operadores Relacionales: Operación Símbolo Sintaxis Mayor que > valor1 > valor2 Menor que < valor1 < valor2 Mayor igual que >= valor1 >= valor2 Menor igual que <= valor1 <= valor2 Igual que = valor1 = valor2 Diferente de != valor1 != valor2

Operadores Lógicos (Véase Tablas de Verdad y Puertas Lógicas) :Operación Símbolo Sintaxis No not not valor Y and valor1 and valor2 O or valor1 or valor2 O exclusivo xor valor1 xor valor2 No Y nand valor1 nand valor2 No O nor valor1 nor valor2 No O exclusivo xnor valor1 xnor valor2

Tanto los operadores relacionales como los operadores lógicos, retornan valores de tipo lógico o booleano, en el caso de FreeDFD, retornan “.V.” (verdadero o 1) o “.F.” (falso o 0). Operadores con Cadenas Para este caso tenemos dos operadores que podemos usar en FreeDFD, que son: » Obtener la longitud de una cadena: len. Por ejemplo: len(‘hola’) es igual a 4, que es la cantidad de caracteres en la cadena. » Obtener parte del contenido de una cadena: substring. Por ejemplo: substring(‘pingüino’,5,4) es igual a ‘üino’, ya que “ü”, es el carácter numero 5 de la palabra “pingüino” y el operador devolverá los cuatro caracteres siguientes al quinto incluido el mismo.” (19)

(19) http://dfdgurzaf.wordpress.com/2010/05/05/opera dores-de-freedfd/#more-87


“Decisión en un DFD Una decisión es una estructura de control, como su nombre lo indica sirve para tomar decisiones simples en un lenguaje de programación o en este caso en un DFD, se representa por este símbolo:

Una vez pulsas el botón y decides donde quieres poner tu decisión, debes obtener algo como esto:


Al interior del rombo, se pondrá una condición, si la condición se evalúa como verdadera (ver operadores que retornen valores de tipo booleano como los relacionales y los lógicos), se ejecutara el código que se encuentre en la linea que diga “Si” a uno de los lados del rombo, en caso contrario se ejecutará lo de la linea que dice “No”. El lado al que se ubica cada respuesta se puede cambiar fácilmente.

Damos doble clic sobre la figura y obtendremos una ventana similar a esta:


En el campo condición se pondrá la condición a evaluar, que en caso de ser verdadera, ejecutara el código que se encuentre por la linea en la que esta la palabra “si”.

En la parte de la ventana en la que dice “Condición verdadera”, se puede cambiar a que lado queda la palabra “si” y la palabra “no”.

Observemos el siguiente vídeo en el que tenemos un ejemplo:” (20)

(20) http://dfdgurzaf.wordpress.com/2010/05/05/decision /#more-68


“Lectura o Entrada

Lectura, es la herramienta que tenemos para hacer el ingreso de forma dinámica de valores en el programa y definir variables, para hacer uso de esta herramienta, pulsamos sobre el botón con este simbolo:

Una vez lo pulsamos, seleccionamos la posición en donde lo queremos poner en nuestro diagrama de flujo:


Luego daremos sobre el símbolo doble clic y nos aparecerá una ventana, en la cual debemos poner el nombre de la variable en la cual vamos a almacenar el valor que ingresemos:

Y cuando ejecutemos el programa, nos aparecerá una ventana como la que aparece a continuación donde ingresaremos el valor que será almacenado en la variable, las variables numéricas se ingresan normalmente y las cadenas deben llevar las comillas simples:


Si se ingresa incorrectamente una cadena, se tomará como una variable, y en caso de no existir previamente aparecerá un mensaje de error, por tanto es importante tener en cuenta que cuando se va a ingresar un valor de tipo cadena, se requiere que sea entre comillas simples.

Observemos un ejemplo en el siguiente vídeo:

“ (21)

(21) http://dfdgurzaf.wordpress.com/2010/05/05/lecturao-entrada/#more-54


“Salida

La salida por pantalla es el único medio que tenemos para obtener respuestas sobre los procesos realizados con FreeDFD, se representan por este simbolo en el programa:

Para usar esta herramienta, basta con activar el botón y hacer clic en la zona del DFD en la que queremos poner una salida, para que nos quede de este modo:


Una vez realizado esto, damos doble clic sobre el sĂ­mbolo y nos aparecerĂĄ una ventana como la de la imagen a continuaciĂłn, en la cual podemos poner variables, cadenas o cadenas concatenadas con variables:

Una vez ejecutado el programa, nos debe aparecer una ventana con nuestro mensaje, tal y como la siguiente (para saber mĂĄs sobre el hola mundo):


En el siguiente vídeo, podemos observar otro ejemplo. En este ejemplo se usa además de la salida por pantalla, la asignación:” (22)

(22)

http://dfdgurzaf.wordpress.com/2010/05/04/salida/


“Objetos Los objetos de FreeDFD, son los que aparecen en dicha sección de la barra de herramientas.

El primer botón, se denomina Cursor, cuando este botón se encuentra activado, se pueden hacer selecciones en el área de edición del programa. El segundo botón, se denomina Asignación, y sirve para hacer definición de variables en el programa de manera estática. El tercer botón, se denomina Ciclo Mientras, sirve para crear una estructura repetitiva dentro del programa y ejecutar una serie de instrucciones muchas veces seguidas, mientras se considere una condición como verdadera. El cuarto botón, se denomina Ciclo Para, sirve para crear del mismo modo que el ciclo mientras una estructura repetitiva dentro del programa, para que se repitan una serie de instrucciones, solo que la condición es diferente. El quinto botón, se denomina Decisión, sirve para tomar decisiones simples dentro del programa, se ingresa dentro de la “decisión”, una condición y dependiendo de si esa condición es falsa o verdadera, el programa ejecutara una serie de instrucciones diferentes en cada caso. El sexto botón, se denomina Lectura o Entrada, sirve para realizar definiciones de variables de manera dinámica, en el momento en que el programa esta en ejecución. El séptimo botón, se denomina Salida, sirve para mostrar salidas por pantalla de los diferentes procesos que se realizan con el programa, es el único medio que tenemos para obtener resultados. El octavo botón, se denomina Llamada, sirve para hacer llamadas a otros subprogramas.” (23)

(23) /

http://dfdgurzaf.wordpress.com/2010/05/04/objetos


“ESTRUCTURAS CONDICIONALES, SIMPLES, DOBLES Y MULTIPLES” “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


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:” (24)

Pseudocódigo:

(24)

Diagrama de flujo:

http://www.desarrolloweb.com/articulos/2225.php


“INTEGRANDO LOS APRENDIZAJES II” Resolver los siguientes ejercicios: 1. Realizar un programa que solicite ingresar dos números distintos y muestre por pantalla el mayor de ellos. 2. Una ONG tiene puntos de reparto de vacunas que se pretende funcionen de la siguiente manera. Cada día, empezar con 1000 vacunas disponibles y a través de un programa que controla las entregas avisar si el inventario baja de 200 unidades. Desarrollar pseudocódigo y diagrama de flujo. 3. Un vivero forestal actualiza cada seis meses los precios de la planta que vende en función de los valores oficiales de inflación mensual. Desean desarrollar un programa que proporcione el precio actualizado a partir del precio anterior y los valores de inflación. 4. Una central distribuye cal hacia diferentes almacenes sucursales. Disponen de un muelle de carga a donde van llegando sacas de cal de entre 3000 y 9000 Kgs, con pesos variables en función de las circunstancias de la producción. La empresa dispone de una flota de camiones con capacidades de carga de entre 18000 y 28000 Kgs. 5. Se pretende establecer un protocolo consistente en cargar 20 camiones diarios. Cada camión se quiere cargar como máximo a su límite de capacidad debiendo partir si con la siguiente saca en la línea de producción se fuera a exceder su capacidad. La empresa quiere desarrollar un programa que le pida al operario encargado de carga la capacidad del camión y el peso de las sacas, indicándole si debe cargar la saca o despachar el camión para comenzar a cargar otro. 6. Dado los datos A, B, C y D que representan números enteros, escriba los mismos en orden inverso. 7. Escriba un diagrama de flujo que permita calcular e imprimir el cuadrado y el cubo de un número entero positivo NUM. 8. Dado el radio y la altura de un cilindro, calcule su área y su volumen. 9. El programa, dados como datos dos números reales, calculará la suma, la resta y multiplicación de dichos números. Considere 2 dígitos significativos para su respuesta. 10. Escriba un algoritmos en donde, dado el nombre de un dinosaurio, su peso expresado en toneladas y su longitud expresada en pies; escriba el nombre del dinosaurio, su peso y longitud expresadas en Kilogramos y metros respectivamente.


BIBLIOGRAFIA www.google.com www.wikipedia.com www.starmedia.com www.kalipedia.com www.yahoo.es

manual de algoritmos  

manual con informacion de algoritmos, que te permitira entender su uso, y se te hara mas facil de entender y poder aplicarlo.

Read more
Read more
Similar to
Popular now
Just for you