• No se han encontrado resultados

PRESENTACIÓN. El presente manual esta dedicado a todas aquellas personas que desean conocer

N/A
N/A
Protected

Academic year: 2022

Share "PRESENTACIÓN. El presente manual esta dedicado a todas aquellas personas que desean conocer"

Copied!
40
0
0

Texto completo

(1)
(2)

PRESENTACIÓN

El presente manual esta dedicado a todas aquellas personas que desean conocer más sobre las utilidades y beneficios de las técnicas de programación, así como los algoritmos para desarrollar los problemas que se presentan en la vida diaria de un programador, para poder desenvolverse dentro de un trabajo, y saber que cuando se conoce las técnicas adecuadamente se da solución a un problema para a futuro llevarlo en un lenguaje de programación; ya que el mundo globalizado esta en constante cambio, por ende hoy en día se habla de tecnología y lo vemos en todos las Instituciones Públicas o Privadas. En especial el beneficio será para los estudiantes de la Institución Privada “TELESUP - Huaraz” que requieren incorporar conocimientos técnicos de aplicación inmediata para responder con éxito a las exigencias del presente milenio.

Por ello le doy a conocer algunos conceptos de algoritmo, técnicas y ejemplos en la resolución de un problema; además la ventaja que trae en conocer dichas técnicas y emplearlo en cada momento de la resolución de un problema presentado.

Esperando que este manual le sea útil a las personas y Estudiantes de nuestra Institución TELESUP - Huaraz.

El Docente

(3)

ÍNDICE

Pág.

TÉCNICAS DE PROGRAMACIÓN ...06

I. INTRODUCCIÓN ...06

Organización Física de una Computadora ...07

DISPOSITIVOS DE ENTRADA ...07

DISPOSITIVOS DE SALIDA ...07

UNIDAD CENTRAL DE PROCESAMIENTO ...07

¾ Unidad de Control ...07

¾ Unidad Aritmética – Lógica ...08

MEMORIA ...08

a) Memoria Interna o Central ...08

™ Memoria RAM (Random Access Memory) ...08

™ Memoria ROM (Read Only Memory) ...08

b) Memoria Auxiliar Externa ...08

II. PROGRAMAS ...09

III. LENGUAJE ...09

a) Lenguaje de Programación ...09

Lenguaje Máquina ...09

Lenguaje de Bajo Nivel (Ensamblador) ...09

Lenguaje de Alto Nivel ...10

IV. DEFINICIÓN DE ALGORITMO ...10

V. TIPOS DE ALGORITMOS ...11

a) CUALITATIVOS ...11

b) CUANTITATIVOS ...11

VI. LENGUAJES ALGORÍTMICOS ...11

VII. TIPOS DE LENGUAJES ALGORÍTMICOS ...11

™ Gráficos ...11

™ No Gráficos ...11

VIII. DEFINICIÓN DEL PROBLEMA ...12

IX. ANÁLISIS DEL PROBLEMA ...12

X. DISEÑO DEL ALGORITMO ...12

XI. CODIFICACIÓN ...13

(4)

XIII. DOCUMENTACIÓN ...13

 Documentación Interna ...14

 Documentación Externa ...14

 Manual del Usuario ...14

XIV. MANTENIMIENTO ...14

XV. ENTIDADES PRIMITIVAS PARA EL DESARROLLO DEL ALGORITMOS 15 A) TIPOS DE DATOS ...15

 Tipos de Datos Simples ...15

 Datos Numéricos ...15

 Datos Lógicos ...15

 Datos Alfanuméricos (String’s) ...15

 Tipos de Datos Estructurados ...16

 Arreglos (Matrices – Vectores) ...16

 Puntero ...16

B) EXPRESIONES ...17

C) OPERADORES ...17

o Operadores Aritméticos ...17

o Operadores de Comparación ...18

o Operadores Lógicos ...18

D) PRIORIDAD DE OPERADORES ...19

E) IDENTIFICADORES ...20

Consideraciones ...20

Constantes ...20

Variable ...20

Tipos de Variables ...20

a) Por su Contenido ...20

Ö Numéricas ...20

Ö Lógicas ...20

Ö Alfanuméricas (String’s) ...21

b) Por su Uso ...21

Ö De Trabajo ...21

Ö Contadores ...21

Ö Acumuladores ...21

(5)

1) Diagrama de Flujo ...21

Reglas para dibujar un Diagrama de Flujo ...21

Símbolos para Dibujar un Diagrama de Flujo ...22

Reglas para la creación de Diagrama de Flujo ...23

DESCRIPCIÓN DEL DIAGRAMA DE FLUJO ...24

2) Pseudocodigos ...25

3) Diagramas N – S (“Nassi – Schneiderman) ...26

DIAGRAMA DE FLUJO – ESTRUCTURAS ...27

 ESTRUCTURA SI SIMPLE ...27

 ESTRUCTURA SI DOBLE ...27

 ESTRUCTURA SI MÚLTIPLES ...28

 ESTRUCTURA SEGÚN (CASOS) ...28

 ESTRUCTURA PARA ...29

 ESTRUCTURA MIENTRAS ...30

 ESTRUCTURA HASTA ...30

PSEUDOCODIGO – ESTRUCTURAS ...31

 ESTRUCTURA SI SIMPLE ...31

 ESTRUCTURA SI DOBLE ...31

 ESTRUCTURA SI MÚLTIPLES ...32

 ESTRUCTURA SEGÚN (CASOS) ...32

 ESTRUCTURA PARA ...33

 ESTRUCTURA MIENTRAS ...33

 ESTRUCTURA HASTA ...33

NASSI SCHNEINDERMAN ...34

 ESTRUCTURA SECUENCIAL ...34

 ESTRUCTURA SI SIMPLE ...34

 ESTRUCTURA SI DOBLE ...35

 ESTRUCTURA SI MÚLTIPLES ...35

 ESTRUCTURA SEGÚN (CASOS) ...35

 ESTRUCTURA PARA ...36

 ESTRUCTURA MIENTRAS ...36

 ESTRUCTURA HASTA ...36

EJEMPLOS – DIAGRAMAS DE FLUJOS – PSEUDOCODIGOS ...37

(6)

TÉCNICAS DE PROGRAMACIÓN I. INTRODUCCIÓN:

Para realizar una Técnica de Programación debemos de emplear la computadora que en el presente milenio se ha convertido en una herramienta de trabajo que no solamente puede realizar procesos en las cuales determinamos resultados, sin saber o tener idea de como se ha llegado a ese resultado. En la computadora podemos diseñar soluciones de un problema que se nos presenta como operaciones matemáticas complejas y/o repetitivas, además pueden requerir el manejo de un volumen muy grande de datos. El diseño de soluciones de problemas, requiere una técnica que nos enseñe la forma de llegar a la solución.

A las soluciones creadas por la computadora se les conoce con el nombre de programas, las que desarrollan una serie de operaciones para llegar a un dato específico que realiza la computadora. Esto nos lleva al razonamiento de un programa que nos sirva para dar solución a problemas específicos.

Además de conocer la técnica debemos de saber utilizar las funciones que pueden utilizar la computadora y las maneras como se pueden manejar los elementos que hay en el problema.

Entonces podemos decir:

Computadora: Es una máquina electrónica capaz de procesar información a grandes velocidades. Los datos y la información se pueden determinar en la computadora, como de entrada (INPUT) y deben de ser procesados para dar una salida o respuesta (OUTPUT)

PROCESO DE INFORMACIÓN DE LA COMPUTADORA

OUTPUT PROCESSING

INPUT

(7)

Entrada Proceso Salida Organización Física de una Computadora

Consta de lo siguiente:

DISPOSITIVOS DE ENTRADA: Son aquellos dispositivos o periféricos que nos permiten introducir datos (información) en la computadora para su proceso. Los datos son leídos de los dispositivos de entrada para ser almacenados en la memoria central o interna. Ejemplos: teclado, scanners (digitalizadores de rastreo), Mouse (ratón), trackball (bola de ratón estacionario), jostick (palancas de juego), lápiz óptico.

DISPOSITIVOS DE SALIDA: Son aquellos dispositivos o periféricos que nos dan como resultado la solución del proceso de la información introducida.

Ejemplo: Monitor, Impresora.

UNIDAD CENTRAL DE PROCESAMIENTO: Comúnmente conocida como CPU o microprocesador y se divide en dos:

CPU - MICROPROCESADOR Unidad

De Control

Unidad Aritmética

Lógica

Menú

Dispositivos De Salida Dispositivos

De Entrada

¾ Unidad de Control: Coordina las actividades de la computadora y determina las operaciones que se deben de realizar y en que orden se deben de ejecutar; además controla el proceso de la computadora.

(8)

¾ Unidad Aritmética – Lógica: Realiza operaciones aritméticas y lógicas, como es las operaciones matemáticas, además las operaciones de comparación.

MEMORIA:

a) Memoria Interna o Central: La que contiene el Microprocesador Caché de la computadora para guardar información mientras trabaja con ella; esto se da cuando la información permanece en memoria, la computadora puede tener acceso a ella en forma directa. Es la que conocemos con el nombre de memoria de acceso aleatorio (RAM).

Esta memoria consta de dos áreas las que son:

™ Memoria RAM (Random Access Memory): Recibe el nombre de memoria principal o memoria del usuario, en ella solo se almacena la información mientras se ejecuta el programa. Cuando finaliza el programa esta información se pierde, por la cual mencionamos que la memoria RAM se le llama memoria volátil.

™ Memoria ROM (Read Only Memory): Es una memoria estática que no puede cambiar, pero tiene datos almacenados dentro de ello; es decir solo se puede modificar las opciones permitidas, por eso se dice que es de solo lectura. Estos datos o información ya vienen grabados y son introducidos por la empresa que diseña tales dispositivos.

b) Memoria Auxiliar Externa: Es donde se almacenan todos los datos o programas que desee el usuario. Los dispositivos de almacenamiento o memorias auxiliares (externas o secundarias), las que más comúnmente se utilizan son: cintas magnéticas y discos magnéticos.

(9)

II. PROGRAMAS: Conjunto de instrucciones secuenciales realizadas en un lenguaje de programación para resolver un problema específico.

III. LENGUAJE: Conjunto de símbolos que permiten transmitir mensajes (ideas) entre entes diferentes y se obtiene la comunicación. La comunicación es un proceso complejo en el cual debemos de tener en cuenta:

- Los mensajes deben de correr en un solo sentido

- Debe existir: Emisor, Receptor, Medio ambiente, Mensaje.

a) Lenguaje de Programación: Conjunto de símbolos, instrucciones, reglas que nos permite la comunicación con la computadora. Permite realizar la entrada y salida, para automatizar los datos, realizando cálculos, procesos.

Los lenguajes de programación se clasifican en:

Lenguaje Máquina: (Binario 0 – 1) Son aquellas instrucciones que entiende la computadora y no necesitan traducción posterior para que la CPU pueda comprender y entender el programa. Estas instrucciones de lenguaje máquina se expresan en términos de la unidad de memoria más pequeña que es el bit (dígito binario 0 – 1 ).

Lenguaje de Bajo Nivel (Ensamblador): Son los lenguajes que se escriben en códigos alfabéticos conocidos como mnemotécnicos (sirve para auxiliar a la memoria) para las operaciones o direcciones simbólicas.

(10)

Lenguaje de Alto Nivel: Los lenguajes de programación de alto nivel son aquellas en las que las instrucciones o sentencias a la computadora son escritas con palabras similares a los lenguajes humanos (se les conoce con el nombre de código o comandos que son escritas en inglés), lo que facilita la escritura y comprensión del programa entre estos lenguajes de programación de alto nivel tenemos: Basic, Pascal, Cobol, Fox, C++, Fortran, etc.

IV. DEFINICIÓN DE ALGORITMO

La palabra algoritmo se deriva de la traducción al latín de la palabra árabe ALKHOWARIZMI, nombre de un matemático y astrónomo árabe que escribió un tratado sobre manipulaciones de números y ecuaciones en el siglo IX.

Un algoritmo es una serie de pasos organizados que describe el proceso que se debe de seguir, para dar una solución a un problema específico, además podemos decir que son Operaciones que llevan a mostrar programas que pasan por instrucciones y llevan a realizar una sistematización. El término algoritmo se aplica a muchos de los métodos de resolución de problemas que emplean una secuencia mecánica de pasos.

Algoritmo: ALKHOWARIZMI IX, Es el conjunto de pasos ordenados que nos permiten solucionar un problema específico. Un algoritmo es un procedimiento a seguir, para resolver un problema en términos de:

• Las acciones por ejecutar

• El orden en que dichas acciones deben ejecutarse

Un algoritmo nace en respuesta a la aparición de un determinado problema. Una algoritmo esta compuesto de una serie finita de pasos que convergen en la solución de un problema, pero además estos pasos tienen un orden específico.

(11)

Entenderemos como problema a cualquier acción o evento que necesite cierto grado de análisis, desde la simpleza de cepillarse los dientes hasta la complejidad del ensamblado de un automóvil. En general, cualquier problema puede ser solucionado utilizando un algoritmo, en este sentido podemos utilizar los algoritmos para resolver problemas de cómputo.

Un algoritmo para un programador es una herramienta que le permite resaltar los aspectos más importantes de una situación y descartar los menos relevantes. Todo problema de cómputo se puede resolver ejecutando una serie de acciones en un orden específico.

V. TIPOS DE ALGORITMOS

a) CUALITATIVOS: Son aquellos algoritmos que se describen los pasos o secuencias utilizando las palabras para el proceso.

b) CUANTITATIVOS: Son aquellos algoritmos en los que se utilizan cálculos numéricos para definir los pasos o secuencias de un proceso.

VI. LENGUAJES ALGORÍTMICOS

Serie de símbolos y reglas que se utilizan de manera explícita en los pasos o secuencias del proceso.

VII. TIPOS DE LENGUAJES ALGORÍTMICOS

™ Gráficos: Son aquellos que los pasos o secuencias del proceso se representan mediante dibujos (Diagrama de Flujo, Nassi - Schneiderman).

™ No Gráficos: Se representan en forma descriptiva los pasos o secuencias del proceso (Pseudocodigos).

(12)

Técnicas para la solución del problema (pasos y secuencias del proceso) mediante la computadora.

VIII. DEFINICIÓN DEL PROBLEMA

Esta fase está dada por lo formulado del problema, el cual requiera una definición clara y precisa. Es importante que se conozca lo que se desea realizar en la computadora; mientras que esto no se conozca del todo no tiene mucho caso continuar con la siguiente etapa.

IX. ANÁLISIS DEL PROBLEMA

Una vez que se ha comprendido lo que se desea realizar en la computadora, es necesario definir:

" Los Datos de Entrada (Leer - Ingresar).

" Cual es la información que se desea producir (Salida – Mostrar – Visualizar).

" Los métodos o fórmulas que se necesitan para procesar los datos.

Una sugerencia para todos los que desean realizar el algoritmo es que debemos de pensar como una computadora y además debemos de tener en cuenta el análisis de lo que deseamos que procese y en que secuencia, para producir los resultados esperados del problema.

X. DISEÑO DEL ALGORITMO

Las características para obtener un buen resultado y que el algoritmo sea óptimo es:

" Tener un punto de Inicio.

" Debe ser bien definido, es decir no debe haber dobles interpretaciones.

(13)

" Debe ser general, es decir soporta la mayor cantidad de variables que se puedan utilizar en la definición del problema.

" Debe ser finito en tamaño y tiempo de ejecución.

XI. CODIFICACIÓN

Es la operación de escribir la solución del problema en una serie de instrucciones detalladas en un código reconocible por computadoras. El usuario se guía de la lógica de su algoritmo (diagrama de flujo o pseudocodigo), la serie de instrucciones detalladas se le conoce como código fuente, el cual se escribe en un lenguaje de programación o lenguaje de alto nivel.

XII. PRUEBA Y DEPURACIÓN

; Los errores humanos dentro de la programación de computadoras son muchos y aumentan considerablemente con la complejidad del problema. El proceso de identificar y eliminar errores, para dar paso a la solución sin errores se le llama depuración.

; La depuración o prueba resulta una tarea tan creativa como el mismo desarrollo de la solución, y por ello se debe de considerar con el mismo interés y entusiasmo.

; Resulta conveniente observar los siguientes principios al realizar una depuración, ya que este trabajo depende el éxito de nuestra solución.

XIII. DOCUMENTACIÓN

 Es la guía o comunicación escrita en sus variadas formas, ya sea en enunciados, procedimientos, dibujos o diagramas.

(14)

 A menudo un programa escrito por una persona, es usado por otra. Por ello la documentación sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento).

La Documentación se divide en tres partes:

 Documentación Interna: Son los comentarios o mensajes que se añaden al código fuente para hacer más claro el entendimiento de un proceso.

 Documentación Externa: Se define en un documento escrito teniendo los siguientes puntos:

 Descripción del problema.

 Nombre del Autor.

 Algoritmo (Diagrama de Flujo, Nassi - Schneiderman o Pseudocodigo)

 Diccionario de Datos.

 Código Fuente (Programa).

 Manual del Usuario: Describe paso a paso la manera como funciona el programa, con el fin de que el usuario obtenga el resultado deseado.

XIV. MANTENIMIENTO

Se lleva a cabo después de terminado el programa, cuando se detecta que es necesario hacer algún cambio, ajuste o complementación al programa para que siga trabajando de manera correcta. Para poder realizar este trabajo se requiere que el programa este correctamente documentado.

(15)

XV. ENTIDADES PRIMITIVAS PARA EL DESARROLLO DE ALGORITMOS A) TIPOS DE DATOS

Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carácter, tal como ‘R’, un valor entero tal como 32. El tipo de dato determina la naturaleza del conjunto de valores que puede tomar una variable.

Numéricos Lógicos

Alfanuméricos (string’s) Simples

Tipos de Datos

Arreglos (Vectores – Matrices) Registros

Archivos Apuntadores Estructurados

(Definidos por el usuario)

 Tipos de Datos Simples:

 Datos Numéricos: Permiten representar valores de forma numérica, esto incluye a los números enteros y reales. Este tipo de dato permiten realizar operaciones aritméticas.

 Datos Lógicos: Son aquellos que sólo pueden tener dos valores (Verdadero o Falso) ya que representan el resultado de una comparación entre otros datos (numéricos o alfanuméricos).

 Datos Alfanuméricos (String’s): Es una secuencia de caracteres alfanuméricos que permiten representar valores identificables de forma descriptiva, esto incluye normas de personas, direcciones, etc. Es posible representar números como alfanuméricos, pero estos pierden su propiedad matemática, es decir no es posible realizar operaciones aritméticas con ellos. Este tipo de dato se representan encerrados entre comillas en un lenguaje de programación y en apóstrofes (Pseudocodigo)

(16)

‘Hola mis amigos’ ‘1975’ Î Pseudocodigo

“Hola mis amigos” “1975” Î Código fuente

 Tipos de Datos Estructurados: Son datos definidos por el usuario de acuerdo a una necesidad para solucionar un problema el cual necesitamos resolver

 Arreglos (Matrices – Vectores): Un arreglos bidimensional esta compuesto, por un conjunto de elementos homogéneos y se puede acceder a los datos utilizando dos subíndices, este tipo de arreglo es también conocido como matriz.

 Puntero: Los punteros son variables que contienen una dirección que hacen referencia a un valor. Una variable común contiene o almacena un valor, mientras que un puntero almacena la dirección que hace referencia a este valor. Para tener un mejor entendimiento de un puntero tenemos que saber que es la memoria, a la que podemos considerar como una colección de casillas en las cuales se puede guardar información, cada casilla esta enumera o tiene una dirección.

Podríamos imaginarnos a la memoria como una gran biblioteca, la cual consta de varios estantes, supongamos que están divididos en casillas, en donde cada una puede contener a un libro. En este ejemplo un puntero sería uno de los registros que se encuentren en el catálogo de la biblioteca, en donde cada registro contiene información de la ubicación (dirección) del libro dentro de los estantes de la biblioteca. De esta manera es más fácil buscar directamente en el catálogo que estante por estante, su manejo es más cómodo; lo mismo ocurre con los punteros.

(17)

Una variable seria directamente la porción de estante o la casilla que contiene al libro.

B) EXPRESIONES

Son las combinaciones de constantes, variables y símbolos de operación:

a + (b + 3) / c

C) OPERADORES Se clasifican en:

Operando2 Operando1

Símbolo Matemático – Lógico

(Operador)

VALOR

(Constante – Variable)

o Operadores Aritméticos: Esta compuesto por la suma, resta, multiplicación, división, Mod (Modulo) residuo de la división entera

Símbolo Representación +

-

* / Mod

\

^

Suma Resta

Multiplicación División Residuo

División Entera Exponente

- 30 / 6 = 5

- 4 + 30 + 11 = 45 - 10 \ 3 = 3

(18)

- 10 Mod 3 = 1 - 10 ^ 2 = 100 - 7 / 2 = 3.5 Prioridad / * - +

o Operadores de Comparación: Con estos operadores el resultado devuelto puede ser:

F = False (Falso) T = True (Verdadero)

Permiten la relación entre dos valores, estos operadores son:

Símbolo Representación

=

>

>=

<

<=

<>

Igual que Mayor que

Mayor o Igual que Menor que

Menor o Igual que Diferente

Ejemplos:

a=5 b=6 c=3

 a + c > b T

 b – c = a F

 b < a – c F

o Operadores Lógicos And (Y) ^

Or (O) v

Not (Negación “~”) ¬

(19)

Operando1 And Operando2 T T T

T F F

F F T

F F F

Operando1 Or Operando2

T T T

T T F

F T T

F F F

Operando1 Not

T F

F T

D) PRIORIDAD DE OPERADORES:

1) Todo lo que se encuentra en paréntesis 2) La exponenciación ^

3) La Multiplicación *, división /, Mod (Modulo) , Not (Negación) 4) Suma +, resta -, And (Y)

5) Mayor que >, Menor que <, Mayor o Igual que >=, Menor o Igual que =<, diferente <>, Or (O)

(20)

E) IDENTIFICADORES: Son referencias que representan los datos del programa, se les llama variables. Ejemplos:

Nombre Num_Hrs Nota3

Consideraciones: Que se piden para formar identificadores.

• Deben de empezar en una letra “A – Z” y no contienen espacios en blanco.

• Consta de letras, dígitos, caracteres (_ “subrayado – subguión”) que están permitidos después del primer carácter.

• Pueden tener como máximo 8 caracteres.

Constantes: Es un dato numérico o alfanumérico que no cambia mediante la ejecución del programa.

Variable: Es un espacio en la memoria de la computadora que permite almacenar temporalmente un dato mediante la ejecución del proceso, su contenido cambia durante la ejecución del programa.

Area = Pi * Radio ^ 2 V : Area ,Radio

Tipos de Variables:

a) Por su Contenido:

Ö Numéricas: Almacenan valores positivos, negativos.

Ö Lógicas: Asumen dos tipos de resultados (verdadero – falso)

(21)

Ö Alfanuméricas (Strings): Están formadas por letras, números y caracteres especiales. ‘1997’, ‘Av. Soledad # 805’

b) Por su Uso:

Ö De Trabajo: Son las variables que reciben el resultado de una operación matemática que se usan en un programa.

Ö Contadores: Se utilizan para llevar el control de número de ocasiones que se realiza una operación o se cumple una condición.

Ö Acumuladores: Es la forma que toma una variable que sirve para llevar una suma acumulativa de una serie de valores que van leyendo o calculando progresivamente.

XVI. TÉCNICAS DE FORMULACIÓN DE ALGORITMOS:

1) Diagrama de Flujo: Es la representación gráfica del algoritmo a través de sistemas de información, describen que operaciones y en que secuencia se requiere para solucionar un problema; y también se puede decir que es la representación detallada en forma gráfica de cómo deben de realizarse los pasos en la computadora para producir resultados o la solución del problema.

Estos diagramas de flujo juegan un papel primordial en la programación de un problema y facilita la comprensión de problemas complicados y sobre todo muy largos.

Reglas para dibujar un Diagrama de Flujo

Los diagramas de flujo se dibujan habitualmente usando símbolos determinados, podemos utilizar símbolos especiales que sean requeridos en el desarrollo de los diagramas de flujo. Observamos los símbolos

(22)

Símbolos para Dibujar un Diagrama de Flujo Símbolo Descripción

Inicio – Final de nuestro diagrama de flujo.

Indica entrada y salida de datos

Símbolo de proceso que asigna un valor en la memoria y/o ejecución de una operación aritmética

Símbolo de decisión indica la realización de comparación de valores

Subprogramas

Conector dentro de Página Indica la continuidad del diagrama dentro de la misma página

Conector fuera de la página. Representa la continuidad del diagrama en otra página.

(23)

Salida de información por impresora

Salida de información por pantalla o monitor

Líneas de flujo de dirección. Indican la secuencia que realizan las operaciones.

Reglas para la creación de Diagrama de Flujo:

Ö Se deben trazar los símbolos de manera que se puedan leer de arriba hacia abajo y de izquierda a derecha.

Ö Los símbolos deben de unirse con flechas que nos indica como fluye la orientación del proceso, se deben de usar líneas de flechas de flujos horizontales y/o verticales.

Ö Debemos de evitar el cruce de líneas utilizando los conectores.

Ö No deben quedar líneas de flujo sin conector

Ö Se deben de usar conectores solo cuando son necesarios

Ö Todo texto escrito dentro de un símbolo deberá ser escrito claramente evitando el uso de muchas palabras

Ö Todos los símbolos pueden tener más de una línea de entrada, a excepción del símbolo final.

Ö Solo los símbolos de decisión pueden y deben de tener más de una línea de flujo de salida

(24)

INICIO

Leen Nombre HRS_T, Precio

Bruto Å HRS_T * Precio

Tasas Å Bruto * 0.35

Neto Å Bruto – Tasas

DESCRIPCIÓN DEL DIAGRAMA DE FLUJO

Fin Escribir Nombre Neto

a) El Primer bloque nos indica el inicio del Diagrama de Flujo

INICIO

b) El Segundo bloque nos indica que vamos a leer la Variable Nombre, HRS_T, Precio que han sido declarados previamente, estas variables deben de ingresarse

Leen Nombre HRS_T, Precio

c) El tercer bloque nos indica un proceso, la variable a calcular es Bruto que ha sido declarado previamente, esta variable es el resultado de las variables HRS_T * Precio.

(25)

Bruto=HRST_T * Precio

Bruto Å HRS_T * Precio

d) El cuarto bloque nos indica un proceso, la variable a calcular es Tasas que ha sido declarado previamente, esta variable es el resultado de la variable Bruto * 0.35

Tasas = Bruto * 0.35

Tasas Å Bruto * 0.35

e) El cuarto bloque nos indica un proceso, la variable a calcular es Neto que ha sido declarado previamente, esta variable es el resultado de la variable Bruto – Tasas

Neto = Bruto – Tasas

Neto Å Bruto – Tasas

f) El quinto bloque nos indica que vamos a escribir o es la salida de la variable Nombre y Neto

Escribir Nombre Neto

g) El sexto bloque nos indica que es el final del Diagrama de Flujo

Fin

2) Pseudocodigos: Es la mezcla del lenguaje de programación y español (inglés o cualquier idioma) que se emplea dentro de la programación estructurada para realizar el diseño de un programa.

(26)

Inicio:

Entrada (Leer) : Nombre, HRS_T, Precio Bruto = HRS_T * Precio

Tasas = Bruto * 0.35 Neto = Bruto – Tasas Salida (Escribir): Nombre, Neto Fin

3) Diagramas N – S(“Nassi – Schneiderman): Es el diagrama de flujo en el que se omiten las flechas de unión y las cajas son continúas.

Inicio:

Leer: Nombre, HRS_T, Precio Calcular

Bruto = HRS_T * Precio Calcular

Tasas = 0.35 * Bruto Calcular

Neto = Bruto * Tasas Escribir: Nombre, Neto Fin

(27)

DIAGRAMA DE FLUJO – ESTRUCTURAS

 ESTRUCTURA SI SIMPLE: Esta sentencia simplemente determina un valor verdadero, es decir según una condición va a mostrar solo el valor verdadero de esa condición.

Condición

Sentencia(s) Verdadera(s) SI

 ESTRUCTURA SI DOBLE: Esta sentencia nos permite comparar una condición y a partir de ello vamos a ver si devuelve un valor verdadero o falso; es decir que va a dar un resultado verdadero o falso de acuerdo a la condición que estamos utilizando.

Condición NO

Sentencia(s) Falsa(s) Sentencia(s)

Verdadera(s) SI

(28)

 ESTRUCTURA SI MÚLTIPLES: Estas estructuras nos permite realizar una comparación múltiple, son usadas generalmente cuando vamos a comparar un valor y deseamos que esta comparación pueda devolver una respuesta entre varias posibles opciones.

Condición 1

SI Sentencia(s) Verdadera(s)

Condición 2

Condición 3

Sentencia(s) Verdadera(s)

Sentencia(s) Verdadera(s) NO

NO

NO

 ESTRUCTURA SEGÚN (CASOS): Esta estructura es usada cuando deseamos comparar un valor y el resultado puede ser de acuerdo a una condición, es casi similar a la estructura de SI MÚLTIPLES, pero es más potente y fácil de emplear cuando el usuario tiene múltiples condiciones a comparar y devolver un solo valor

(29)

Instrucción

Opción 1 SI NO

Instrucción Opción 2

Instrucción N Opción N

Instrucción Condición

 ESTRUCTURA PARA: Tiene como característica principal la repetición de un número determinado de veces el cual va a estar representado por un valor o variable.

Condición

Instrucción 1 Instrucción N Incrementador

NO

SI

(30)

 ESTRUCTURA MIENTRAS: En esta estructura se repite una serie de instrucciones mientras se cumpla la condición (Condición sea Verdadero) que controla el bucle. La característica principal de esta estructura es la de que la condición es evaluada siempre antes de cada repetición. El número de repeticiones oscila entre Cero “0” e infinito, dependiendo de la evaluación de la condición, cuyos argumentos en los casos de repetición, al menos una vez, deberán modificarse dentro del bucle, pues de no ser así el número de repeticiones será infinito y nos encontraremos en un bucle sin salida el cual ocasionará un error al momento de ejecutar el programa.

Condición

Instrucción 1 Instrucción N Incrementador

NO

SI

 ESTRUCTURA HASTA: En esta estructura se repite una serie de instrucciones hasta que se cumpla la condición (Condición sea Verdadero) que controla el bucle;

es decir se ejecuta mientras la condición sea falsa, la cual se evalúa después de cada

(31)

ejecución del mismo. El número de repeticiones oscila entre Uno “1” e infinito, dependiendo de la evaluación de la condición, cuyos argumentos en los casos de repetición, al menos dos veces, deberán modificarse dentro del bucle, pues de no ser así el número de repeticiones será infinito y nos encontraremos en un bucle sin salida el cual ocasionará un error al momento de ejecutar el programa.

Condición

SI

Instrucción 1 Instrucción N Incrementador

NO

PSEUDOCODIGO – ESTRUCTURAS

 ESTRUCTURA SI SIMPLE

SI Condición ENTONCES

Sentencia(s) Verdadera(s) FIN SI

 ESTRUCTURA SI DOBLE

SI Condición ENTONCES

Sentencia(s) Verdadera(s)

(32)

SI NO

Sentencia(s) Falsa(s) FIN SI

 ESTRUCTURA SI MÚLTIPLES

SI Condición ENTONCES

Sentencia(s) Verdadera(s) SI NO

SI Condición ENTONCES

Sentencia(s) Verdadera(s)

SI NO

SI Condición ENTONCES

Sentencia(s) Verdadera(s)

SI NO

Sentencia(s) Falsa(s)

FIN SI

FIN SI

FIN SI

 ESTRUCTURA SEGÚN (CASOS)

SEGÚN Condición HACER Valor 1: Sentencia(s) Valor 2: Sentencia(s) Valor 3: Sentencia(s) Valor N: Sentencia(s)

(33)

SI NO

Sentencia(s) FIN SEGÚN

 ESTRUCTURA PARA

PARA VariableÅExpresión (Valor Inicial) Hasta Expresión (Valor Final) HACER

Sentencia(s) FIN PARA

 ESTRUCTURA MIENTRAS

MIENTRAS Condición HACER Sentencia(s)

FIN MIENTRAS

 ESTRUCTURA HASTA REPETIR

Sentencia(s) HASTA (Condición)

(34)

NASSI – SCHNEIDERMAN ESTRUCTURAS

 ESTRUCTURA SECUENCIAL

Acción 1 Acción 2 Acción 3

. . . Acción n

 SI SIMPLE

Acción 1 Acción 2

. . . Acción n

CONDICIÓN

SI NO

(35)

 ESTRUCTURA SI DOBLE

Acción 1 Acción 1

Acción 2 Acción 2

. . . .

Acción n Acción n

CONDICIÓN

SI NO

 ESTRUCTURA SI MÚLTIPLES

Acción 1

Acción 2 Acción 1 Acción 1 . Acción 2 Acción 2

. . . . . . Acción n |Acción n |Acción n

CONDICIÓN SI

CONDICIÓN

SI NO

 ESTRUCTURA SEGÚN (CASOS)

Condición

Caso 1 Caso 2 Caso 3 Caso 4

Acción (es) 1 Acción (es) 2 Acción (es) 3 Acción (es) 4

(36)

 ESTRUCTURA PARA

Desde condición inicial hasta condición final [incremento / decremento]

Acción (es)

 ESTRUCTURA MIENTRAS

Mientras condición Acción 1

Acción n

 ESTRUCTURA HASTA

Acción 1

Acción n Hasta condición

(37)

EJEMPLOS – DIAGRAMAS DE FLUJO – PSEUDOCODIGOS

1. Algoritmo que permita calcular el área de un triángulo, para ello necesita ingresar por teclado la base y altura. AT = (B * H) / 2

INICIO

Entrada B, H

Proceso AT= (B*H) / 2

Escribir AT

B=Base del Triángulo H=Altura del Triángulo AT=Área del Triángulo Inicio

Escribir (‘Ingrese la Base’) Leer (B)

Escribir (‘Ingrese la Altura’) Leer (H)

AT= (B*H)/2

Escribir (‘El Área del Triángulo es =>’, AT) Fin

FIN

2. Algoritmo que permita calcular la raíz cúbica de un Número ingresado por teclado.

INICIO

Leer N

Proceso RC= N ^ (1/ 3)

Escribir RC

N=Número RC=Raíz Cúbica Inicio

Escribir (‘Ingrese el Número’) Leer (N)

RC=N^(1/3)

Escribir (‘La Raíz Cúbica de: ’, N, ‘ es =>’, RC) Fin

FIN

(38)

3. Algoritmo que permite determinar si un Alumno esta aprobado en un determinado curso, para ello debe de ingresar el Nombre del alumno, el Curso y su respectiva Nota.

Leer N, C, Nom

N>=10.5 SI

Escribir

“Felicitaciones”

“Aprobó el Curso” C

FIN INICIO

Nom=Nombre del Alumno C=Curso

N=Nota Inicio

Escribir (‘Ingrese su Nombre’) Leer (Nom)

Escribir (‘Ingrese el Curso’) Leer (C)

Escribir (‘Ingrese su Nota’) Leer (N)

SI N>=10.5 ENTONCES Escribir (‘Felicitaciones’)

Escribir (‘Aprobó el Curso’, C)

FIN SI

Fin

4. Algoritmo que permite calcular si una persona puede ingresar o no a un espectáculo de mayores

INICIO

Leer E

E>=18

E=Edad de la Persona Inicio

Escribir (‘Ingrese su Edad’) Leer (E)

SI E>=18 ENTONCES Escribir (‘Puede Ingresar’)

SI NO

Escribir (‘No Puede Ingresar’)

FIN SI

Fin

Escribir

“Puede Ingresar”

NO

Escribir

“No Puede Ingresar”

SI

(39)

5. Algoritmo que permita determinar si un número ingresado por teclado es Positivo, Negativo o Cero

INICIO

Leer N

N>0 Escribir

“Positivo”

NO

SI Escribir

“Negativo”

N<0

SI

FIN Escribir

“Cero”

NO

N=Número Inicio

Escribir (‘Ingrese el Número’) Leer (N)

SI N>0 ENTONCES Escribir (‘Positivo’)

SI NO

SI N<0 ENTONCES

Escribir (‘Negativo’)

SI NO

Escribir (‘Cero’)

FIN SI

FIN SI

Fin

(40)

6. Algoritmo que permita calcular la tabla de multiplicar del número 3

INICIO

Leer:

Num = 3 I = 1

Mul = Num * I

NO Num <= 12

I = I * 1

Escribir:

Mul SI

FIN

Referencias

Documento similar

¿Cómo se traduce la incorporación de ésta en la idea de museo?; ¿Es útil un museo si no puede concebirse como un proyecto cultural colectivo?; ¿Cómo puede ayudar el procomún

Volviendo a la jurisprudencia del Tribunal de Justicia, conviene recor- dar que, con el tiempo, este órgano se vio en la necesidad de determinar si los actos de los Estados

Este parón o bloqueo de las ventas españolas al resto de la Comunidad contrasta sin em- bargo con la evolución interior de ese mismo mercado en cuan- to a la demanda de hortalizas.

La Normativa de evaluación del rendimiento académico de los estudiantes y de revisión de calificaciones de la Universidad de Santiago de Compostela, aprobada por el Pleno or-

- Un curso formativo para los técnicos de laboratorio de la UPV sobre la prevención de los residuos en los laboratorios, que se llevará a cabo los días 23, 24, 25, 26 y 27

Gastos derivados de la recaudación de los derechos económicos de la entidad local o de sus organis- mos autónomos cuando aquélla se efectúe por otras enti- dades locales o

1. LAS GARANTÍAS CONSTITUCIONALES.—2. C) La reforma constitucional de 1994. D) Las tres etapas del amparo argentino. F) Las vías previas al amparo. H) La acción es judicial en

El contar con el financiamiento institucional a través de las cátedras ha significado para los grupos de profesores, el poder centrarse en estudios sobre áreas de interés