Algoritmo

Page 1

ALGORITMOS Y DIAGRAMAS DE FLUJO

ALUMNOS: Chacón Meoño Karem Delgado Meneses Enzo Jimenez Vilchez Cristian Coronado Purisaca Gerson

DOCENTE: Nerita Tarrillo Dávila AREA: Educación por el Trabajo GRADO: 4° SECCION: ‘’A’’ 15/07/2015


El presente trabajo estĂĄ dedicado en primer lugar a Dios quien nos ha brindado la salud y bienestar necesario para realizar nuestros objetivos.

A nuestros padres y a nuestra familia por brindarme su apoyo y poder realizar este trabajo

A usted profesora por brindarnos la informaciĂłn y conocimientos necesarios, ya que asĂ­ hemos podido realizar nuestro trabajo de manera satisfactoria.

2


3


4


En este presente manual les damos a conocer acerca de los algoritmos y de los diagramas de flujo en el cual se detalla toda aquella información acerca de esto.

Es fundamental saber estos son importantes para poder desarrollar ejercicios de una manera más practica en la vida académica y en las actividades que tengamos que desarrollar.

Esperamos que este trabajo sea del mayor agrado del lector y que pueda ser útil en el uso de estos.

5


6


El término proviene del matemático árabe Al’Khwarizmi, que escribió un tratado sobre los números. Este texto se perdió, pero su versión latina, Algoritmi de Numero Indorum, sí se conoce. El

trabajo

de

Al’Khwarizmi

permitió

preservar

y

difundir

el

conocimiento de los griegos (con la notable excepción del trabajo de Diofanto) e indios, pilares de nuestra civilización. Rescató de los griegos la rigurosidad y de los indios la simplicidad (en vez de una larga demostración, usar un diagrama junto a la palabra Mira). Sus libros son intuitivos y prácticos y su principal contribución fue simplificar las matemáticas a un nivel entendible por no expertos. En particular muestran las ventajas de usar el sistema decimal indio, un atrevimiento para su época, dado lo tradicional de la cultura árabe. La exposición clara de cómo calcular de una manera sistemática a través de algoritmos diseñados para ser usados con algún tipo de dispositivo mecánico similar a un ábaco, más que con lápiz y papel, muestra la intuición y el poder de abstracción de Al’Khwarizmi. Hasta se preocupaba de reducir el número de operaciones necesarias en cada cálculo. Por esta razón, aunque no haya sido él el inventor del primer algoritmo, merece que este concepto esté asociado a su nombre.

7


Los babilonios que habitaron en la antigua Mesopotamia, empleaban unas pequeñas bolas hechas de semillas o pequeñas piedras, a manera de “cuentas” y que eran agrupadas en carriles de caña. Más aún, en 1.800 A.C. un matemático babilónico inventó los algoritmos que le permitieron resolver problemas de cálculo numérico. En 1850 A.C., un algoritmo de multiplicación similar al de expansión binaria es usado por los egipcios. La teoría de las ciencias de la computación trata cualquier objeto computacional para el cual se puede crear un buen modelo. La investigación en modelos formales de computación se inició en los 30’s y 40’s por Turing, Post, Kleene, Church y otros. En los 50’s y 60’s los lenguajes de programación, compiladores y sistemas operativos estaban en desarrollo, por lo tanto, se convirtieron tanto en el sujeto como la base para la mayoría del trabajo teórico. El poder de las computadoras en este período estaba limitado por procesadores lentos y por pequeñas cantidades de memoria. Así, se desarrollaron teorías (modelos, algoritmos y análisis) para hacer un uso eficiente de ellas. Esto dio origen al desarrollo del área que ahora se conoce como “Algoritmos y Estructuras de Datos”. Al mismo tiempo se hicieron estudios para comprender la complejidad inherente en la solución de algunos problemas. Esto dió origen a lo que se conoce como la jerarquía de problemas computacionales y al área de “Complejidad Computacional”.

8


 Es grupo finito de operaciones organizadas de manera lógica y ordenada que permite solucionar un determinado problema. Se trata de una serie de instrucciones o reglas establecidas que, por medio de una sucesión de pasos, permiten arribar a un resultado o solución. Es la forma en la que un ordenador pueda realizar las distintas operaciones que se le dan en un determinado tiempo. 

‘’Descripción de un esquema de comportamiento expresado mediante un reportorio finito de acciones y de informaciones elementales, identificadas, bien comprendidas y realizables a priori. Este repertorio se denomina léxico ‘’[Pierre Scholl, 1988]

Es la descripción de los comportamientos expresados mediante una información que se da. 

‘’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.’’ [Rodolfo Quispe-Otazu, 2004] Es un conjunto de pasos, con reglas que no sean ambiguas, es decir que no se puedan entender de varios modos; y sirve para dar solución a un problema en un tiempo determinado.

9


‘’Un algoritmo se define como un conjunto de instrucciones para resolver un problema. En otros términos, un algoritmo 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’’

Se puede definir a un algoritmo como un conjunto de instrucciones con el cual se puedan resolver el problema que se da.

Los algoritmos son independientes de los lenguajes de programación. En cada problema el algoritmo puede escribirse y luego ejecutarse en un lenguaje de diferente programación. El algoritmo es la infraestructura de

cualquier

solución,

escrita

luego

en

cualquier

lenguaje

de

programación. En la naturaleza hay muchos procesos que puedes considerar como Algoritmos ya que tienen procedimientos y reglas. Incluso, muchas veces no somos conscientes de ellos. Por ejemplo, el proceso digestivo es un concepto de algoritmo con el que convivimos a diario sin que nos haga falta una definición precisa de este proceso. El hecho de que conozcamos cómo funciona el sistema digestivo, no implica que los alimentos que consumimos nos alimenten más o menos. La familiaridad de lo que sucede día a día nos impide ver muchos algoritmos que pasan a nuestro alrededor. Procesos naturales como la gestación, las estaciones, la circulación sanguínea, los ciclos planetarios, etc, son algoritmos naturales que

10


 Es una fórmula para resolver un problema.  Un programa de computadoras, es un algoritmo que le dice a la computadora los pasos específicos para llevar a cabo una tarea.  Es un conjunto de acciones o secuencias de operaciones que ejecutadas en un determinado orden resuelven un problema.  Un algoritmo es un conjunto ordenado y finito de operaciones que se utiliza para la solución de un problema. Se trata de instrucciones o reglas definidas que, a través de pasos sucesivos, que permiten realizar una actividad.  Cabe destacar que los algoritmos son muy importantes en la informática ya que permiten representar datos como secuencias de bits. Conjunto de acciones o secuencias de operaciones ejecutadas en un determinado orden para resolver un problema.  Acción Acontecimiento producido por un actor en un tiempo finito que produce un resultado definido y preciso y además genera cierta transformación. Analizaremos la acción Existen diferentes tipos de acciones:  Acción simple: Realizadas directamente  Acción compleja: No se pueden realizar directamente sino a través de una descomposición de acciones más simples. Transformación Generada en los elementos intervinientes. determinar la transformación debo conocer el ESTADO.

Para

ESTADO Es la observación de los elementos del sistema en un instante de tiempo dado.

11


Hay tres tipos de estado  Estado inicial Instante donde comienza la acción.  Estado intermedio Instante observado en cualquier momento entre el comienzo y la finalización de la acción.  Estado Final Instante observado donde finaliza la acción Características de los algoritmos  Definido (confiable)  Debe indicar un orden a seguir  Debe ser finito, terminar en un número finito de pasos.

EJEMPLOS DE ALGORTIMOS Cambiar una bombilla de foco 

Ubicar una escalera o un banco debajo de la bombilla a cambiar

Tomar una bombilla nueva

Subir por la escalera o al banco

Sujetar y girar la bombilla a cambiar hacia la izquierda hasta retirarla del plafón.

Enroscar la bombilla nueva hacia la derecha en el plafón hasta apretarla.

Bajar de la escalera o del banco

 Fin

12


Es un algoritmo que puede ser ejecutado en una computadora. Ejemplo: Fórmula aplicada para un cálculo de la raíz cuadrada de un valor x.

Es un algoritmo que no requiere de una computadora para ser ejecutado. Ejemplo: Instalación de un equipo de sonido.

Un algoritmo es cualitativo cuando en sus pasos o instrucciones no están involucrados cálculos numéricos. Ejemplos: Las instrucciones para desarrollar una actividad física, encontrar un tesoro.

13


Algoritmo cuantitativo: Un algoritmo es cuantitativo cuando en sus pasos o instrucciones involucran cálculos numéricos. Ejemplo: Solución de una ecuación de segundo grado.

Todo Algoritmo debe tener las siguientes partes:

·

Entrada de datos, son los datos necesarios que el algoritmo necesita para ser ejecutado.

·

Proceso, es la secuencia de pasos para ejecutar el algoritmo.

·

Salida de resultados, son los datos obtenidos después de la ejecución del algoritmo.

Para la representación de un algoritmo, antes de ser convertido a lenguaje

de

programación,

se

utilizan

algunos

métodos

de

representación escrita, gráfica o matemática. Los métodos más conocidos son:

14


 Diagramación libre (Diagramas de flujo).  Diagramas Nassi-Shneiderman.  Pseudocódigo.  Lenguaje natural (español, inglés, etc.).  Fórmulas matemáticas.

15


Las propiedades de un algoritmo son puntos guía a seguir para su elaboración, ya que estos llevan un mejor desarrollo del problema del computador.

1. 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 pasa a la siguiente etapa. El enunciado que se da debe ser entendible, pero mientas no se comprenda no podemos pasar a la siguiente propiedad.

2. ANALISIS DE LA SOLUCION GENERAL ‘’Entendido el problema para resolver es preciso analizar:  Los datos o resultados que se esperan.  Los datos de entrada que nos suministran.

16


 El proceso al que se requiere someter esos datos a fin de obtener los resultados esperados.  Áreas de trabajo, formulas y otros recursos necesarios. Una recomendación muy práctica es el que nos pongamos en el lugar del computador, y analicemos que necesito que me ordenen en que secuencia, para poder producir os resultados esperados. ’’ Para poder resolver el problema debemos de analizar primero los datos o resultado que se esperan, el proceso en el que se va a dar el algoritmo; una recomendación muy importante es que debemos de ponernos en el lugar del computador.

3. DIFERENTES ALTERNATIVAS DE SOLUCIÓN ‘’Analizamos el problema, posiblemente tengamos varias 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.’’ Al desarrollar el problema, se presentan varias alternativas, pero debemos de ver mejor, la que se pueda resolver en menor tiempo.

17


‘’Los conocimientos adquiridos anteriormente son las herramientas necesarias para llevar a cabo la elaboración de un algoritmo a través de un problema. Se recomienda tomar en cuenta cada una de las propiedades de un algoritmo, ya que de ahí se inicia el proceso de elaboración. ’’ Para poder elaborar un algoritmo, primero es muy importante tomar en cuenta las propiedades que se presentaron anteriormente.

A continuación se mostrara el desarrollo de un problema con su respectivo algoritmo como solución. Supongamos que se necesita calcular e imprimir el área de un triángulo cuya base y altura se suministraran de un disco.

18


PROCEDIMIENTO: Escribir correctamente el enunciado del problema. ‘’Calcular e imprimir el área de un triángulo cuya base y atura se suministraran de un disco’’.

ANALISIS: 1. ¿Qué se quiere? ¿Cómo se quiere? ¿Qué deseo obtener?  ¿Qué se quiere? : Quiero calcular el área de un triángulo.  ¿Cómo se quiere?: Lo quiero calcular a través de una formula. Área de triangulo = Base x Altura 2 

¿Qué deseo obtener? : Imprimir el área del triángulo y suministrar

los resultados en un disco.

Solución: Variables utilizadas en esta solución:

19


DE LECTURA

PARA ALMACENAR El valor correspondiente a la base del triangulo

Base

El valor correspondiente a la altura del triangulo

Altura

Buscar diferentes alternativas de solución al resultado del problema.

Ejemplo: El problema pide imprimir el área del triángulo como resultado, en un disco. Algoritmo: Programa para calcular el área del triángulo. Inicio Lea

Base, Altura

Calcule

Área= (base*altura)/2

Imprima

‘’Resultado=’’, Área

Fin

20


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.

21


En general, la parte común en todas las definiciones se puede resumir en las siguientes tres propiedades siempre y cuando no consideremos algoritmos paralelos.

 Tiempo secuencial. Un algoritmo funciona en tiempo discretizado –paso a paso–, definiendo así una secuencia de estados "computacionales" por cada entrada válida (la entrada son los datos que se le suministran al algoritmo antes de comenzar).  Estado abstracto. Cada estado computacional puede ser descrito formalmente utilizando una estructura de primer orden y cada algoritmo es independiente de su implementación (los algoritmos son objetos abstractos) de manera que en un algoritmo las estructuras de primer orden son invariantes bajo isomorfismo.  Exploración acotada. La transición de un estado al siguiente queda completamente determinada por una descripción fija y finita; es decir, entre cada estado y el siguiente solamente se puede tomar en cuenta una cantidad fija y limitada de términos del estado actual. En resumen, un algoritmo es cualquier cosa que funcione paso a paso, donde cada paso se pueda describir sin ambigüedad y sin

22


hacer referencia a una computadora en particular, y además tiene un límite fijo en cuanto a la cantidad de datos que se pueden leer/escribir en un solo paso. Esta amplia definición abarca tanto a algoritmos prácticos como aquellos que solo funcionan en teoría, por ejemplo el método de Newton y la eliminación de Gauss-Jordan funcionan, al menos en principio, con números de precisión infinita; sin embargo no es posible programar la precisión infinita en una computadora, y no por ello dejan de ser algoritmos.10 En particular es posible considerar una cuarta propiedad que puede ser usada para validar la tesis de Church-Turing de que toda función calculable se puede programar en una máquina de Turing (o equivalentemente, en un lenguaje de programación suficientemente general)

 Aritmetizabilidad. Solamente operaciones innegablemente calculables están disponibles en el paso inicial.

23


Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades del lenguaje natural. Dichas expresiones son formas más estructuradas para representar algoritmos; no obstante, se mantienen independientes de un lenguaje de programación específico.

La descripción de un algoritmo usualmente se hace en tres niveles:

 Descripción de alto nivel. Se establece el problema, se selecciona un modelo matemático y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.  Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que encuentran la solución.  Implementación. Se muestra el algoritmo expresado en un lenguaje de programación específico o algún objeto capaz de llevar a cabo instrucciones.

24


25


26


‘’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:  El Nombre o identificador que se le asigna  El tipo que describe el uso de la variable  El valor de la variable que es la cantidad que tiene asociada en un determinado momento  Una variable de un tipo determinado solo puede tomar valores de ese tipo’’ Las variables son los distintos datos que varían o se pueden alterar durante la ejecución de dicho algoritmo, se identifican por el nombre que se le asigne o también por el tipo que describe el uso de las variables, y existen más atributos. Las variables puede ser identificadas de acuerdo a la función que asume en el algoritmo, como:

27


CONTADOR ‘’Sirve para llevar una cuenta con incrementos o decrementos constantes, generalmente de 1 en 1’’ Este tipo de variable sirve para el aumento o la disminución de algunas constantes.

Cumpleaños, variable que acumula el número de cumpleaños año con año. Requiere las siguientes instrucciones Cumpleaños = 1 Cumpleaños = cumpleañoes1

//Inicializar en uno //cumpleaños aumenta en cada año

28


ACUMULADOR Sirve para llevar una suma o cuenta de diferentes valores (acumular).

Se da la variable que almacena la suma de las edades de una cantidad de personas. Requiere de las siguientes instrucciones

Sedad= 0 Sedad= Sedad + Edad

//Inicializa en cero //Sedad se incrementa en el Edad

 Inicializar, significa poner en blanco o en cero una variable o campo antes de su utilización.  Los acumuladores y contadores por lo general se inicializan encero.

VARIABLE DE TRABAJO ‘’Campo que almacena temporalmente el resultado de alguna operación. No es variable de entrada ni de salida. ’’ Es un tipo de variable en la que se almacena el resultado de la operación que se ha realizado.

29


Me piden encontrar el รกrea de un cuadrado, para ello necesito el valor para el Lado AREACUADRADO = LADO x LADO

30


‘’El tipo de un dato es el conjunto de valores que puede tomar durante el programa. Si se le intenta dar un valor fuera del conjunto se producirá un error. El tipo de dato le indica al compilador del lenguaje de programación dos cosas: el número de bytes requeridos para guardar el dato, y la manera en que se manipulara y operara el dato.’’

Son los conjuntos de variables que pueden ser tomados durante la operación dada, los tipos de datos le indican al computador cual va a ser el numero bytes usados para que el dato pueda ser guardado, etc. La asignación de tipos a los datos tiene dos objetivos principales:  

Por un lado, detectar errores en las operaciones Por el otro, determinar cómo ejecutar estas operaciones  Cada lenguaje de programación tiene sus propios tipos de datos, algunos de estos son comunes a todos, entre los tipos de datos comunes están :

    

Entero, Real, Carácter, Lógico, Fecha / hora y Cadena.

31


‘’El tipo de datos entero es un tipo simple, y dentro de estos, es ordinal. Al declarar una variable de tipo entero, se está creando una variable numérica que puede tomar valores positivos o negativos, y sin parte decimal. Este tipo de variables, puede utilizarse en asignaciones, comparaciones, expresiones aritméticas, etc. ‘’ Este tipo de dato es un tipo simple, a diferencia de los otros, ya que al declarar la variable de tipo entero, se puede tomar los valores ya sean positivos o negativos.

Algunos de los papeles más comunes que desarrollan son:    

Controlar un bucle. Usarlas como contador, incrementando su valor cuando sucede algo. Realizar operaciones enteras, es decir, sin parte decimal Y muchas más...

A continuación se muestra un ejemplo en el que aparecen dos variables enteras. Como se puede ver, en el ejemplo se muestran las dos maneras de declarar una variable de tipo entero:

32


Type tContador = integer; var i : tContador; n : integer; begin n := 10; (* asignamos valor al maximo *) i := 1; (* asignamos valor al contador *) while (i <= n) do begin writeln('El valor de i es ',i); i := i + 1 end end.

33


EL TIPO BOOLEAN (LOGICO) ‘’El tipo de datos lógico es el que permite usar variables que disponen sólo de dos posibles valores: cierto ó falso. Debido a esto, su utilidad salta a la vista, y no es otra que variables de chequeo. ‘’ Este tipo de datos solo van a permitir desarrollar dos valores, ya sea cierto o falso. Por todo eso su utilidad es muy vistosa. Nos sirven para mantener el estado de un objeto mediante dos valores: si/no cierto/falso funciona/nofunciona on/off etc. Para aclararlo, se muestra el siguiente ejemplo:

34


Type tLogico = boolean; var llueve : tLogico; (* si llueve o no *) paraguas : boolean; (* si encuentro o no el paraguas *) begin (* aqui se determinarian los valores de "llueve" y "paraguas" *) if llueve and (not paraguas) then writeln('Me quedo en casita') else writeln('Me voy a dar un paseo') end.

EL TIPO REAL ‘’El tipo de datos real es el que se corresponde con los números reales. Este es un tipo importante para los cálculos. Por ejemplo en los estadísticos, ya que se caracterizan por tratar fundamentalmente con valores decimales. A continuación se muestra un ejemplo en el que se utiliza el tipo real. En el se puede ver las dos formas de declarar una variable real, y también el uso de una constante real.’’

35


Este tipo de dato va a corresponder con los números reales (ya su mismo nombre nos lo dice). Const pi = 3.1416; type tArea = real; var A : tArea; (* area *) R : real; (* radio *) begin R := 4.50; A := pi * R * R; (* calculamos el area *) writeln('El área para un radio de ',R:4:2,' es ',A:8:4) end.

LOS TIPOS CHAR Y STRING (CARÁCTER Y CADENA)

‘’Con el tipo carácter se pueden tener objetos que representen una letra, un número, etc. Es decir, se usan variables o constantes que representen un valor alfanumérico. Pero, cada variable sólo podrá almacenar un carácter. Sin embargo, con las cadenas de caracteres (strings) se puede contener en una sola variable más de un carácter. ‘’

36


Con este tipo se pude utilizar una letra, u otros datos ya sean números, etc. ; esto quiere decir que se pueden usar variables los cuales representar un valor alfanumérico. Aunque hay una cosa importante, la cual es que cada variable solo puede almacenar un carácter.

Por ejemplo, se puede tener en una variable tu nombre. Veamos a continuación cómo se usan ambos tipos en el siguiente ejemplo: Type tNombre = string[10]; (* puede almacenar 10 caracteres *) var nombre : tNombre; (* variable para almacenar el nombre *) letra_NIF : char; (* caracter para contener la letra del NIF *) begin nombre := 'Beni'; letra_NIF := 'L'; writeln('Mi nombre es ',nombre,' y mi letra es ',letra_NIF) end.

37


Los operadores nos permiten realizar operaciones aritméticas entre los datos, ya sean constantes o variables.

Aunque el número y tipo de operadores depende del lenguaje de programación que se esté utilizando, los operadores más frecuentes se clasifican de la siguiente forma:

OPERADORES ARITMETICOS ‘’Los operadores aritméticos permiten la realización de operaciones matemáticas con los valores (variables y constantes). Los operadores aritméticos pueden ser utilizados con tipos de datos enteros o reales. Si ambos son enteros, el resultado es entero; si alguno de ellos es real, el resultado es real’’ Este tipo de operadores nos permiten realizar operaciones matemáticas, con distintos valores. También nos permite utilizar los tipo es enteros o reales, ya que si son enteros, el resultado va a ser entero; pero si es real, el resultado será real.

Los cuales son: +Suma -Resta *Multiplicación

38


/División Mod Modulo (residuo de la división entera) El operador mod sólo se aplica a operando tipo entero. El mod se lee como módulo de la división, y el resultado será el residuo de una división entera. EJEMPLO Expresión Resultado 7/2=3.5 12mod7=5 4 + 2 * 5 =14

OPERADORES DE RELACION Los cuales son: >, >=, <, <=, !=, ==

Se hace una distinción con el operador de igualdad, que no es el mismo de asignación: ==. Así se tiene x == y se traduce como "¿es x igual a y?, en tanto que x=y, equivale a decir "a la variable x se le asigna el mismo valor que tiene y "

39


OPERADORES LOGICOS Estos operadores se utilizan para establecer relaciones entre valores lógicos. · Estos valores pueden ser resultado de una expresión relacional. Operadores Lógicos AndY OrO Not Negación Para resolver expresiones con operadores lógicos, se utilizan las siguientes tablas, conocidas como tablas de verdad: X ! (NOT) Falso Verdadero Verdadero Falso

X

y

&& (AND)

Falso

Falso

Falso

Falso

Verdadero

Falso

Verdadero

Falso

Falso

Verdadero

Verdadero

Verdadero

X

y

II (OR)

Falso

Falso

Falso

Falso

Verdadero

Verdadero

Verdadero

Falso

Verdadero

Verdadero

Verdadero

Verdadero

40


OPERACIÓN DE ASIGNACION Por el momento, el único operador de asignación es: =

‘’Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales. Por ejemplo: a+(b3)/c 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 operándose. ‘’ En las expresiones, cada expresión siempre va a tomar un valor el cual determine los valores, y que estos indiquen la ejecución de las operaciones. Como dice el autor cada expresión consta de operadores y operando. Según sea el tipo de datos que manipulan, se clasifican las expresiones en: ·Aritméticas ·Relaciónales · Lógica

41


42


‘’Es una descripción grafica de un procedimiento para la resolución de un problema. Son frecuentemente usados para descubrir algoritmos y programas de computador. Los diagramas de flujos están compuestos por figuras conectadas con flechas. Para ejecutar un proceso comienza por el Inicio y se siguen las acciones indicadas por cada figura: El tipo de figura indica el tipo de paso que representa. Del Software, DFD es un software diseñado para contribuir y analizar algoritmos se puede crear diagramas de flujos de datos para la representación de algoritmos de programación estructurada a partir de las herramientas de edición que para este propósito suministra el programa .Después de hacer haber ingresado el representado por el diagrama, podrá, ejecutarlo analizarlo y depurarlo en un entorno interactivo diseñado para este fin. La interfaz gráfica de DFD facilita en gran medida el trabajo con diagramas ya que simula la representación estándar de diagramas de flujo en hojas de papel.’’ El software DFD Es una descripción gráfica, la cual nos permite desarrollarla problemas, son muy frecuentes para la realización de algoritmos o también algunos programas del computador. Los DFD es una representación gráfica de un algoritmo. Ed un diagrama que utiliza símbolos o cajas, que están conectadas por líneas o flechas que indican la secuencia en que se deben ejecutar.

43


Los diagramas de flujo son usados para representar algoritmos pequeños, ya que abarcan mucho espacio y su construcción es laboriosa. Por su facilidad de lectura son usados como introducción a los algoritmos, descripción de un lenguaje y descripción de procesos a personas ajenas a la computación.

44


45


‘’Las diversas organizaciones usan distintos símbolos, pero el comité

sobre computadoras y procesadores de información de la Asociación Norteamericana de Normas ha hecho un gran esfuerzo para normalizar los símbolos de los diagramas de flujo. Esa normalización permite comprender cualquier diagrama de flujo que use los símbolos recomendados. Cada símbolo normal de diagrama de flujo tiene un significado especial.’’ La simbología de los DFD es muy variada ya que existen varios símbolos y cada uno de ellos está hecho con un fin especial.

Expresa Inicio o Fin de un Programa.

Expresa operación algebraica o de Asignación.

46


Expresa condiciones y asociaciones alternativas de una decisión lógica.

Expresa condición y acciones alternativas de una decisión numérica.

Entrada / Salida: Representa cualquier tipo de Fuente de entrada y salida

Entrada: Lectura de datos por tarjeta perforadas.

47


Conector dentro de página.

Representa resultado mediante un reporte impreso.

Conector fuera de página.

Expresa operación cíclica repetitiva.

Expresa proceso de llamada a una subalterna.

48


Representa datos grabados en una cinta magnĂŠtica.

Almacenamiento en lĂ­nea Disco MagnĂŠtico.

49


Un diagrama de flujo es una forma esquemática de representar ideas y conceptos en relación. A menudo, se utiliza para especificar algoritmos de manera gráfica. Se conoce como diagramas de flujo a aquellos gráficos representativos que se utilizan para esquematizar conceptos vinculados a la programación, la economía, los procesos técnicos y/o tecnológicos, la psicología, la educación y casi cualquier temática de análisis. Los diagramas de flujo son múltiples y diversos y pueden abordar muchos temas distintos de formas también muy diferentes. En cualquier caso, el aspecto en común entre ellos es la presencia de un vínculo entre los conceptos enunciados y una interrelación entre las ideas. Comúnmente, se utiliza este tipo de diagramas para detallar el proceso de un algoritmo y, así, se vale de distintos símbolos para representar la trayectoria de operaciones precisas a través de flechas. Siempre que existe un diagrama de flujo existe un proceso o sistema que pretende ser graficado a través de símbolos visuales que, en vez de términos verbales, simplifican el funcionamiento de dicho proceso y lo hacen más claro y evidente al lector. Para que el diagrama de flujo tenga sentido como tal, debe existir un camino hacia una solución que parte de un único inicio y arriba a un único

50


punto final. Con el propósito de desarrollar un diagrama de estas características, se recomienda definir el propósito y destinatario del gráfico, identificar las ideas principales, determinar los límites y alcance del proceso a detallar, establecer el nivel de detalle requerido, identificar acciones, procesos y subprocesos, construir el diagrama y finalmente titularlo con exactitud. Conviene revisar el diagrama para comprobar que cumple su objetivo con claridad y precisión. Los símbolos más utilizados en los diagramas de flujo son la flecha (que indica sentido y trayectoria), el rectángulo (representa un evento o proceso), el rombo (una condición), el círculo (un punto de conexión) y otros. Además, existen diversos tipos de diagramas. El vertical, en el que la secuencia o flujo es de arriba hacia abajo; el horizontal, de izquierda a derecha; el panorámico, puede apreciarse de una vez y de forma tanto vertical como horizontal; el arquitectónico, describe una ruta sobre un plano arquitectónico de trabajo.

Un diagrama de flujo, puede tener tipos de errores diferentes:

DE FORMA: Se genera por no seguir las reglas establecidas, puede hacer el diagrama difícil interpretación, confundir el diagrama y hasta convertirlo en errado en cuanto ser lógica.

DE LÓGICA: Son errores de estructura del diagrama en cuanto al arden puede ser de distinta gravedad, desde dejar de

51


mostrar el resultado. O falta un cálculo hasta un error que determine que un programa nunca llegue a su fin.

DE OBJETIVO: Es cuando un diagrama de flujo esta correcto en cuanto a su estructura y forma pero no soluciona el problema propuesto sino otro. Una vez terminado el diagrama de flujo, es necesario asegurarse de que funcione correctamente cumpliendo el objetivo fundamental, las condiciones específicas y las excepciones del problema propuesto a esto se le llama generalmente "corrida en frio" prueba de escritorio. Para ellos e selecciona algunos datos (creadas por el programador para fines de la prueba) que cubran todos los casos posibles en todas las condiciones. Tomando estos datos se recorre el diagrama de flujo símbolo a símbolo siguiendo la orden de cada uno de ellos, todo esto se hará a un lado del diagrama o en una hoja aparte dándole valores a variables y ejecutando operación que se indique

52


EJEMPLO:

53


54


1. Los diagramas de flujo deben escribirse de arriba hacia abajo y/o de Izquierda a derecha. 2. Los símbolos se unen con líneas, las cuales tienen en la punta una flecha que indica su dirección que fluye la información procesos, se deben utilizar solamente líneas de flujo horizontal o vertical (nunca diagonales). 3. Se debe evitar el cruce de líneas, para lo cual se quisiera separar el flujo del diagrama a un sitio distinto, se pudiera realizar utilizando los conectores, se debe tener en cuenta que solo se van a utilizar conectores cuando sean estrictamente necesario. 4. No deben quedar líneas de flujo sin conectar. 5. Todo texto escrito dentro de un símbolo debe ser legible, preciso, evitando el uso de muchas palabras. 6. Todos los símbolos pueden tener más de una línea de entrada, a excepto del símbolo final. 7. Solo los símbolos de decisión pueden y deben tener más de una línea de flujo de salida.

Diagrama de flujo que encuentra la suma de los primeros 50 números naturales.

55


.

56


 

Formato vertical: En él, el flujo o la secuencia de las operaciones, va de arriba hacia abajo. Es una lista ordenada de las operaciones de un proceso con toda la información que se considere necesaria, según su propósito. Formato horizontal: En él, el flujo o la secuencia de las operaciones, va de izquierda a derecha. Formato panorámico: El proceso entero está representado en una sola carta y puede apreciarse de una sola mirada mucho más rápido que leyendo el texto, lo que facilita su comprensión, aún para personas no familiarizadas. Registra no solo en línea vertical, sino también horizontal, distintas acciones simultáneas y la participación de más de un puesto o departamento que el formato vertical no registra. Formato Arquitectónico: Describe el itinerario de ruta de una forma o persona sobre el plano arquitectónico del área de trabajo. El primero de los flujo gramas es eminentemente descriptivo, mientras que los utilizados son fundamentalmente representativos.

57


Favorecen la comprensión del proceso al mostrarlo como un dibujo. El cerebro humano reconoce muy 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, los flujos de los re-procesos, los conflictos de autoridad, las responsabilidades, los cuellos de botella, y los puntos de decisión. Muestran las interfaces 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. Al igual que el pseudocódigo, el diagrama de flujo con fines de análisis de algoritmos de programación puede ser ejecutado en un ordenador, con un Ide como Free DFD.

58


Un diagrama de flujo siempre tiene un único punto de inicio y un único punto de término. Las siguientes son acciones previas a la realización del diagrama de flujo: 

Identificar las ideas principales a ser incluidas en 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 qué 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 detalle definido incluye actividades menores, listarlas también.

Identificar y listar los puntos de decisión.

59


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.

60


61


62


1. Desarrollar un diagrama de flujo que permita realizar las cuatro operaciones con dos nĂşmeros ingresados por teclado.

Suma: S

INICIO

Resta: R Multiplicacion: M Division: D

N1, N2,S,R,M, D, son enteros

Leer: N1, N2

S= N1 + N2

R= N1 – N2

M= N1 * N2

D= N1 / N2

FIN

63


2. Realizar un DFD que permita calcular el promedio del área de educación para el Trabajo, teniendo en cuenta que está cuenta con 04 capacidades.

1° capacidad: C1 2° capacidad: C2

INICIO

3° capacidad: C3 4° capacidad: C4 Promedio: P

C1, C2, C3, C4, P son enteros

Leer: C1, C2, C3, C4

P= (C1+C2+C3+C4) / 4

‘’Imprimir P ‘’

FIN

64


3. Desarrollar un DFD que nos permita calcular el importe a pagar por un determinado artículo el cual se conozca su precio unitario.

INICIO

N, P, T, son enteros

Leer:

N, D

T= N * T

‘’Imprimir T’’

FIN

65


4. Desarrollar un DFD que nos permita cambiar una cantidad de soles a dólares.

INICIO

S, T son enteros

Leer: S

T= S / 2.659

‘’imprimir T’’

FIN

66


5. Diseñar un Diagrama de flujo correspondiente a un programa que calcule el área y el perímetro de un triángulo rectángulo dada la base y la altura.

INICIO

A, P, B, H, L1, L2, L3, son enteros

Leer B, H, L1, L2, L3

A= (B * A) / 2 P= L1 + L2 + L3

‘’Imprimir, A, P’’

FIN

67


6. Calcular el número de pulsaciones que una persona debe tener por cada 10 segundos de ejercicio. Si la fórmula es:

Num_puls= (220 – edad) /

10

Numero de

INICIO

Pulsaciones= NP Edad= X

NP, X es entero

Leer X

NP= (220-X) /10

Mostrar NP

FIN

68


7. Calcular el nuevo salario de un obrero si obtuvo un incremento del 25% sobre su salario anterior.

S= salario

INICIO

Sa = Salario anterior S, Sa son reales

Leer S

Mostrar S

S= Sa + ( S * 0,25)

FIN

69


8. Todos los lunes, miĂŠrcoles y viernes una persona corre la misma ruta y cronometra los tiempos obtenidos. Determina e tiempo promedio que la persona tarda en recorrer la ruta en una semana.

Distancia= D

INICIO

Tiempo obtenido el lunes= TL Tiempo obtenido el miĂŠrcoles= TM

Tl, TM, TV son reales

Tiempo obtenido el viernes= TV Tiempo total = TT

Leer TL, TM, TV

TT= (TL+TM+TV) /3

Imprimir TT

FIN

70


9. Un vendedor recibe un sueldo base más un 10% extra por comisión de sus ventas, el vendedor desea saber el total que recibirá en el mes tomando en cuenta su sueldo básico y comisiones.

P= sueldo mensual

INICIO

A= comisiones B= sueldo básico

b, A, P, v es real

V= ventas

Leer b, A

A= 0,10 * v P= b+A

Mostrar ´´P´´

FIN

71


Desarrollar un DFD que nos permita calcula la edad de una persona.

Fecha de Nacimiento

INICIO

Fecha actual E,fa,fn es

Edad= Fecha actual – Fecha de nacimiento

real

E: edad FA: Fecha Actual

INGRESAR FA , FN .

FN: Fecha de Nacimiento

E= fa- fn Mostrar e

Mostrar E

FIN

72


Diseñar un DFD que permita calcular la hipotenusa de un triángulo rectángulo

INICIO

H=

2

Ca + Ca

2

H,a,b es real

H: Hipotenusa

Ingresa a,b

A: número B: número H= sqrt/a^+b^2)

Mostrar h

FIN

73


Diseñar un DFD que permita determinar el área y volumen de un cilindro dado su radio (R) y altura (H).

INICIO Inicio Variables : R=0, H=0

R,H es real

Leer valor : Radio (R) y altura (H) Vol=π6R2H

Calcular volumen aplicando formula Calcular el valor del area

AREA=2*π R H

Mostrar el área y volumen Fin

MOSTRAR AREA, VOL

FIN

74


Elaborar un DFD que permita leer un valor cualquiera N y escriba si dicho nĂşmero es par o impar.

INICIO N=0

N

NO

SI

N ES PAR

N ES IMPAR

FIN

75


76


I.

Relaciona las siguientes columnas según crea conveniente

1. Variable Numerica

( 3 ) Esta formado por números y letras.

2. Variables Logicas

( 4 ) Se utiliza para llevar el control del numero de ocasiones en que se realiza una operación.

3. Variables alfanuméricas ( 2 ) Son aquellas que solo pueden tener

dos valores(verdaderos o flasos) 4. Contadores

( 1 ) Son aquellas en las cuales se almacenan Valores numéricos.

5. Definicion del problema ( 7 ) Debe tener un punto particular de inicio. 6. Analisis de problemas

( 8 ) Es la operación de escribir la solución del Problema

7. Diseño de algoritmo

( 5 ) Esta fase esta dada por el enunciado del Problema

8. Codificacion

( 6 ) Es la fase en la que es necesario definir los Datos e entrada, los métodos y la salida.

II.

Escribir los nombres de los siguientes símbolos que se muestran a continuación:

a)Inico y fin

e) procesos

b) procesos

c) entrada y salida de datos

d) decisión

f) salida por

g) conector de

h) salida por

77


predefinido

pantalla

pagina

impresora

RESOLVER LOS SIGUIENTES PROBLEMAS, UTILIZANDO LOS DIAGRAMAS DE FLUJO DE DATOS. Se desean depositar una cierta cantidad de dinero en el banco, el cual paga a raz贸n de 2% mensual. Realizar un DFD para saber cu谩nto dinero ganara en un mes.

INICIO CD, TI, G es real

Leer CD

TI = 0,02

G= CD * TI

Mostrar G FIN

78


10.

El profesor Wilton Torres desea saber el porcentaje

de hombres y el porcentaje de mujeres que hay en el grupo de estudiantes del 4° aùo.

INICIO

CH, CM es entero, X,

Ingresa CH, CM y= 100*CH/(CH+CM) x= 100*CM/(CH+CM)

Mostrar x, y FIN

79


80


Es una aplicación que permite crear diagramas de flujo, que se pueden utilizar para representar gráficamente una amplia gama de algoritmos, ejecutarlos y depurarlos si se encuentran errores. Con este programa, usted será capaz de guardar los diagramas en el disco duro o imprimirlos.

Es una herramienta de uso sencillo e intuitivo que permite resolver de manera gráfica algoritmos que pueden fácilmente transcribir a algún lenguaje de programación

81


DFD es una excelente herramienta en el aprendizaje y enseñanza del uso de diversas estructuras y funciones comunes a la programación porque permite de manera gráfica resolver problemas mediante el uso de diagrama de flujo.

DFD permite trabajar con variables, arreglos, funciones, matemáticas, cadenas, texto pudiendo resolver problemas de mediana complejidad sin la necesidad de emplear algún lenguaje de programación específico. El software ayuda al estudiante a adquirir las habilidades necesarias para poder resolver problemas mediante algoritmos representados por Diagramas de Flujo, siendo estos fácilmente re escribibles en el lenguaje de programación que se desee.

82


83


Primero leer el problema detenidamente para poder llegar a una solución Luego se analiza para sacar los datos que se insertaran en el DFD Después se abre el DFD Lo siguiente es seleccionar el símbolo con el que se va a iniciar y se arrastra para insertarlo. El siguiente paso es el proceso en el cual se ponen las variables que aparecerán en todo el diagrama, el símbolo del proceso es el rectángulo. Luego se pedirán el valor para las variables, las cuales se piden por medio del símbolo de un cono. Después se les da un valor a las variables, el símbolo de este es un trapecio. Enseguida se vuelve a poner otro símbolo de proceso en el cual se pondrá alguna fórmula, la que sea necesaria, la cual ayudara a llegar a la solución del problema. Por último se imprime el resultado.

84


En los identificadores no debe de haber un número al principio. No debe contener espacios o caracteres no válidos. Escoger nombres con significado para los procesos, flujos, almacenes y terminadores. Numerar los procesos. Evitar los DFD excesivamente complejos, podrían generar más problemas que los que ya hay. Redibujar

el

DFD

tantas

estéticamente

85

veces

como

sea

necesario


Los operadores en DFD son los siguientes: Operadores aritméticos habituales (+,-,/,*,^), Operadores de comparación (>,<,>=,<=,=,!=) y Operadores lógicos (AND,OR,NOT). - Las expresiones son maneras de indicar los nombres de las variables. Para formar expresiones válidas tenemos que tener en cuenta que acepta los siguientes elementos: Constantes y variables, del Tipo Real y de Texto y las funciones matemáticas.

Las

expresiones

condicionales,

lógicas

pueden

y booleanas

verdaderas o falsas.

86

ser

y todas

de

3

tipos,

pueden

ser


Son las estructuras que controlan el flujo de ejecución del programa desacuerdo a la condición inherente de un problema esta deberá ser lógica al evaluarla y tomara una de dos

valores (falso,

verdadero) según la

respuesta será la dirección a la que deberá seguir.

87


La estructura selectiva se utiliza cuando cierto problema requiere de una descripción más detallada que solo una lista de instrucciones. También se usa para tomar decisiones lógicas. Puede

ser

de

3

tipos:

Simple,

Doble

y

Múltiple.

►Repetitivas

Son las que se repiten las instrucciones en la ejecución de un programa hasta cumplir la condición en un programa. Las sentencias

repetitivas

son

dos:

While: Indica al ordenador que se ejecuten una o más sentencias mientras se cumpla una determinada condición. La condición viene determinada por una variable o expresión booleana.

88


1. Tres amigos hicieron una venta de libros y se reparten las ganancias de acuerdo al siguiente porcentaje: el 25% para Miguel, el 35% para Antonio y el 40% para Roberto. Si las ganancias fueron en soles, ÂżCuĂĄnto le corresponde a cada quiĂŠn?

.

89


1. Martha deposita sus ahorro en el Banco de Crédito, le pagan un interés del 3% mensual ¿Cuánto dinero tendrá a los seis medes si no retiró nada?. El interés siempre se aplica sobre el depósito inicial.

90


2. Calcular cuánto dinero ahorrará Marina en una alcancía, durante un

año, si cada semana ahorra en soles.

91


3. Diseñar un DFD que te permita saber la estatura y el peso de una persona y el cálculo del Índice de masa corporal. La información que necesitas investigar es cuál es la fórmula para calcular el índice de masa.

92


4. DISEÑAR UN DFD QUE TE PERMITA SABER LA ESTATURA Y PESO DE UNA PERSONA Y EL CÁLCULO DE INDICE DE MASA.

Análisis

Solución:

INICIO IMC= masa talla

2

Imc,mit Es real IMC: Indice masa corporal M: masa T: talla

Ingresar M,t

Imc= m/(t)2

Mostrar Imc

FIN

93


94


Las estructuras condicionales hacen referencia a la toma lógica de decisiones para realizar alguna tarea en caso de cumplirse una o varias de las alternativas u opciones posibles. Este tipo de situaciones las aplicamos a diario y son muy comunes, puesto que por naturaleza es muy complicado realizar varias acciones de forma simultánea. En el campo de la programación es la situación es similar, puesto que la aplicación de este criterio garantiza en correcto funcionamiento de una aplicación.

Las estructuras condicionales se clasifican de acuerdo al número de alternativas posibles, estas son:

95


ESTRUCTURAS CONDICIONALES SIMPLES: Ejecuta una determinada acción cuando se cumple una determinada condición. Si la acción es verdadera entonces ejecuta la sentencia que dependa de la misma, en caso de que sea falsa no se ejecuta ninguna acción. También se le conoce como toma de decisión, tiene la siguiente forma:

Condició n

SI

NO

SI

PROCESO 1

PROCESO 2

ESTRUCTURAS CONDICIONALES DOBLES: Permiten elegir entre 2 opciones o alternativas posibles en función del cumplimiento o no de una determinada condición.

96


NO

SI Condici ón

PROCESO F1

PROCESO V1

PROCESO F2

PROCESO V2

ESTRUCTURAS CONDICIONALES MULTIPLES O ANIDADAS: Las estructuras de comparación múltiple son tomas de decisiones especializadas que permiten comparar una variable contra una posible, ejecutando para cada caso una serie de instrucciones específicas. La forma común es la siguiente:

97


Condici贸n 1

SI

PROCESO V1

A

PROCESO V2

A

PROCESO V3

A

NO Condici贸n 2

SI

NO

Condici贸n 3

SI

NO A

98


1) En un almacén se hace un 20% de descuento a los clientes cuya compra supere los s/ 1000 ¿Qué cantidad pagara una persona por su compra? ANALISIS

INICIO C > 1000 T= C-(20/100 * C)

C, T es real

T= total

Leer C

NO

C> 1000

SI

T= C- (20 / 100 * C)

Mostrar T

99


2) Diseñar un diagrama de flujo de datos que te permita evaluar si un numero ingresado por teclado es positive o negativo. ANALISIS

INICIO

Numero = núm. Num > 0 = positivo

Num es entero

Leer num

NO

Num > 0

‘’negativo’’

SI

‘’positivo’’

FIN

100


Desarrolle un DFD que permita leer dos números y ordenarlos de menor a mayor, si es el caso. INICIO

A=0, B=0, Temporal =0

A,B

A>B

Si

Temporal = B Si B=A

A = “Temporal”

“ORDEN = “A,B

FIN

101


102


I.

Poner en el cuadro la forma estructuras condicionales dobles.

NO

que

tiene

SI

Condici贸n

PROCESO F1

PROCESO V1

PROCESO V2

PROCESO F2

103

las


II.

Resolver los siguientes ejercicios

1. En un Centro comercial se hace una promoción, mediante la cual el cliente obtiene un descuento dependiendo de un número que se escoge al azar. Si el numero escogido es menor que 85 el descuento es del 30% sobre el total de la compra, si es mayor o igual a 85 el descuento es el 40%. Obtener cuánto dinero se le descuenta.

INICIO

D, N es real

Leer N

SI

N >= 85

D= 30/100*C

NO

D= 40/100*C

Mostrar D

FIN

104


2. En un Instituto Superior Particular el costo del ciclo es directamente proporcional a número de cursos que lleva durante el ciclo donde se sabe que el costo de todos los cursos es el mismo. Se ha establecido un programa para estimular a los alumnos, el cual consiste en lo siguiente: si el promedio obtenido por un alumno en el último periodo es mayor o igual que 17, se le dará un descuento del 30% sobre los cursos matriculados y no se le cobrara IGV; si el promedio obtenido es menor que 17 deberá pagar el costo completo, el cual incluye el 10% de IGV. Obtener cuanto debe pagar un alumno.

INICIO

C= costo ciclo

C, P, A son reales

A= pago alumno C P= promedio

SI

P >= 17

A= C – (C *0.3)

NO

A = C + (C * 0.1)

Mostrar A

FIN

105


3. Hacer un DFD que permita escribir los 100 primeros pares.

INICIO

I = 100

P= 0

Escribir P

P=P+2

I = I*1

I=0 Si

FIN

106


107


1. ¿QUÉ SON ALGORITMOS? 2. ¿QUÉ SON PROPIEDADES DE UN ALGORITMO?

3. CUALES SON ALGORITMO?

LAS

PROPIEDADES

4. DEFINE CON TUS PROPIAS ELEBORACIÓN DE ALGORITMO

DE

PALABRAS

UN

LA

5. RESUELVE LOS SIGUIENTES EJERCICIOS.  DISEÑAR UN ALGORITMO QUE PERMITA CALCULAR E IMPRIMIR EL ÁREA DE UN TRIÁNGULO.

 INGRESAR DOS NÚMEROS MOSTRAR SU SUMA

108

POR

TECLADO

Y


6. ¿QUÉ ES DIAGRAMA DE FLUJO DE DATO (DFD)?

7. CUÁNTOS SIMBOLOS DIAGRAMA DE FLUJO?

MOSTRADOS

HAY

EN

8. ¿ CÓMO SE LLAMAN LOS SIGUIENTES SÍMBOLOS:

109

EL


110


RESUELVE LOS SIGUIENTES EJERCICIOS:

 CREAR UN DFD QUE PERMITA PERÍMETRO DE UN RECTÁNGULO

CALCULAR

EL

 CREAR UN DFD QUE PERMITA CALCULAR EL ÁREA DE UN CÍRCULO

 CREAR UN DFD QUE PERMITA CALCULAR LAS 4 OPERACIONES BÁSICAS DE DOS NÚMEROS INGRESADOS

 CALCULAR LA EDAD DE UNA PERSONA

 CREAR UN DFD QUE PERMITA CANTIDAD DE SOLES A DÓLARES

111

CAMBIAR

MUCHA SUERTE

UNA


 http://www.rodolfoquispe.org/blog/que-es-unalgoritmo.php  http://www.wiener.edu.pe/manuales2/1erciclo/ALGORITMOS/algoritmos-ydiagramacion.pdf  http://www.monografiahttp://www.monografias.co m/trabajos12/alflu/alflu.shtml  http://uttinfor.tripod.com/index/id1.html  s.com/trabajos60/diagrama-flujodatos/diagrama-flujo-datos2.shtml  http://es.wikipedia.org/wiki/Diagrama_de_flujo  http://www.slideshare.net/wladimirclipper/estruct uras-condicionales

112


ďƒź http://masterdfd.blogspot.com/

113


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.