MI MANUAL DE ALGORITMOS

68
1 “AÑO DE LA INTEGRACIÓN NACIONAL Y EL RECONOCIMIENTO DE LA DIVERSIDAD” NOMBRE: KATYA LISSET YRIGOIN VERA INSTITUCIÓN EDUCATIVA: PNP. “FÉLIX TELLO ROJAS” ÁREA: EDUCACIÓN PARA EL TRABAJO PROFESOR(A): NERITA TARRILLO DÁVILA GRADO: 4 SECCIÓN: “A”

description

LA INFORMACION QUE SE ENCUENTR EN ESTE MANUAL ES TODO LO REFERENTE ACERCA DE ALGORITMOS

Transcript of MI MANUAL DE ALGORITMOS

Page 1: MI MANUAL DE ALGORITMOS

1

“AÑO DE LA INTEGRACIÓN NACIONAL Y EL RECONOCIMIENTO DE LA

DIVERSIDAD”

NOMBRE:

KATYA LISSET YRIGOIN VERA

INSTITUCIÓN EDUCATIVA:

PNP. “FÉLIX TELLO ROJAS”

ÁREA:

EDUCACIÓN PARA EL TRABAJO

PROFESOR(A):

NERITA TARRILLO DÁVILA

GRADO:

4

SECCIÓN:

“A”

Page 2: MI MANUAL DE ALGORITMOS

2

DEDICATORIA

Este trabajo de investigación se lo dedico a mis padres; a quienes les debo todo

lo que tengo en esta vida.

A Dios, ya que gracias a Él tengo esos padres maravillosos, los cuales me apoyan

en mis derrotas y junto conmigo celebran mis triunfos.

Y a mi Prof. Nerita Tarrillo Dávila quien es mi guía en el aprendizaje, dándonos los

últimos conocimientos para poder desenvolvernos bien en la sociedad.

Page 3: MI MANUAL DE ALGORITMOS

3

PRESENTACIÓN

Actualmente, es importante el estudio y conocimiento de Algoritmos , que desde

su aparición hasta nuestros días es, y seguirá siendo; vital para el desarrollo de

aplicaciones para computadoras y el manejo y dominio de la lógica de

programación para resolver problemas.

Como estudiante quiero dar a conocer todo lo referente acerca de algoritmos,

para que otros estudiantes al igual que yo puedan saber más acerca de este tema

que es muy importante hoy en día.

Page 4: MI MANUAL DE ALGORITMOS

4

Page 5: MI MANUAL DE ALGORITMOS

5

Page 6: MI MANUAL DE ALGORITMOS

6

I. ORIGEN DE LA PALABRA ALGORITMO

La palabra Algoritmo es de origen árabe y proviene del inteligente matemático y

astrónomo Abu Abdullah Muhammad Bin Musa, quien tomó como seudónimo Al-

Khowarizmi (780-850), lugar donde había nacido, el estado de Khowarizm , uno de

los centros de saber y cultura de Asia Central en la Edad Media, situado en el

curso inferior del Amu Darya, en la actual república de Uzbiekistán, en la provincia

moderna de Khiva. Cuando el califa Al-Mamun (809-833) deBagdad lo llamó para

integrar la Bayt al-Hikman, "Casa de la sabiduría", una especie de centro superior

de investigaciones científicas de su tiempo, situada en Bagdad, la ciudad de las

Mil y una Noches, adoptó el patronímico Al-Khowarizmi en honor a su patria de

origen. En ese lugar trabajaban sabios judíos y cristianos procedentes de Siria,

Irán y Mesopotamia. Su trabajo fue preservar y difundir el conocimiento que

provenía de Grecia y de India. Sus libros eran de fácil comprensión, de ahí que su

principal valor no fuera el de crear nuevos teoremas o nuevas corrientes de

pensamiento, sino el de simplificar las matemáticas a un nivel lo suficientemente

bajo para que pudiera ser comprendido por un amplio público. Señaló muchas

virtudes del sistema decimal indio (en contra de los sistemas tradicionales árabes)

y también explicó que, mediante una especificación clara y concisa de cómo

calcular sistemáticamente, se podrían definir algoritmos que fueran usados en

dispositivos mecánicos en vez de las manos (por ejemplo, ábacos). También

estudió la manera de reducir las operaciones que formaban el cálculo. Es por esto

que aun no siendo el creador del primer algoritmo, el concepto lleva aunque no su

nombre, sí su pseudónimo. Al-Khowarizmi también escribió varios libros de

astronomía, uno de álgebra y otro sobre aritmética (traducidos al latín en el s. IX

por Adelardo de Bath y Roberto de Chester), en el que hace una exposición

exhaustiva del sistema de numeración hindú. Este sistema se empezó a conocer

como «el de Al-Khowarizmi» y, por las deformaciones que tuvo, bien por

transmisión o por traducción, llegó a la palabra «algorismi»,

«algorismo» o «algoritmo»1.

1 http://normakerwin.blogspot.com/2009/02/el-origen-de-la-palabra-algoritmo-en.html

Page 7: MI MANUAL DE ALGORITMOS

7

II. HISTORIA DEL ALGORITMO

Estos bienes surgieron a mediados del siglo IX por el matemático distinguido y

astrónomo Mohammed Ibn Musa -aljarizm: pero podemos ver que Al_yebr-

mugabata es otro que desarrollo formulas para posibilitar que con un número

limitado de procesos fuese posible resolver ecuaciones de primer y segundo

grado.

La historia del algoritmo nace por necesidad de hacer cálculos matemáticos

atraves, de ella se fundamenta el paso inicial de entender acabadamente cualquier

problema planteada.

Pero también tengamos en cuenta que los algoritmos están en el corazón mismos

de los ordenadores y que los leguajes de computación solo son un medio de

expresarlos.

Conforme transcurre el tiempo se crea las simbologías de los algoritmos:

Se utiliza un rectángulo redondeado para el inicio y finalización de las algoritmos,

los rombos son utilizados para las decisiones y los rectángulos para las acciones a

tomar. Las flechas nos indican el flujo teniendo en cuenta que las decisiones no

crecerán verticalmente y las decisiones por si crecerán ala derecha. Si bien estos

no son los únicos símbolos.

El algoritmo tiene la virtud de brindarnos a todos la oportunidad de seleccionar

aquello que se considera priotario decimos que no es poco y la capacidad

contenida como ordenador del pensamiento da comienzo en el primer paso, el

cual implica plantear el problema.

No podemos señalar que el algoritmo no es una noción de las centrales en

matemática principalmente en al área correspondiente de la matemática

computacional.

En la teoría de los algoritmos podemos mencionar que los algoritmos empezara

hadar inicio aproximadamente a lo alargo de la historia en el siglo 19 aunque ya se

tenía cierto conocimiento.

En la teoría de los algoritmos a objetos no constructivos se hace necesario

Page 8: MI MANUAL DE ALGORITMOS

8

nombrar a esto como objetos constructivos, por lo que la teoría de la numeración

prácticamente se convierte en un interesante apartado de la teoría de algoritmos2.

III. Definición de algoritmos

Un programa de computadora es un algoritmo que le dice a la computadora los

pasos específicos para llevar acabo una tarea. Los algoritmos son rigurosamente

definidos para que la computadora pueda interpretarlos. El orden en que se

ejecuta cada uno de los pasos que constituyen un algoritmo es fundamental. El

orden más básico es de arriba hacia abajo, ejecutándose una instrucción tras otra

de un código. Pero un algoritmo puede variar en su flujo u orden de ejecución de

pasos dependiendo de los valores de inicio o que entran durante su ejecución. El

flujo es manejado por las estructuras de control.

Algunos autores consideran que el flujo de ejecución de un algoritmo debe

detenerse correctamente alguna vez, y que esto forma parte de la definición de

algoritmo. En tanto, otros no lo consideran así3.

2 http://lilianarosa-lidia.blogspot.com/2009/08/definicion-e-historia-de-algoritmo.html

3 http://www.alegsa.com.ar/Dic/algoritmo.php

Page 9: MI MANUAL DE ALGORITMOS

9

IV. CARACTERÍSTICAS DE LOS ALGORITMOS

Las características fundamentales que debe cumplir todo algoritmo son:

Un algoritmo debe ser preciso e indicar el orden de realización de cada

paso.

Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se

debe obtener el mismo resultado cada vez.

Un algoritmo debe ser finito. el algoritmo se debe terminar en algún

momento; o sea, debe tener un número finito de pasos.

Un algoritmo debe ser legibles: El texto que lo describe debe ser claro, tal

que permita entenderlo y leerlo fácilmente.

Un algoritmo debe definir tres partes: Entrada, Proceso y Salida. Ejemplo: el

algoritmo de receta de cocina se tendrá:

Entrada: ingrediente y utensilios.

Proceso: elaboración de la receta en la cocina.

Salida: terminación del plato (por ejemplo, Pollo al horno)4.

4 http://aulatec.wordpress.com/caracteristicas-y-propiedades-de-los-algoritmos/

Page 10: MI MANUAL DE ALGORITMOS

10

V. PROPIEDADES DE UN ALGORITMO

Las propiedades de un algoritmo son puntos guías a seguir para su elaboración,

ya que éstos permiten un mejor desarrollo del problema.

1. Enunciado del problema.

El enunciado del problema debe de ser claro y completo. Es importante que

conozcamos exactamente lo que deseamos que haga el computador. Mientras

esto no se comprenda, no tiene caso pasar a la siguiente etapa.

2. Análisis de la solución general.

Entendido el problema, para resolverlo es preciso analizar:

Los datos de entradas que nos suministran.

El proceso al que se requiere someter esos datos a fin de obtener los

resultados esperados.

Los datos o resultados que se esperan.

Áreas de trabajo, fórmulas y otros recursos necesarios.

Definir condiciones si las hay

Diferentes alternativas de solución.

Analizando 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.

Page 11: MI MANUAL DE ALGORITMOS

11

3. Elaboración Del Algoritmo

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ón5.

VI. TÉCNICAS PARA LA DESCRIPCIÓN DE ALGORITMOS.

1. Descripción Narrada. Se utiliza el lenguaje natural ya sea hablado o escrito.

Por ejemplo, la receta para hacer un pastel.

2. Notación matemática. Se expresa mediante fórmulas matemáticas que

determinarán las salidas del problema.

3. Diagramas de flujo. En ésta técnica se utilizan símbolos que representan cada

paso de los algoritmos.

Los símbolos más utilizados son los siguientes:

5 http://aulatec.wordpress.com/caracteristicas-y-propiedades-de-los-algoritmos/

Page 12: MI MANUAL DE ALGORITMOS

12

OBSERVACIONES:

a) Es importante conservar los diagramas de flujo lo más sencillo posible, y

apoyarse en el significado de la simbología. Por ello, debemos evitar escribir

demasiado texto dentro de cada uno de los símbolos, y en su lugar, utilizar sólo el

identificador de la variable y las expresiones aritméticas, relacionales o lógicas

según sea el caso.

b) Para un buen estilo de diseño del algoritmo, y en general, para ayudar la

traducción posterior al lenguaje de programación deseado, es necesario conservar

la verticalidad del diagrama, sin inventar conexiones diferentes a las establecidas.

c) Es muy importante utilizar los símbolos adecuados para cada operación a

realizar. De esta forma, en el símbolo condicional, no deben incluirse

asignaciones; ni en el símbolo de proceso se pueden incluir operadores

relacionales ni lógicos.

4. Pseudocódigo. Es un lenguaje informal para la descripción de algoritmos,

debido a que es muy flexible y depende del estilo del programador. Toma

características de un lenguaje de programación y de los procesos matemáticos

para detallar el problema. Para ello se deben tomar en cuenta las siguientes

reglas:

¨ Los comentarios se denotan con /* */

¨ Se utilizan las estructuras de control de flujo (para, mientras, si)

¨ Asignarle nombres coherentes a las variables, de acuerdo con lo que

representan y según el contexto del problema.

¨ Delimitar el inicio y fin del algoritmo y de las estructuras de control de flujo6

6 http://uttinfor.tripod.com/index/id1.html

Page 13: MI MANUAL DE ALGORITMOS

13

VII. REGLAS PARA LA ELABORACIÓN DE ALGORITMOS.

Identificar todas las variables que intervienen en el problema a resolver. Para ello,

te puedes auxiliar de una tabla como la que se muestra a continuación:

Nombre de la

variable

Posibles

valores

Descripción Cómo tomará

su valor

Una vez que las has identificado, en el algoritmo sólo podrás utilizar el nombre que

le has asignado. Cuídate de no cambiarles nombre, ni significado, durante el

desarrollo de tu algoritmo.

Toda variable debe tener un valor, ya sea por que se le solicita como entrada o por

que se le asigna dentro del algoritmo.

Respeta las reglas para la creación de identificadores al momento de crear los

nombres para tus variables.

En el símbolo de proceso, sólo se pueden utilizar los operadores aritméticos (+,-,,

*, /, mod) y asignación (=)

En el símbolo condicional, sólo se pueden utilizar los operadores relacionales (<,

<=, >, >=, ==, !=), y los operadores lógicos (AND, OR, NOT ó &&, ||, ! )

Si se trata de una condición compuesta, el formato será:

(variable operador variable/valor) AND/OR (variable operador variable/valor)7

7 http://uttinfor.tripod.com/index/id1.html

Page 14: MI MANUAL DE ALGORITMOS

14

Page 15: MI MANUAL DE ALGORITMOS

15

I. VARIABLES

Una variable es un nombre asociado a un elemento de datos que está situado en

posiciones contiguas de la memoria principal, y su valor puede cambiar durante la

ejecución de un programa. 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 enteras, reales, booleanas, etc. Por otro lado, distinguimos

tres partes fundamentales en la vida de una variable:

Declaración de variables

Esta es la primera fase en la vida de cualquier variable. La forma de declarar

variables es muy sencilla. Esta sección debe comenzar con la palabra reservada

var, seguida de una lista de parejas lista_de_variables=tipo_al_que_pertenecen.

Cada par debe ir seguido por un punto y coma.

Una variable no representa más que una porción de memoria en donde

guardamos un dato que dependerá del tipo al que pertenezca la variable. A

diferencia de una constante, el valor de una variable puede cambiar durante la

ejecución de un programa. Otra diferencia, es que a una variable no basta con

declararla, sino que también es necesario iniciarla. Esto se refiere a darle un valor

inicial, y es importante ya que si no lo hacemos, igual nos encontramos con

errores cuando ejecutemos el programa.

Iniciación de variables

Esto no es más que darle un valor inicial a una variable. Así como lo primero que

se hace con una variable es declararla, lo siguiente tiene que ser iniciarla. Esto se

hace para evitar posibles errores en tiempo de ejecución, pues una variable tiene

un valor indeterminado después de declararla. Principalmente, existen dos

maneras de otorgar valores iniciales a variables:

Page 16: MI MANUAL DE ALGORITMOS

16

Mediante una sentencia de asignación

Mediante uno de los procedimientos de entrada de datos (read o readln)

Clasificación de las Variables :

Por su contenido

Variables Numéricas: Son aquellas en las cuales se almacenan valores

numéricos, positivos o negativos, es decir almacenan números del 0 al 9, signos (+

y -) y el punto decimal.

Ejemplo:

iva = 0.15 pi = 3.1416 costo = 2500

Variables Lógicas: Son aquellas que solo pueden tener dos valores (cierto o falso)

estos representan el resultado de una comparación entre otros datos.

Variables Alfanuméricas:

Esta formada por caracteres alfanuméricos (letras, números y caracteres

especiales).

Ejemplo:

letra = ’a’ apellido = ’lopez’ direccion = ’Av. Libertad #190’

Page 17: MI MANUAL DE ALGORITMOS

17

Por su uso

Variables de Trabajo: Variables que reciben el resultado de una operación

matemática completa y que se usan normalmente dentro de un programa.

Ejemplo:

Suma = a + b /c

Contadores: Se utilizan para llevar el control del numero de ocasiones en que se

realiza una operación o se cumple una condición. Con los incrementos

generalmente de uno en uno.

Acumuladores: Forma que toma una variable y que sirve para llevar la suma

acumulativa de una serie de valores que se van leyendo o calculando

progresivamente8.

8 http://www.monografias.com/trabajos12/alflu/alflu.shtml

Page 18: MI MANUAL DE ALGORITMOS

18

II. Constantes

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. Las constantes se declaran en una sección que

comienza con la palabra reservada const . Después de declarar una constante se

puede usar en el cuerpo principal del programa.

Tienen varios usos: ser miembro en una expresión, en una comparación, asignar su

valor a una variable, etc.

¿Qué tipos de constantes existen ?

» Constantes de Tipo Entero

» Constantes de Tipo Real

» Constantes de Tipo Lógico

» Constantes de Tipo Carácter

» Constantes de Tipo Cadena

» Ejercicios de Identificadores, Variables y Constantes en Pseudocódigo

En programación, una constante representa a un valor (dato almacenado en memoria)

que no puede cambiar durante la ejecución de un programa. Por ejemplo, en lenguaje

C, una constante puede ser de tipo entero, real, carácter, cadena o enumerado. Las

constantes de tipo enumerado se van a estudiar en el apartado "Datos de Tipos

Enumerados". En cuanto a las demás, se pueden expresar de dos formas diferentes:

1. Por su valor.

2. Con un nombre (identificador).

Page 19: MI MANUAL DE ALGORITMOS

19

Para expresar una constante con un nombre, la constante debe ser declarada

previamente. Todas las constantes que se declaran en un programa son definidas de

la misma forma, indicando de cada una de ellas:

1. Su nombre (mediante un identificador).

2. El valor que simboliza (mediante una expresión).

Y para declarar más de una constante en una misma línea, las separaremos por

medio de comas (,)9.

III. TIPOS DE DATOS

Una definición muy simple:

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.

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

De Pascal se dice que es un lenguaje fuertemente tipeado. Esto quiere decir que

todos los datos deben de tener un tipo declarado explícitamente, y además que

existen ciertas restricciones en las expresiones en cuanto a los tipos de datos que

en ellas intervienen.

9 http://www.carlospes.com/curso_de_algoritmos/03_03_constantes.php

Page 20: MI MANUAL DE ALGORITMOS

20

Una ventaja de los lenguajes fuertemente tipeados es que se gasta mucho menos

esfuerzo en depurar (corregir) los programas gracias a la gran cantidad de errores

que detecta el compilador.

Los tipos de datos, como casi todos los objetos de Pascal, se pueden declarar. La

declaración de tipos ya se comentó en el tema correspondiente a la estructura de

un programa.

Clasificaciones en los tipos de datos

En Pascal existen gran variedad y cantidad de tipos de datos. Pero en este tutorial

sólo se trataran los básicos para que puedas ir construyendo tus primeros

programas.

Existen muchas clasificaciones para los tipos de datos, y dependiendo de la fuente

que mires, te mostrarán una u otra. A continuacón tienes una de las posibles

clasificaciones.:

Dinámicos

Estáticos

o El tipo cadena

o Estructurados

o Simples

Ordinales

No-ordinales

Page 21: MI MANUAL DE ALGORITMOS

21

TIPOS ESTÁTICOS

Casi todos los tipos de datos son estáticos, la excepción son los punteros y no se

tratarán debido a su complejidad.

Que un tipo de datos sea estático quiere decir que el tamaño que ocupa en

memoria no puede variar durante la ejecución del programa. Es decir, una

vez declarada una variable de un tipo determinado, a ésta se le asigna un trozo de

memoria fijo, y este trozo no se podrá aumentar ni disminuír.

TIPOS DINÁMICOS

Dentro de esta categoría entra sólamente el tipo puntero. Este tipo te permite tener

un mayor control sobre la gestión de memoria en tus programas. Con ellos puedes

manejar el tamaño de tus variables en tiempo de ejecución, o sea, cuando el

programa se está ejecutando.

Los punteros quizás sean el concepto más complejo a la hora de aprender un

lenguaje de programación, sobre todo si es el primero que aprendes. Debido a

esto, no lo trataremos. Además, lenguajes que están muy de moda (por

ejemplo Java) no permiten al programador trabajar con punteros.

TIPOS SIMPLES

Como su nombre indica son los tipos básicos en Pascal. Son los más sencillos y

los más fáciles de aprender. Por todo esto, serán en los que nos centremos.

Los tipos simples más básicos son: entero, lógico, carácter y real. Y la mayoría de

los lenguajes de programación los soportan, no como ocurre con los estructurados

que pueden variar de un lenguaje a otro.

Page 22: MI MANUAL DE ALGORITMOS

22

Tipos estructurados

Mientras que una variable de un tipo simple sólo referencia a un elemento, los

estructurados se refieren a colecciones de elementos.

Las colecciones de elementos que aparecen al hablar de tipos estructurados son

muy variadas: tenemos colecciones ordenadas que se representan mediante el

tipo array, colecciones sin orden mediante el tipo conjunto, e incluso colecciones

que contienen otros tipos, son los llamados registros.

Tipos ordinales

Dentro de los tipos simples, los ordinales son los más abundantes. De un tipo se

dice que es ordinal porque el conjunto de valores que representa se puede contar,

es decir, podemos establecer una relación uno a uno entre sus elementos y el

conjunto de los números naturales.

Dentro de los tipos simples ordinales, los más importantes son:

El tipo entero (integer)

El tipo lógico (boolean)

El tipo carácter (char)

Page 23: MI MANUAL DE ALGORITMOS

23

Tipos no-ordinales

Simplificando, podríamos reducir los tipos simples no-ordinales al tipo real. Este

tipo nos sirve para declarar variables que pueden tomar valores dentro del

conjunto de los números reales.

A diferencia de los tipos ordinales, los no-ordinales no se pueden contar. No se

puede establecer una relación uno a uno entre ellos y los número naturales. Dicho

de otra forma, para que un conjunto se considere ordinal se tiene que poder

calcular la posición, el anterior elemento y el siguiente de un elemento cualquiera

del conjunto.¿Cuál es el sucesor de 5.12? Será 5.13, o 5.120, o 5.121, ...

LOS TIPOS BÁSICOS

Después de ver una de las posibles clasificaciones para los tipos de datos,

pasemos a ver los que nos interesan: los tipos simples. Realmente de los tipos

simples veremos los más básicos, que son: integer, boolean, char yreal. Además,

también hablaremos un poco de las cadenas de caracteres, los llamados strings.

nota: a continuación sólo se comentará qué es cada tipo, no se explicará

su declaración, esto puedes verlo si vas a la sección correspondiente.

EL TIPO INTEGER (ENTERO)

Como ya habrás leído el tipo de datos entero es un tipo simple, y dentro de estos,

es ordinal. Al declarar una variable de tipo entero, estás creando una variable

numérica que puede tomar valores positivos o negativos, y sin parte decimal.

Este tipo de variables, puedes utilizarlas en asignaciones, comparaciones,

expresiones aritméticas, etc. Algunos de los papeles más comunes que

desarrollan son:

Page 24: MI MANUAL DE ALGORITMOS

24

Controlar un bucle

Usarlas como contador, incrementando su valor cuando sucede algo

Realizar operaciones enteras, es decir, sin parte decimal

Y muchas más...

EL TIPO BOOLEAN (LÓGICO)

El tipo de datos lógico es el que te permite usar variables que disponen sólo de

dos posibles valores: cierto o falso. Debido a esto, su utilidad salta a la vista, y no

es otra que variables de chequeo. Nos sirven para mantener el estado de un

objeto mediante dos valores:

si/no

cierto/falso

funciona/no funciona

on/off

etc.

EL TIPO REAL (REAL)

Como ya has visto, Pascal soporta el conjunto entero de números. Pero no es el

único, también te permite trabajar con números pertenecientes al conjunto 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.

nota: Aunque pueda que estés acostumbrado a escribir con coma los

decimales, te advierto que en Pascal y en todos los lenguajes de

programación se escribe con un punto. Por ejemplo: 3.1416

Page 25: MI MANUAL DE ALGORITMOS

25

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

Con el tipo carácter puedes tener objetos que representen una letra, un número,

etc. Es decir, puedes usar variables o constantes que representen un valor

alfanumérico. Pero ojo, cada variable sólo podrá almacenar un carácter.

Sin embargo, con las cadenas de caracteres (strings) puedes contener en

una sóla variable más de un carácter. Por ejemplo, puedes tener en una

variable tu nombre10.

I.V EXPRESIONES EN ALGORITMOS

Las expresiones son combinaciones de constantes, variables, símbolos de

operación, paréntesis y nombres de funciones especiales.

Por ejemplo: a + (b + 3) / 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 operandos. Según sea el tipo de datos que

manipulan, se clasifican las expresiones en: Aritméticas, Relacionales y Lógicas.

De la evaluación de una expresión lógica siempre se obtiene un valor de tipo

lógico (verdadero o falso).

Una expresion relacional se utiliza para comparar los valores de dos operaciones.

Éstas deben ser del mismo tipo (aritméticas, lógicas, de carácter o de cadena).

10 http://teleformacion.edu.aytolacoruna.es/PASCAL/document/tipos.htm

Page 26: MI MANUAL DE ALGORITMOS

26

Ejemplo: Algunos ejemplos son:

22 > 13 (comparación de dos expresiones aritméticas)

22.5 /b> 3.44 (comparación de dos expresiones aritméticas)

verdadero = falso (comparación de dos expresiones lógicas)

'c' > 'f' (comparación de dos expresiones de carácter)

"coche" = "Coche" (comparación de dos expresiones de cadena) Proporcionan

los valores:

verdadero (22 es mayor que 13)

falso (22.5 no es menor que 3.44)

falso (verdadero no es igual que falso)

falso ('c' no es mayor que 'f')

falso ("coche" no es igual que "Coche")

Las comparaciones entre los valores de tipo numérico son obvias. En cuanto a los

valores de tipo lógico (verdadero yfalso) se considera que falso es menor

que verdadero. En lo que respecta a los valores de tipo carácter, su orden viene

dado por el ASCII extendido utilizado por el ordenador para representarlos. Y en el

caso de los valores de tipo cadena, también se tiene en cuenta dicho código.

Page 27: MI MANUAL DE ALGORITMOS

27

REGLAS PRIORIDAD:

Todas las expresiones en paréntesis se evalúan primero, las expresiones con

paréntesis anillados se evalúan de dentro hacia fuera, el paréntesis mas interno se

evalúa primero. Dentro de una misma expresión los operadores se evalúan en el

siguiente orden:

ˆ (potenciación) ; * , / , mod , (multiplicación , división , modulo) ; + , - (suma y

resta). Los operadores en una misma expresión con igual nivel de prioridad se

evalúan de izquierda a derecha11.

V.OPERADORES

Son elementos que relacionan de forma diferente, los valores de una o mas

variables y/o constantes. Es decir, los operadores nos permiten manipular

valores.

OPERADORES ARITMÉTICOS

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

11 http://www.desarrolloweb.com/articulos/2165.php

Page 28: MI MANUAL DE ALGORITMOS

28

resultado es real.

Operadores Aritméticos

+ Suma

- Resta

* Multiplicación

/ División

mod Modulo (residuo de la división entera)

Prioridad de los Operadores Aritméticos

Todas las expresiones entre paréntesis se evalúan primero. Las expresiones con

paréntesis anidados se evalúan de dentro a fuera, el paréntesis más interno se

evalúa primero.

Dentro de una misma expresión los operadores se evalúan en el siguiente orden:

^ Exponenciación

*, /, mod Multiplicación, división, modulo.

+, - Suma y resta.

Los operadores en una misma expresión con igual nivel de prioridad se evalúan de

izquierda a derecha.

Page 29: MI MANUAL DE ALGORITMOS

29

Operadores Relacionales

Se utilizan para establecer una relación entre dos valores. Luego compara estos

valores entre si y esta comparación produce un resultado de certeza o falsedad

(verdadero o falso).

Los operadores relacionales comparan valores del mismo tipo (numéricos o

cadenas). Estos tienen el mismo nivel de prioridad en su evaluación.

Los operadores relaciónales tiene menor prioridad que los aritméticos.

Tipos de operadores Relacionales

> Mayor que

< Menor que

> = Mayor o igual que

< = Menor o igual que

< > Diferente

= Igual

Ejemplos no lógicos:

a < b < c

10 < 20 < 30

T > 5 < 30

(no es lógico porque tiene diferentes operandos)

Page 30: MI MANUAL DE ALGORITMOS

30

Operadores Lógicos

Estos operadores se utilizan para establecer relaciones entre valores lógicos.

Estos valores pueden ser resultado de una expresión relacional12.

(12) http://www.desarrolloweb.com/articulos/2165.php

12 http://www.desarrolloweb.com/articulos/2165.php

Page 31: MI MANUAL DE ALGORITMOS

31

Page 32: MI MANUAL DE ALGORITMOS

32

I. DIAGRAMA DE FLUJO DE DATOS

Es una descripción grafica de un procedimiento para la resolución de un problema.

Son frecuentemente usados para

descubrir algoritmos y programasde 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 grafica 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.

Características De Los Diagramas De Flujo De Datos

Muestran que debe hacer el sistema sin referencias.

Son diagramas explícitos y comprensibles.

Dan la posibilidad de representan el sistema a diferentes niveles de

complejidad, desde lo mas global a lo mas detallado solo requieren de 4

símbolos.

Son fácil de mantenimiento, pues los cambios afectan solo algunos de sus

elementos y no al todo.

¿cuáles son las ventajas de los diagramas de flujo de datos?

Fácil lectura, con esto se constituye en un instrumento de mucha versatilidad.

Facilitan la interacción Usuario-Analista.

¿Cuáles Son Las Limitaciones De Los Diagramas De Flujo De Datos?

Page 33: MI MANUAL DE ALGORITMOS

33

No permite recoger el comportamiento de sistema que deben responder

a eventos en tiempos acotados. Para ello se usa el diagrama de transición de

Estados.

No permite dar cuenta de la de las relaciones entre los datos que se precisan

almacenar .Para ello se usan el diagrama Entidad-Relación.

No permite reflejar situaciones en las cuales es preciso dejar de manifiesto la

necesaria concurrencia de dos o más flujo de datos para un subproceso pueda

iniciar efectivamente su tarea. Para ello se utiliza la especificación de

procesos.

No permite recoger el contenido de los flujos de datos ni el contenido de los

archivos .Para ello se utiliza el diccionario de datos.

Los componentes de un diagrama de flujo son:

Proceso

Flujo

Almacén

Terminador

Proceso:

El primer componente de diagrama de flujo de datos se conoce como Proceso. El

proceso nuestra una parte del sistema que transforman Entradas y Salidas.

Algunas analistas prefieren usar un ovalo o un rectángulo con esquinas

redondeadas, otros prefieren usar un rectángulo. Las diferencias entre estas tres

formas son puramente cosméticas, aunque obviamente es importante usar la

misma forma de la manera consistente para representar todas las funciones de un

sistema.

Page 34: MI MANUAL DE ALGORITMOS

34

Flujo:

Un flujo se representa gráficamente por medio de una flecha que entra y sale de

proceso; el flujo se usa para describir el movimiento, de bloques o paquetes de

información de una parte del sistema a otra.

Los flujos realmente representan Datos, es decir, Bits caracteres, mensajes,

números, de puntos, flotante y los diversos tipos de información con los que las

computadoras pueden tratar.

Los flujos también muestran la dirección: Una cabeza de flecha en cualquier

extremo(o posiblemente ambos) del flujo indica si los datos (o el material) se esta

moviendo hacia adentro a hacia fuera por ejemplo indica claramente que el

numero se esta mandando hacia el proceso denominado validar numero

telefónicos, y el flujo denominado honorarios de entrega de chóferes. Los datos

que se mueven a dicho flujo viajaran ya sea de un proceso a otro.

Ejemplo:

Page 35: MI MANUAL DE ALGORITMOS

35

Almacén:

Se utiliza para modelar una colección de paquetes de datos en reposo. Se denota

por dos líneas paralelas, de modo característico el nombre que se utiliza para

identificar para los paquetes que entran y salen del almacén por medios de flujo.

Pedidos:

Para el analista con conocimiento de proceso de datos es tentador referirse a

los almacenes como archivos o bases de datos; pro un almacén también pudiera

consistir en datos almacenados también pudiera consistir en datos almacenados

en tarjetas perforadas, microfilm, microfichas, discos ópticos, etc. y un almacén

también puede ser en conjunto de fichas de papel en una caja de cartón , nombres

de fichas de papel en un directorio, diversos archivos en un archivero, o varias

formas no computarizadas.

Los almacenes se conectan por flujos a los procesos. Así el contexto en el que

se muestra en un DFD (Diagrama de Flujo de Datos) es uno de los siguientes:

Un flujo desde un almacén.

UN flujo hacia un almacén.

Terminador:

Se representa como un rectángulo como los terminadores ser representa en

entidades externas con las cuales el sistema se comunica, continuamente, puede

ser una persona, o un grupo. Por ejemplo: una organización externa n o una

agencia gubernamental, o un grupo o departamento que este dentro de la misma

compañía u organización, pero fuera del control del sistema que se esta

modelando. En algunos casos, un terminador puede ser otro sistema, como algún

otro sistema computacional con el cual se comunica este.

Page 36: MI MANUAL DE ALGORITMOS

36

Existen tres cosas importantes que debemos recordar acerca de los terminadores.

Son externos al sistema que se esta modelando.

Es evidente que ni el analista ni el diseñador del sistema están en posibilidades

de cambiar los contenidos de un terminador o la manera en que esta trabaja.

Las relaciones que existen entre lo terminadores no se muestran en

el modelo DFD (Diagrama de Flujo de Datos)13.

OBJETIVOS DE UN DIAGRAMAS DE FLUJO

a. Estructura la solución del problema independiente del lenguaje a utilizar.

b. Separar la solución lógica de programación de la parte de reglas y sintaxis

de codificación con esta división del trabajo se obtiene mayor eficiencia.

c. Dar una visión completa del problema al programador ya que pierde en

un programa ya codificado.

d. Permitir una compresión más rápida del programa a otros programadores.

TIPOS DE DIAGRAMAS DE FLUJO

Diagrama de flujo de sistemas: muestra en que forma se procesan los datos, entre

as principales funciones o estaciones de trabajo .En este diagrama completo

de computadora se presenta con un solo símbolo de procesamiento.

13http://www.monografias.com/trabajos60/diagrama-flujo-datos/diagrama-flujo-

datos2.shtml

Page 37: MI MANUAL DE ALGORITMOS

37

Ejemplo de Diagrama de Flujo de sistema:

Diagramas de flujo de programación

Son las operaciones y decisiones en la secuencia en que las ejecutará

una computadora de procesamiento de datos. Los símbolos representan esas

operaciones e indican el orden en que se ejecutaran. Por lo tanto, un diagrama de

flujo de programa proporciona una descripción grafica del programa.

Consideraciones sobre diagrama de flujo

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 mostrar el resultado. O falta

uncá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.

Page 38: MI MANUAL DE ALGORITMOS

38

Una vez terminado e diagrama de flujo, es necesario asegurarse de que funcione

correctamente cumpliendo el objetivo fundamental, las condiciones especificas y

las excepciones del problema propuesto a esto se le llama generalmente "corrida

en frió" 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 indique14.

14http://www.monografias.com/trabajos60/diagrama-flujo-datos/diagrama-flujo-datos.shtml

Page 39: MI MANUAL DE ALGORITMOS

39

Page 40: MI MANUAL DE ALGORITMOS

40

I.PROBLEMAS CON DIAGRAMAS DE FLUJO DE DATOS

Problema 1: Realizar un diagrama flujo que permita calcular el promedio del área

de educación para el trabajo, teniendo en cuenta que esta cuenta con 04

capacidades.

Problema 2: Diseñar un diagrama de flujo correspondiente a un programa que

calcule el área y perímetro de un triangulo rectángulo dada la base y la altura.

Problema 3: desarrollar un diagrama de flujo que permita realizar las 4

operaciones con dos números ingresados por el teclado .

Problema 4: Desarrollar un problema de flujo que no permita cambiar una

cantidad de soles a dólares.

Problema 5: Desarrollar un diagrama de flujo que no permita calcular el importe a

pagar por un determinado articulo el cual se conozca su precio unitario .

Problema 6: Tres amigos hicieron una venta de libros y se reparten las ganancias

de acuerdo al siguiente : 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 quien?

Problema 7: Calcular cuánto va ha pagar un estudiante por seis útiles escolares, si

necesita 6 cuadernos, cuyo precio es el mismo para todos, 2 libros del mismo

valor y un millar de hojas.

Problema 8: Calcular cuánto dinero ahorrara Marina en una alcancía, durante un

año, si cada semana ahorra “n” soles.

Problema 9: Martha deposita sus ahorros en el Banco de Crédito, le pagan un

interés del 3% mensual, ¿Cuánto dinero tendrá a los seis mese si no retiro nada?.

El interés siempre se aplica sobre el depósito inicial.

Problema 10: Diseñar un DFD que te permita saber la estatura y el peso de una

persona y el cálculo de índice de masa corporal. La información que necesitas

investigar es cuál es la fórmula para calcular el índice de masa corporal.

Page 41: MI MANUAL DE ALGORITMOS

41

II.SOLUCION DE PROBLEMAS CON DIAGRAMA DE FLUJO DE DATOS

PROBLEMA 1

Inicio

“Ingresar capacidad 1:”, c1

“Ingresar Capacidad2:”,c2

“Ingresar Capacidad3:”,c3

“Ingresar Capacidad4:”,c4

c1, c2, c3, c4 , P es entero

P=(c1+c2+c3+c4)/4

Fin

“El promedio del

área es:”, P

Page 42: MI MANUAL DE ALGORITMOS

42

PROBLEMA 2:

Inicio

b, h, hip, A, P es real

“Ingresar base:”, b

“Ingresar altura:”, h

“Ingresar

hipotenusa:”, hip

A=b*h/2

P=b+h+hip

“El área y perímetro

del triangulo

rectángulo es:”,

A y P

Fin

Page 43: MI MANUAL DE ALGORITMOS

43

Problema 3:

N1, N2, S, R, M, D es

entero

Inicio

“Ingresar el numero1:”,N1

“Ingresar el numero 2:”,N2

S=n1+n2

R=n1-n2

M=n1*n2

D=n1/n2

“La suma es:”, S

“La resta es:”, R

“La multiplicación es:”, M

“La división es:”, D

Fin

Page 44: MI MANUAL DE ALGORITMOS

44

PROBLEMA 4:

Inicio

S, D , X es Real

X= 2,70

D, X es real

“Ingresar el sol:”, S

“Ingresar el valor del

dólar en soles:”, X

D=S/X

“El cambio de sol a

dólar es:”, D

Fin

Page 45: MI MANUAL DE ALGORITMOS

45

PROBLEMA 5:

Inicio

Fin

“El Importe es :”, I

D, X es real

I=X*PU

“Ingresar determinado

artículo:”, X

“Ingresar precio

unitario:”, PU

D, X es real

I, X, PU es real

D, X es real

Page 46: MI MANUAL DE ALGORITMOS

46

PROBLEMA 6:

Page 47: MI MANUAL DE ALGORITMOS

47

Problema 7:

Page 48: MI MANUAL DE ALGORITMOS

48

Problema 8:

Page 49: MI MANUAL DE ALGORITMOS

49

PROBLEMA 9:

Page 50: MI MANUAL DE ALGORITMOS

50

PROBLEMA 10:

Page 51: MI MANUAL DE ALGORITMOS

51

Page 52: MI MANUAL DE ALGORITMOS

52

EVALUANDO CONOCIMIENTOS SOBRE ALGORITMOS

I. Responde las preguntas según lo aprendido.

¿Qué son variables?.Tipos

¿Para que sirven un diagrama de flujo de datos?

¿Cuáles son los tipos de expresiones que existen?

¿Para que se utilizan los contadores?

II.Crea un digrama de flujo de datos tomando en cuenta los pasos a seguir.

III.Desarrolla los siguientes problemas.

1.Se desea depositar una cierta cantidad de dinero en el Banco, el cual paga a

razón de 2% mensual. Realizar un DFD para saber cuanto dinero ganara en un

mes.

2.Un vendedor recibe un sueldo base mas 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.

3.El profesor Wilton Torres desea saber el porcentaje de hombres y que

porcentajes de mujeres hay en el grupo de estudiantes del cuarto año.

Page 53: MI MANUAL DE ALGORITMOS

53

Page 54: MI MANUAL DE ALGORITMOS

54

I. REGLAS PARA DIBUJAR UN DIAGRAMAS DE FLUJO.

Los Diagramas de flujo se dibujan generalmente usando algunos símbolos

estándares; sin embargo, algunos símbolos especiales pueden también ser

desarrollados cuando séan requeridos. Algunos símbolos estándares, que se

requieren con frecuencia para diagramar programas de computadora se muestran

a continuación:

Inicio o fin del programa

Pasos, procesos o líneas de instruccion de

programa de computo

Operaciones de entrada y salida

Toma de desiciónes y Ramificación

Conector para unir el flujo a otra parte del

diagrama

Cinta magnética

Disco magnético

Conector de pagina

Líneas de flujo

Page 55: MI MANUAL DE ALGORITMOS

55

Anotación

Display, para mostrar datos

Envía datos a la impresora

OBSERVACIÓN: Para obtener la correcta elaboración de los símbolos, existen

plantillas. Las puedes conseguir en Papelerías.

SIMBOLOS GRÁFICOS

Dentro de los símbolos fundamentales para la creación de diagramas de flujo, los

símbolos gráficos son utilizados específicamente para operaciones aritméticas y

relaciones condicionales. La siguiente es una lista de los símbolos más

comúnmente utilizados:

+ Sumar

- Menos

* Multiplicación

/ División

± Mas o menos

= Equivalente a

> Mayor que

< Menor que

³ Mayor o igual que

£ Menor o igual que

Page 56: MI MANUAL DE ALGORITMOS

56

¹ o <> Diferente de

Si

No

True

False

REGLAS PARA LA CREACION DE DIAGRAMAS

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 la dirección que fluye la información procesos, se deben de utilizar

solamente líneas de flujo horizontal o verticales (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 vana utilizar conectores cuando sea

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 excepción

del símbolo final.

7. Solo los símbolos de decisión pueden y deben tener mas de una línea de flujo

de salida.

Page 57: MI MANUAL DE ALGORITMOS

57

EJEMPLOS DE DIAGRAMAS DE FLUJO

Diagrama de flujo que encuentra la suma de los primeros 50 numeros naturales

Bueno, y ahora la descripción del diagrama anterior

Suma, es la variable a la que se le va agregando la valor de cada número

natural. N, es el contador. Éste recorrerá lo números hasta llegar al 50.

El primer bloque indica el inicio del Diagrama de

flujo

El segundo bloque, es un Símbolo de procesos En

este bloque se asume que las variables suma y N han sido declaradas

Page 58: MI MANUAL DE ALGORITMOS

58

previamente y las inicializa en 0 para comenzar a el conteo y la suma de

valores (Para declararlas existe el bloque Tarjeta perforada).

El tercer bloque, es también un Símbolo de

procesos En éste paso se incrementa en 1 la

variable N (N = N + 1). Por lo que, en la primera pasada esta N valdrá 1, ya

que estaba inicializada en 0.

El cuarto bloque es exactamente lo mismo que el anterior

Pero en éste, ya se le agrega el valor de N a la

variable que contendrá la suma (En el primer caso contendrá 1, ya que N =

1).

El quinto bloque es uno Símbolo de Toma de decisiones y Ramificación Lo

que hay dentro del bloque es una pregunta que se le hace a los valores que

actualmente influyen en el proceso (Por decir algo, no se como decirlo, soy

muy sope :D) ¿Es N=50?, Obviamente la respuesta

es no, ya que N todavía es 1. por lo que el flujo de nuestro programa se

dirigirá hacía la parte en donde se observa la palabra no: Tercer Bloque, éste

le sumará 1 (N=N+1) y vuelve a llegar a éste bloque, donde preguntará ¿Es

N=50?... ¡No!, todavía es 2. Ha pues, regresa al Tercer bloque y vuelve hacer

lo mismo. Y así hasta llegar a 50, obteniendo así la suma de los primeros 50

primeros números naturales.

Page 59: MI MANUAL DE ALGORITMOS

59

Por último indicamos que el resultado será mostrado en la impresora (Este lo

puedes cambiarlo por el display para mostrar datos).

Fin del programa (o diagrama) 15

15 http://mis-algoritmos.com/aprenda-a-crear-diagramas-de-flujo

Page 60: MI MANUAL DE ALGORITMOS

60

Page 61: MI MANUAL DE ALGORITMOS

61

I. DEFINICIÓN

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:

Page 62: MI MANUAL DE ALGORITMOS

62

Pseudocódigo: Diagrama de flujo:

Donde:

Si:Indica el comando de comparación

Condición : Indica la condición a evaluar

Entonces : Precede a las acciones a realizar cuando se cumple la condición

Instrucción(es):Son las acciones a realizar cuando se cumple o no la condición

si no :Precede a las acciones a realizar cuando no se cumple la condición

Dependiendo de si la comparación es cierta o falsa, se pueden realizar una o más

acciones.

MÚLTIPLES:

Las estructuras de comparación múltiples, son tomas de decisión especializadas

que permiten comparar una variable contra distintos posibles resultados,

ejecutando para cada caso una serie de instrucciones específicas. La forma

común es la siguiente:

Pseudocódigo: Diagrama de flujo:

Page 63: MI MANUAL DE ALGORITMOS

63

MÚLTIPLES (EN CASO DE):

Las estructuras de comparación múltiples, es una toma de decisión especializada

que permiten evaluar una variable con distintos posibles resultados, ejecutando

para cada caso una serie de instrucciones especificas16.

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

Page 64: MI MANUAL DE ALGORITMOS

64

Page 65: MI MANUAL DE ALGORITMOS

65

EVALUANDO CONOCIMIENTOS SOBRE ESTRUCTURAS CONDICIONALES

I. Responde las preguntas según lo aprendido.

¿Qué son las estructuras condicionales?

¿Cuántos tipos de estructuras condicionales hay?

¿Qué son las estructuras condicionales simples?

¿Qué son las estructuras condicionales dobles?

¿Qué son las estructuras condicionales multiples?

II. Crear un DFD con Estructuras Condicionales tomando en cuenta los pasos a

seguir.

III. Desarrolla los siguientes problemas.

1.Realizar un DFD que nos permita determinar si el numero ingresado por teclado

es positivo o negativo.

2. Realizar un DFD para determinar si una persona es mayor o menor de edad.

Page 66: MI MANUAL DE ALGORITMOS

66

LINKOGRAFIA

http://normakerwin.blogspot.com/2009/02/el-origen-de-la-palabra-algoritmo-

en.html

http://lilianarosa-lidia.blogspot.com/2009/08/definicion-e-historia-de-

algoritmo.html

http://www.alegsa.com.ar/Dic/algoritmo.php

http://aulatec.wordpress.com/caracteristicas-y-propiedades-de-los-

algoritmos/

http://uttinfor.tripod.com/index/id1.html

http://www.monografias.com/trabajos12/alflu/alflu.shtml

http://www.carlospes.com/curso_de_algoritmos/03_03_constantes.php

http://teleformacion.edu.aytolacoruna.es/PASCAL/document/tipos.htm

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

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

http://www.monografias.com/trabajos60/diagrama-flujo-datos/diagrama-

flujo-datos2.shtml

http://www.monografias.com/trabajos60/diagrama-flujo-datos/diagrama-

flujo-datos.shtml

http://mis-algoritmos.com/aprenda-a-crear-diagramas-de-flujo

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

Page 67: MI MANUAL DE ALGORITMOS

67

INDICE

1. Carátula……………………………………………………………………………..1

2. Dedicatoria………………………………………………………………………….2

3. Presentación……………………………………………………………………….3

4. Los Algoritmos……………………………………………………………………. 4

5. SESIÓN 1: “Conociendo los Algoritmos”………………………………………5

5.1. Origen de los Algoritmos……………………………………………………. 6

5.2. Historia de los Algoritmos ……………………………………………………7

5.3. Definición de los Algoritmos………………………………………………….8

5.4. Características de los Algoritmos…………………………………………... 9

5.5. Propiedades de un Algoritmo……………………………………………… 10

5.6. Técnicas para la descripción de un Algoritmo…………………………… 11

5.7. Reglas para la elaboración de un Algoritmo……………………………… 13

6. SESIÓN 2: “Variables, Constantes, Tipos de Datos, Expresiones, Operadores” …………………………………………………………………………………………14

6.1. Variables……………………………………………………………………….15

6.2. Constantes…………………………………………………………………….18

6.3. Tipos de Datos………………………………………………………………. 19

6.4. Expresiones de Algoritmos………………………………………………… 25

6.5. Operadores…………………………………………………………………... 27

7. SESIÓN 3: “Diagramas de Flujo de Datos”…………………………………... 31

7.1. Diagrama de flujo de datos…………………………………………………. 32

Page 68: MI MANUAL DE ALGORITMOS

68

8. SESIÓN 4: “Solucionando problemas con Diagramas de Flujo de Datos”... 39

8.1.Problemas con Diagrama de flujo de datos……………………………….. 40

8.2. Solucion de problemas con Diagrama de flujo de datos………………… 41

9. SESIÓN 5: “Integrando los Aprendizajes I”………………………………….. 51

9.1.Evaluando conocimientos sobre Algoritmos……………………………….. 52

10.SESIÓN 6: “Creando Diagramas de Flujo de datos con el software Free DFD” ………………………………………………………………………………………….53

10.1. Reglas para dibujar un DFD……………………………………………….. 54

10.2.Reglas para la creación de un DFD……………………………………….. 56

11. SESIÓN 7: “Estructuras condicionales simples, dobles y múltiples”………60

11.1. Definición y Tipos…………………………………………………………... 61

12. SESIÓN 8: “Integrando los Aprendizajes II”…………………………………. 64

12.1. Evaluando conocimientos sobre Estructuras Condicionales…………… 65

13. Linkografias……………………………………………………………………….66