+ All Categories
Home > Documents > Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... ·...

Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... ·...

Date post: 18-Sep-2018
Category:
Upload: vannhu
View: 214 times
Download: 0 times
Share this document with a friend
48
INTRODUCCION Antes de iniciar el tema, es conveniente, sobre todo para aquellos que comienzan su instrucción informática, hacer un breve repaso de conceptos fundamentales que se han de tomar en cuenta cuando se desarrollan programas que se utilizarán en las computadoras. Los datos y la información se pueden introducir en la computadora por la entrada y a continuación se procesan para producir una salida (resultados). Los datos de entrada y los datos de salida pueden ser, realmente, cualquier cosa, texto, dibujos, o sonidos. ¿Qué es el software? Conjunto de programas escritos para una computadora. ¿Qué es el hardware? Componentes físicos que constituyen la computadora, junto con los dispositivos que realizan las tareas de entrada y salida ¿Qué es un programa? Conjunto de instrucciones que hacen funcionar a la computadora. Programa de Formación: Diseño, desarrollo e implementación de Software de procesos institucionales. Código: 496614 Versión: 102 Fase del proyecto: Análisis Algoritmos y programas Resultados de Aprendizaje: Identificar cada uno de los conceptos y principios que constituye la programación orientada a objetos para interpretar el diseño Competencia: Analizar los requerimientos para construir el sistema de información
Transcript
Page 1: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

INTRODUCCION

Antes de iniciar el tema, es conveniente, sobre todo para aquellos que comienzan su instrucción

informática, hacer un breve repaso de conceptos fundamentales que se han de tomar en cuenta

cuando se desarrollan programas que se utilizarán en las computadoras.

Los datos y la información se pueden introducir en la computadora por la entrada y a continuación se procesan para producir una salida (resultados).

Los datos de entrada y los datos de salida pueden ser, realmente, cualquier cosa, texto, dibujos, o sonidos.

¿Qué es el software?

Conjunto de programas escritos para una computadora.

¿Qué es el hardware?

Componentes físicos que constituyen la computadora, junto con los dispositivos que

realizan las tareas de entrada y salida

¿Qué es un programa?

Conjunto de instrucciones que hacen funcionar a la computadora.

Programa de Formación: Diseño, desarrollo e

implementación de Software de procesos institucionales.

Código: 496614

Versión: 102

Fase del proyecto: Análisis

Algoritmos y programas

Resultados de Aprendizaje: Identificar cada uno de los conceptos y principios que constituye la programación orientada a objetos para interpretar el diseño

Competencia: Analizar los requerimientos para construir el sistema de información

Page 2: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Organización física de la computadora

Concepto de algoritmo

Los seres humanos realizamos una serie de pasos, procedimientos o acciones que nos permiten

alcanzar un resultado o resolver un problema, esto se repite innumerables veces durante el día. En

realidad estamos aplicando un algoritmo para resolver un problema.

Definición de Algoritmo.- secuencia ordenada y cronológica de pasos que llevan a la solución de un problema o a la ejecución de una tarea (o actividad).

• El algoritmo debe tener las siguientes características:

Tener un principio

Ser simples, claros, precisos, exactos.

Tener un orden lógico.

Debe ser finito.

Tener un fin.

• La definición de un algoritmo debe describir tres partes:

Entrada.

Proceso.

Salida

La serie de pasos, procedimientos o acciones que nos permiten alcanzar un resultado o resolver un problema a través de algoritmos, los desarrollamos por medio de pseudocódigo.

Page 3: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

El pseudocódigo describe un algoritmo utilizando una mezcla de frases en lenguaje

común, instrucciones de programación y palabras clave que definen las estructuras básicas.

El objetivo del pseudocódigo es permitir que el programador se centre en los aspectos lógicos de la solución, evitando las reglas de sintaxis de los lenguajes de programación.

No siendo el pseudocódigo un lenguaje formal, los pseudocódigos varían de un

programador a otro, es decir, no hay un pseudocódigo estándar.

Diagramas de flujo

Un diagrama de flujo representa la esquematización gráfica de un algoritmo.

En realidad muestra gráficamente los pasos o procesos a seguir para alcanzar la solución de un problema.

Su correcta construcción es sumamente importante porque, a partir del mismo se escribe un programa en algún lenguaje de programación.

Si el diagrama de flujo está completo y correcto, el paso del mismo a un lenguaje de programación

es relativamente simple y directo.

A continuación, presentamos los símbolos que utilizaremos y una explicación de los mismos. Estos satisfacen las recomendaciones de la ISO y la ANSI.

Page 4: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Tipos de datos

Los datos a procesar por una computadora pueden clasificarse en:

• Simples

• Estructurados

Los datos simples se caracterizan porque ocupan sólo una casilla de memoria, por lo tanto una

variable simple hace referencia a un único valor a la vez. Dentro de este grupo de datos encontramos:

• Enteros

• Reales (flotantes)

• Caracteres

• Cadena de caracteres

• Booleanos

Los datos estructurados se caracterizan por el hecho de que con un nombre se hace referencia a un grupo de casillas de memoria.

Es decir, un dato estructurado tiene varios componentes. Cada uno de sus componentes puede ser

a su vez un dato simple. Dentro de este grupo de datos se encuentran:

• Arreglos

Page 5: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

• Cadena de caracteres

• Registros

Datos simples

Enteros.- son números que no contienen componentes fraccionarias y,

por lo tanto, no incluyen el punto decimal, pueden estar

precedidos del signo + o --. Por ejemplo:

465 -387 9 99 -1578 125550

Reales (flotantes).- son números que contienen una parte fraccionaria

y, por lo tanto, incluyen el punto decimal, pueden esta

precedidos del signo + o --. Por ejemplo:

125.87 -124.0 158000.75 -38.5879

Carácter.- contiene un solo carácter y va encerrado entre comillas

simples. Por ejemplo:

‘a’ ‘A’ ‘$’ ‘#’ ‘7’ ‘+’ ‘h’ ‘H’

Cadena de caracteres.- contiene un conjunto de caracteres alfabéticos, numéricos,

y especiales, que sirven para representar y manejar datos como: nombres,

descripciones de artículos,

direcciones, etc. Van encerrados entre comillas dobles, por

ejemplo:

“abc” “Carlos Jiménez” “83-15-24-65” “$8#2”

Booleanos.- toma los valores de verdadero (true) o falso (false), no

puede ser leído o escrito, sólo asignado, es útil para

plantear cierto tipo de condiciones en el manejo de las

estructuras lógicas de control.

Page 6: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Identificadores, constantes y variables

Identificadores.- son nombres que se usamos para referirnos a variables, constantes,

funciones o cualquier objeto definido por el usuario.

Un identificador se forma de acuerdo a ciertas reglas básicas:

» El primer carácter que forma un identificador debe ser una letra o el símbolo de subrayado (_).

» Los demás caracteres pueden ser letras, dígitos o símbolo de subrayado.

» La longitud del identificador depende del lenguaje de programación a utilizar.

Constantes

• Son datos que no cambian durante la ejecución de un programa. Existen tipos de constantes

como tipos de datos, por lo tanto, puede haber constantes enteras, reales (flotantes), de

carácter, de cadenas de caracteres, booleanas, etc.

Variables

• Es un identificador que puede cambiar su valor durante la ejecución de un programa.

• Se utiliza para representar un dato tipo entero, real (flotante), o una constante de carácter. Por ejemplo:

Variable i es de tipo entero

variable prom es de tipo real (flotante)

Variable opción es de tipo carácter

Operaciones aritméticas

Para poder realizar operaciones aritméticas necesitamos de operadores aritméticos.

Estos operadores nos permiten realizar operaciones aritméticas entre operandos: números, constantes o variables. El resultado de una operación aritmética es un número.

A continuación presentamos en una tabla los operadores aritméticos, la operación que puede

realizar y, un ejemplo de su uso y su resultado:

Page 7: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Al evaluar expresiones que contienen operadores aritméticos debemos respetar la jerarquía en el

orden de aplicación. Es decir, si tenemos en una expresión más de un operador, debemos aplicar primero el operador de mayor jerarquía, resolver esa operación y así sucesivamente.

Reglas para resolver una expresión aritmética:

Si una expresión contiene sub expresiones entre paréntesis, éstas se evalúan primero, respetando claro la jerarquía de los operadores aritméticos en esta sub expresión.

Si las sub expresiones se encuentran anidadas por paréntesis, primero se evalúan las sub

expresiones que se encuentran en el último nivel de anidamiento.

Los operadores aritméticos se aplican teniendo en cuenta la jerarquía y de izquierda a derecha.

Por ejemplo:

Dados los siguientes casos, resolver cada caso aplicando las reglas correspondientes:

Page 8: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Expresiones lógicas

Las expresiones lógicas o booleanas, están constituidas por números, constantes o variables y

operadores lógicos o relacionales. El valor que pueden tomar estas expresiones es de verdadero o

falso.

Se utilizan con frecuencia en las estructuras selectivas y en las estructuras repetitivas.

Operadores relacionales

Son operadores que permiten comparar dos operandos, los operandos pueden ser números, caracteres, constantes o variables.

Las constantes o variables, a su vez, pueden ser de tipo entero, real (flotante), carácter o cadena de caracteres.

El resultado de una expresión con operadores relacionales es verdadero o falso.

Page 9: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Operadores lógicos

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

Los operadores lógicos son de:

Conjunción (y).- relaciona dos operandos booleanos. Proporciona un valor verdadero (V), si los dos son verdaderos; en caso contrario da un resultado falso (F).

Disyunción (o).- relaciona dos operandos booleanos. Proporciona un valor verdadero (V), si uno de los dos es verdadero; en caso contrario da un resultado falso (F).

Negación (No).- este operador relaciona sólo un operando booleano y da como resultado un valor opuesto al que tenga el operando.

Por ejemplo:

Dados los siguientes casos, resolver cada caso aplicando las reglas correspondientes:

Page 10: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Estructura y diseño de un algoritmo

Existe una gran cantidad de problemas que requieren de un análisis profundo y de un pensamiento flexible y estructurado para la solución.

La idea es ofrecer un conjunto de técnicas y herramientas metodológicas que permitan flexibilizar y

estructurar el razonamiento utilizado en la solución de problemas, esto provocará finalmente la construcción de algoritmos eficientes.

Page 11: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

A continuación en la figura podemos observar las etapas que debemos seguir para la

solución de un problema

La secuenciación es una estructura de control que permite a la computadora ejecutar una acción,

después otra, luego la que sigue y así sucesivamente hasta la última.

Dichas acciones pueden consistir en operaciones primitivas elementales como declaraciones de variables, leer datos, imprimir datos o calcular alguna expresión.

Es conveniente etiquetar cada acción con números desde el uno en forma ascendente de uno en uno, para denotar el orden secuencial.

Por lo tanto los elementos básicos que integran la estructura de un algoritmo son:

1. Encabezado.- todo algoritmo debe tener un encabezado como identificación, el cual debe

empezar con la palabra Algoritmo seguida por una descripción del problema a resolver.

2. Inicio.- todo algoritmo debe empezar con la etiqueta 1, que marca el inicio del mismo.

3. Declaraciones.- después de marcar el inicio se debe hacer las declaraciones que se necesiten como: variables, constantes, tipos de datos, etc.

4. Leer, calcular e imprimir.- los siguientes pasos pueden consistir en acciones tales como: leer

datos, calcular algunas expresiones aritméticas e imprimir datos tantas veces como se

requiera y en el orden apropiado para resolver el problema en cuestión.

5. Fin del algoritmo.- el último paso del algoritmo consiste en incluir la indicación fin.

Ejemplo No 1 de algoritmos secuenciales

Calcular e imprimir el sueldo de un empleado, se pedirá la clave del empleado, las horas

trabajadas y el pago por hora trabajada.

Algoritmo Calcular el sueldo de un empleado

1. Inicio 5. Imprimir cve, sueldo

Page 12: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

2. Declaración de variables: 6. Fin

cve, ht: entero

pht, sueldo: real (flotante)

3. Leer cve, ht, pht

4. sueldo = ht * pht

Ejemplo No 2.- desarrollar un algoritmo que permita leer un número en radianes e

imprima su equivalencia en grados; así mismo, leer un número en grados e imprima su equivalencia en radianes.

Algoritmo Convierte radianes a grados y grados a radianes

1. Inicio

2. Declaración de variables:

PI = 3.145926536: real (flotante)

rad, grad, numrad, numgrad: real (flotante)

3. Leer rad, grad

4. numgrad = rad * (180 / PI)

5. numrad = grad * (PI / 180)

6. Imprimir numgrad, numrad

7. Fin

Ejemplo No 3.- desarrollar un algoritmo para calcular el promedio de un estudiante, se pedirá la

matricula del estudiante y cuatro calificaciones de los exámenes. Se imprimirá la matricula del

estudiante y el promedio.

Algoritmo calcular promedio de un estudiante

1. Inicio

2. Declaración de variables

matest: entero

cal1, cal2, cal3, cal4, calfin: real (flotante)

3. Leer matest, cal1, cal2, cal3, cal4

4. calfin = (cal1 + cal2 + cal3 + cal4) / 4

5. Imprimir matest, calfin

Page 13: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

6. Fin

Reglas para la construcción de diagramas de flujo

• Debemos recordar que un diagrama de flujo debe ilustrar gráficamente los pasos o

procesos a seguir para alcanzar la solución de un problema.

• Los símbolos colocados adecuadamente, permiten crear una estructura gráfica flexible que ilustra los pasos a seguir para alcanzar un resultado específico.

• El diagrama de flujo facilitará más tarde la escritura del programa en algún lenguaje de programación.

Reglas

1. Todo diagrama de flujo debe tener un inicio y un fin.

2. Las líneas utilizadas para indicar la dirección del flujo del diagrama deben ser rectas,

verticales y horizontales.

3. Todas las líneas utilizadas para indicar la dirección del flujo del diagrama deben estar

conectadas. La conexión puede ser a un símbolo que exprese lectura, proceso, decisión, impresión, conexión o fin de diagrama.

4. El diagrama de flujo debe ser construido de arriba hacia abajo (top-down) y de izquierda a

derecha (right to left).

5. La notación utilizada en el diagrama de flujo debe ser independiente del lenguaje de programación.

6. Es conveniente cuando realizamos una tarea compleja poner comentarios que expresen o ayuden a entender lo que hicimos.

7. Si el diagrama de flujo requiere más de una hoja para su construcción, debemos utilizar los

conectores adecuados y enumerar las páginas convenientemente.

8. No puede llegar más de una línea a un símbolo.

Diagrama de flujo del algoritmo, ejemplo 1:

Page 14: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Diagrama de flujo del algoritmo, ejemplo 2:

Diagrama de flujo del algoritmo, ejemplo 3:

ESTRUCTURA SELECTIVAS

Page 15: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Selección si-entonces

• La estructura selectiva lógica “si entonces” permite que el flujo siga por un camino

específico si se cumple una condición o un conjunto de condiciones.

• Si al evaluar la condición (o condiciones) el resultado es verdadero, entonces se

ejecuta (n) cierta (s) operación (es), luego continua con la secuencia normal del proceso.

• Se utiliza cuando alguna operación está condicionada para que se lleve a cabo,

pero no tiene una opción alterna.

Formato:

si condición entonces

operación (es)

{ Fin del condicional }

Donde:

si.- identifica la estructura selectiva

condición.- expresa la condición o conjunto de condiciones a evaluar

entonces.- indica el curso de acción a seguir si se cumple la condición.

operación.- expresa la operación o conjunto de operaciones.

fin del condicional.- indica el fin de la estructura de selección (si)

Funcionamiento:

Al llegar al si se evalúa la condición (es):

a). Si se cumple, se ejecuta (n) la (s) operación (es) del entonces y luego salta hasta el siguiente paso después del fin del condicional.

b). Si no se cumple, salta hasta después del fin del condicional, es decir no hace nada.

Diagrama de flujo:

Page 16: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Ejemplo 1: Dado como dato una calificación de un alumno en un examen, desarrollar un algoritmo

y diagrama de flujo, que imprima el mensaje de aprobado en caso de que la calificación sea mayor o igual a 70.

Algoritmo Alumno aprobado

1. Inicio

2. Declaración de variables

cal: flotante

3. Leer cal

4. si cal >=70 entonces

imprimir “Aprobado”

5. Fin del condicional paso 4

6. Fin

Page 17: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Ejemplo 2: Dado como dato el sueldo de un trabajador, desarrollar un algoritmo y

diagrama de flujo, que aplique un aumento del 15% si su sueldo es inferior a $1000. se imprimirá el nuevo sueldo del trabajador.

Algoritmo Aumento de sueldo de un trabajador

1. Inicio

2. Declaración de variables:

sue, aum, nsue: flotante

3. Leer sue

4. si sue < 1000 entonces

aum = sue * 0.15

nsue = sue + aum

imprimir nsue

5. Fin del condicional paso 4

6. Fin

Selección si entonces/sino

• La estructura selectiva si entonces/sino permite que el flujo se bifurque por dos ramas diferentes en el punto de la toma de decisión (es).

• Si al evaluar la condición (o condiciones) el resultado es verdadero, entonces sigue por un

camino específico y se ejecuta (n) cierta (as) operación (es). Por otra parte, si el resultado es falso entonces se sigue por otro camino y se ejecuta (n) otra (s) operación (es).

Page 18: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

• En ambos casos, luego de ejecutarse la (s) operación (es) indicada (s), se continúa

con la secuencia normal del proceso.

• Por la naturaleza de éstas, se debe ejecutar una o la otra, pero no ambas a la vez, es decir, son mutuamente excluyentes.

Formato:

si condición

entonces

hacer operación 1

sino

hacer operación 2

{ Fin del condicional }

Donde:

si.- identifica la estructura selectiva

condición.- expresa la condición o conjunto de condiciones a evaluar

entonces.- indica el curso de acción a seguir si se cumple la condición.

operación 1.- expresa la operación o conjunto de operaciones.

operación 2.- expresa la operación o conjunto de operaciones.

fin del condicional.- indica el fin de la estructura de selección (si)

Funcionamiento:

Al llegar al si se evalúa la condición (es):

a). Opción verdadera (entonces)

si se cumple, se ejecuta (n) la (s) operación (es) del entonces y luego salta hasta el siguiente paso después del fin del condicional.

b). Opción falsa (sino)

De lo contrario, salta hacia el sino, ejecuta la (s) operación (es), y después salta hasta el siguiente paso después del fin del condicional.

Page 19: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Ejemplo 1: Dado como dato una calificación de un alumno en un examen, desarrollar un algoritmo

y diagrama de flujo, que imprima el mensaje de aprobado en caso de que la calificación sea mayor

o igual a 70 o reprobado en caso contrario.

Algoritmo

1. Inicio 5. Fin

2. Declaración de variables

cal: flotante

3. Leer cal

4. si cal >=70

entonces

imprimir “Aprobado”

sino

imprimir “Reprobado”

4. Fin del condicional paso 4

Page 20: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Ejemplo 2: Dado como dato el sueldo de un trabajador, desarrollar un algoritmo y

diagrama de flujo, que aplique un aumento del 15% si su sueldo es inferior a $1000 y 12% en caso contrario. Se imprimirá el nuevo sueldo del trabajador.

Algoritmo

1. Inicio 6. Imprimir nsue

2. Declaración de variables: 7. fin

sue, nsue: flotante

3. Leer sue

4. si sue < 1000

entonces

nsue = sue * 1.15

sino

nsue = sue *1,12

5. Fin del condicional paso 4

Estructuras selectivas anidadas:

Encontramos numerosos casos en el desarrollo de la solución de problemas en el que luego de

tomar una decisión y marcar el camino correspondiente a seguir, es necesario tomar otra

decisión.. Se señala, luego de evaluar las condiciones, la rama correspondiente a seguir, y nuevamente podemos tener que tomar otra decisión.

El proceso puede repetirse numerosas veces. En este caso, para resolver el problema, estamos aplicando estructuras selectivas en cascada o anidadas.

Page 21: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

A continuación presentamos diferentes casos de anidamiento para la estructura

selectiva si:

n si condición1 entonces

n1 si condición2

entonces

hacer operación21

sino

hacer operación22

n2 fin del condicional del paso n1

n + 1 fin del condicional del paso n

Page 22: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

• Lenguaje algorítmico de la estructura selectiva anidada del diagrama de flujo

caso2:

n si condición1

entonces

n1 si condición2

entonces

hacer operación 21

sino

hacer operación 22

n2 fin del condicional del paso n1

sino

n3 si condición3 entonces

hacer operación 31

n4 fin del condicional del paso n3

n +1 fin del condicional del paso n

• Lenguaje algorítmico de la estructura selectiva anidada del diagrama de flujo caso3:

n si condición1

entonces

n1 si condición2 entonces

Page 23: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

hacer operación 21

n2 fin del condicional del paso n1

sino

n3 si condición3

entonces

hacer operación 31

sino

hacer operación 32

n4 fin del condicional del paso n3

n +1 fin del condicional del paso n

Ejemplo 1: desarrollar un algoritmo y diagrama de flujo el cual, dado un valor entero, determinar

si es cero, positivo o negativo.

Algoritmo Dado un valor entero determinar si es cero, positivo o negativo

1 inicio

2 Declaración de variables:

num: entero

3 Leer num

4. si num ==0

entonces

imprimir “cero”

sino

4.1 si num > 0

entonces

imprimir “positivo”

sino

imprimir “negativo”

4.2 fin del condicional paso 4.1

5 fin del condicional del paso 4

Page 24: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Estructura selectiva si múltiple

• La estructura selectiva si múltiple permite que el flujo del proceso se bifurque por varias

ramas en el punto de la toma de decisión (es), esto en función del valor que tome el

selector.

• Si el selector toma el valor 1 se ejecutará la acción 1, si toma el valor 2 se ejecutará la

acción 2, si toma el valor n se realizará la acción n, y si toma un valor distinto de los valores

comprendidos entre 1 y n, se continuará con el flujo normal del proceso realizándose la

acción n + 1.

Formato:

si selector igual

valor 1: hacer acción 1

valor 2: hacer acción 2

valor 3: hacer acción 3

valor n: hacer acción n

fin del condicional

hacer acción n + 1

Donde:

Page 25: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Selector.- variable o expresión a evaluarse, según la cual se tomará una de las

múltiples decisiones o alternativas.

Acción 1.- expresa la operación o conjunto de operaciones que se van a realizar si el selector toma el valor 1.

Acción 2.- expresa la operación o conjunto de operaciones que se van a realizar si el selector toma el valor 2.

Acción n.- expresa la operación o conjunto de operaciones que se van a realizar si

el selector toma el valor n.

Acción n + 1.- expresa la operación que se va a realizar cuando se continúe con el flujo normal del proceso.

• La estructura selectiva si múltiple es muy flexible, lo que permite aplicarse de diferentes formas. Por ejemplo observemos el siguiente formato:

si selector igual

valor 1,2: hacer acción 1

valor 3,4,5: hacer acción 2

de otra forma : hacer acción 3

fin del condicional

hacer acción x

Page 26: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Por ejemplo: Desarrollar un algoritmo y diagrama de flujo tal que dado como datos la categoría y

el sueldo de un trabajador, calcule el aumento correspondiente teniendo en cuenta la siguiente tabla. Se imprimirá la categoría del trabajador y su nuevo sueldo.

Algoritmo:

1. Inicio Dado la categoría y el sueldo de un trabajador calcular el aumento

2. Declaración de variables:

cate: entero

sue, nsue: flotante

3. Leer cate, sue

4. si cate igual

1: nsue = sue * 1015

2: nsue = sue * 1010

3: nsue = sue * 1.08

Page 27: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

4: nsue = sue * 1.07

5. Fin de la condición del paso 2

6. imprimir cate, sue

7. Fin

ESTRUCTURAS REPETITIVAS

Estructura repetitiva repetir (for)

• La estructura repetir conocida comúnmente como for, es la estructura algorítmica

adecuada para realizar un ciclo que se ejecutará un número definido de veces.

• Este tipo de estructura está presente en todos los lenguajes de programación, ya sean

estructurados u orientados a objetos. Por ejemplo cuando necesitamos calcular la nómina total de la empresa, tenemos que sumar los sueldos de los n empleados de l a misma.

• Cuando necesitamos obtener el promedio de calificaciones de un curso, debemos sumar

las n calificaciones de los alumnos y dividir esa suma entre n. Es decir, sabemos de antemano cuántas veces tenemos que repetir una determinada operación, acción o tarea.

• El número de repeticiones no depende de las proposiciones dentro del ciclo, el número de

veces se obtiene del planteamiento del problema o de una lectura que indica que el

número de iteraciones se debe realizar para n ocurrencias.

• Dicho de otra forma el ciclo, es controlado por un contador que tiene que definirse con un

valor inicial, un valor final y un incremento, esto significa que debe conocerse de antemano el número de veces que se debe repetir el ciclo.

Page 28: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

• Donde:

V.- variable de control del ciclo.

VI.- valor inicial.

VF.- valor final.

ID.- incremento o decremento, según sea la estructura ascendente o descendente.

• Funcionamiento:

V (contador del ciclo, generalmente representado por las variables i, j, k) toma un valor

inicial y se compara con VF (valor final). El ciclo se ejecuta mientras V es menor, menor o igual,

mayor, mayor o igual al valor de VF, el valor de V se incrementa o decrementa en cada iteración. Cuando V supera el valor de VF entonces el ciclo se detiene

Ejemplo 1: desarrollar un algoritmo y diagrama de flujo tal que dado como datos 10 números

enteros, obtenga la suma de los 10 números enteros. Se mostrará la suma de los 10 números

enteros.

1. inicio Dado 10 números enteros obtener la suma

Page 29: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

2. declaración de variables:

i, num, suma = 0: entero

3. i = 1

4. repetir con i desde 1 hasta 10

leer num

suma = suma + num

i = i + 1

5. fin del ciclo del paso 3

6. imprimir suma

7. fin

Ejemplo 2: desarrollar un algoritmo y diagrama de flujo tal que dado como datos n números

enteros, obtenga la suma de los n números enteros. Se mostrará la suma de los n números enteros.

1. inicio Dado n números enteros obtener la suma

2. declaración de variables:

i, num, n, suma = 0: entero

3. leer n

4. i = 1

5. repetir con i desde 1 hasta n

leer num

suma = suma + num

Page 30: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

i = i + 1

6. fin del ciclo del paso 3

7. imprimir suma

8. fin

Estructura repetitiva mientras (while)

• La estructura algorítmica mientras comúnmente conocida como while, es la estructura

adecuada para utilizar en un ciclo cuando no sabemos el número de veces que éste se ha de repetir.

• Dicho número depende de las proposiciones dentro del ciclo.

• Esta estructura permite que se repita una acción o un conjunto de acciones, en tanto cierta condición se mantenga verdadera.

• La estructura while evalúa primero la condición, si se cumple se ejecuta una acción o

conjunto de acciones; si no se cumple, no entra al ciclo. Por lo tanto esta estructura se repite cero o más veces.

Formato:

Hacer PI = proposición inicial

Mientras PI es verdadera repetir

proceso

Page 31: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Hacer PI = modificación de PI

{ Fin del ciclo }

Donde:

PI.- proposición inicial, si el valor de PI es falso, entonces el ciclo no se ejecuta.

Ejemplo1: Desarrollar un algoritmo y diagrama de flujo que lea n números positivos, determine y

muestre el promedio de los n números positivos.

Algoritmo: Dado n números positivos obtenga el promedio

1. inicio 6. prom = suma / n

2. declaración de variables: 7. imprimir prom

i, n: enteros 8. fin

num, prom, suma =0: flotantes

2. leer n

3. i = 1

4. mientras i <= n

leer num

suma = suma + num

i = i + 1

5. fin del ciclo del paso 4

Page 32: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Ejemplo2: Desarrollar un algoritmo y diagrama de flujo para obtener la suma de los gastos que

hicimos en nuestro último viaje, pero no sabemos exactamente cuántos fueron, deberá mostrar la suma total de los gastos.

Algoritmo: Obtener la suma de los gastos del viaje

1. inicio

2. declaración de variables:

gasto, sumgas = 0: flotante

3. leer gasto

4. mientras gasto < > -1 repetir

sumgas = sumgas + gasto

leer gasto

5. fin del ciclo del paso 4

6. imprimir sumgas

7. fin

Page 33: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Estructura repetitiva hacer mientras (do/while)

• La estructura algorítmica hacer mientras comúnmente conocida como do/while, es una

estructura de control que permite hacer una repetición en un intervalo de cero a n veces,

esto se debe a que la condición de control del ciclo se coloca al principio de la estructura y se entra al ciclo mientras la condición sea verdadera.

• Primero se ejecuta y luego se evalúa la condición, si se cumple se regresa al ciclo, si no,

termina el ciclo. Por lo tanto se ejecutará una o más veces.

Formato:

Hacer PI = proposición inicial

Hacer

proceso

Hacer PI = modificación de PI

Mientras (condición PI)

{ Fin del ciclo }

Page 34: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Donde:

PI.- proposición inicial, si el valor de PI es falso, entonces el ciclo no se ejecuta.

Ejemplo 1: Desarrollar un algoritmo y diagrama de flujo el cual, obtenga el promedio de n números enteros, mostrar el promedio de los n números.

Algoritmo Obtener el promedio de n números enteros

1. inicio 6. fin del ciclo del paso 5

2. declaración de variables: 7. prom = suma / n

i, n: enteros 8. imprimir prom

num, suma = 0, prom: flotantes 9. fin

3. leer n

4. i = 1

5. hacer

leer num

suma = suma + num

i = i + 1 mientras (i < = n)

Page 35: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Ejemplo 2: Desarrollar un algoritmo y diagrama de flujo el cual, para n números enteros positivos mostrar los pares.

Algoritmo Para n números enteros positivos mostrar los pares

1. inicio

2. declaración de variables:

i, n: entero

3. leer n

4. i = 2

5. hacer

imprimir i

i = i + 2

mientras (i < = n)

6. fin del ciclo del paso 5

7. fin

Page 36: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

DATOS ARREGLOS Y MATRICES

Arreglos

El arreglo es un tipo de dato estructurado formado por un conjunto de elementos de un mismo tipo

de datos.

En las unidades anteriores trabajamos con tipos de datos enteros, flotantes, cadenas, etc., los cuales

son considerados como datos de tipo simple, puesto que una variable que se define con alguno de

estos tipos sólo puede almacenar un valor a la vez, es decir, existe una relación de uno a uno entre

la variable y el número de elementos (valores) que es capaz de almacenar.

En cambio un dato de tipo estructurado como el arreglo, puede almacenar a más de un elemento

(valor) a la vez, con la condición de que todos los elementos deben ser del mismo tipo de dato, es decir, que se puede tener un arreglo de datos enteros, flotantes, etc.

Los arreglos se clasifican de acuerdo con el número de dimensiones que tienen. Así, se tienen los

arreglos unidimensionales (una dimensión), los bidimensionales (dos dimensiones) y los multidimensionales (de más de dos dimensiones), etc.

Definición de arreglo

Un arreglo se define como una colección finita, homogénea y ordenada de elementos:

Finita.- todo arreglo tiene un límite, es decir se sabe determinar cuál será el número máximo de elementos que podrán formar parte del arreglo.

Homogénea.- todos los elementos de un arreglo son del mismo tipo.

Ordenada.- se puede determinar cuál será el primer elemento, el segundo, el tercero, … , y el n-

ésimo elemento.

Un arreglo puede representarse gráficamente como se muestra a continuación:

Page 37: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Arreglos unidimensionales

Un arreglo unidimensional, está formado por un conjunto de elementos de un mismo tipo de datos

que se almacenan bajo un mismo nombre y se diferencian por la posición (índice) que tiene cada

elemento dentro del arreglo de datos. Por ejemplo: tenemos el número de unidades producidas por

un obrero en cada uno de los días del mes. Para almacenarlos y manejarlos definimos un arreglo de

una dimensión de 30 elementos, como se muestra a continuación:

El cual define un arreglo llamado producción con 30 casillas o lugares para almacenar los datos de

30 días.

Declaración de arreglo unidimensional

Cuando se declara un arreglo, es necesario hacerlo como una variable:

Nombre Variable: Arreglo [tamaño] Tipo de dato

Donde:

Page 38: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Nombre Variable.- Nombre de identificación de la variable.

Arreglo.- Palabra reservada que indica que la variable es un arreglo.

Tamaño.- Número entero que indica la cantidad de elementos que

tendrá el arreglo.

Tipo.- Tipo de dato que tendrá el conjunto de elementos del arreglo que se está definiendo, puede ser entero, real, carácter, etc.

Si recordamos el ejemplo anterior, la forma de declararlo es:

Producción: Arreglo [30] entero

Producción es el nombre de la variable.

Es un arreglo que contiene 30 elementos (de 1 a 30).

Cada elemento del arreglo será un dato de tipo entero.

Manejo de los elementos de un arreglo

Cada elemento individual de un arreglo se relaciona con el nombre de la variable y un número

(índice) que indica la posición la posición que ocupa el elemento dentro del arreglo. Dicho número

se pone entre [ ] y se le llama subíndice. De acuerdo con el ejemplo anterior:

El elemento 1 se relaciona con Producción[1]

El elemento 2 se relaciona con Producción[2]

• • •

El elemento 30 se relaciona con Producción[30]

El subíndice puede ser una constante numérica entera como 1, 2, 3,…, 30, una variable de tipo

entero, como: Producción [ i ], o bien, una expresión algebraica que de un resultado de tipo entero como:

Producción [ i + 3 ]

Producción [ (i * 4) – j ]

Como toda variable, una de tipo arreglo puede usarse para leer datos, asignarle valores mediante expresiones aritméticas, imprimir su contenido, formar parte de expresiones lógicas, etc.

Lectura

El proceso de lectura de un arreglo consiste en leer y asignar un valor a cada uno de sus elementos.

Consideremos de nuevo nuestro ejemplo

Una forma podría ser de la siguiente manera:

Page 39: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Leer Producción[1],

Leer Produccion[2],

• • •

Leer Producción[30]

De esta forma no resultaría práctico, por lo tanto se usará un ciclo para leer todos los

elementos del arreglo:

i = 1

repetir con i desde 1 hasta 30

leer Producción[i]

i = i + 1

fin del ciclo

Escritura

El caso de escritura es similar al de lectura. Se debe escribir el valor de cada uno de los componentes, por ejemplo, considerando nuestro ejemplo:

i = 1

repetir con i desde 1 hasta 30

imprimir Producción[i]

i = i + 1

fin del ciclo

Ejemplo1: Desarrollar un algoritmo y diagrama de flujo que reciba como entrada un arreglo unidimensional de n valores de tipo entero y muestre el arreglo unidimensional:

Algoritmo Arreglo de n elementos enteros mostrarlos

1. inicio 7. i = 1

2. declaración de variables: 8. repetir con i desde 1 hasta n

i, n: entero imprimir arr[i]

arr: arreglo[n] entero i = i + 1

3. leer n 9. fin del ciclo del paso 8

4. i = 1 10. fin

5. repetir con i desde 1 hasta n

Page 40: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

leer arr[i]

i = i +1

6. fin del ciclo del paso 5

Ejemplo 2: Desarrollar un algoritmo y diagrama de flujo que reciba como entrada un arreglo

unidimensional que corresponde a los sueldos de un grupo de 70 empleados de una empresa y

necesitamos saber cuántos de estos empleados tienen un sueldo superior al promedio del grupo. Mostrar el total de empleados que tiene un sueldo superior al promedio del grupo.

Algoritmo

1. inicio

2. declaración de variables:

i, conta = 0: entero

prom, acsue = 0: flotante

sue: Arreglo[70] flotante

3. i = 1

4. repetir con i desde 1 hasta 70 10. imprimir conta

leer sue[i] 11. fin

acsue = acsue + sue[i]

Page 41: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

i = i + 1

5. fin del ciclo del paso 4

6. prom = acsue / 70

7. i = 1

8. repetir con i desde 1 hasta 70

8.1 si sue[i] > prom entonces

conta = conta + 1

8.2 fin del condicional del paso 8.1

i = i + 1

9. fin del ciclo del paso 8

Ejemplo 3: Desarrolla un algoritmo y diagrama de flujo que reciba como entrada dos arreglos

unidimensionales cada uno con 20 números enteros, calcular la suma uno a uno de los elementos de los dos arreglos y almacenar el resultado en un tercer arreglo. Mostrar al final los tres arreglos.

Algoritmo

1. inicio

2. declaración de variables:

a, b, c: Arreglo[20] entero

i: entero

3. i = 1

4. repetir con i desde 1 hasta 20

Page 42: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

leer a[i]

leer b[i]

c[i] = a[i] + b[i]

i = i + 1

5. fin del ciclo del paso 4

6. i = 1

7. repetir con i desde 1 hasta 20

imprimir a[i], b[i], c[i]

i = i +1

8. fin del ciclo del paso 7

9. fin

Arreglos multidimensionales

Los arreglos presentados en el tema anterior reciben el nombre de arreglos unidimensionales o lineales, debido a que cualquier elemento es referenciado por un único índice.

También existe en la mayoría de los lenguajes de programación una estructura de arreglos

multidimensionales. El número de dimensiones (índices) que se deben utilizar en un arreglo

depende del problema que debemos resolver.

En este tema analizaremos los arreglos bidimensionales (caso especial de los multidimensionales) por ser los más utilizados.

Arreglos bidimensionales

Page 43: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

El arreglo bidimensional o de dos dimensiones, está formado por un conjunto de

elementos de un mismo tipo de datos que se almacenan bajo un mismo nombre y que

al igual que en el unidimensional, se diferencian por la posición que tiene cada elemento

dentro del arreglo de datos, con la aclaración de que la disposición de los elementos es

en forma rectangular o cuadrada, donde la primera dimensión está dada por los renglones y la segunda por las columnas.

Un arreglo de este tipo, también conocido como matriz, es del orden M x N, donde M es el número de renglones y N el número de columnas, es decir, en forma de tabla.

Un elemento [i, j] estará en el renglón i y en la columna j. internamente en memoria se

reservan M x N posiciones consecutivas para almacenar todos los elementos del arreglo.

Representación de un arreglo bidimensional:

Tal que: 1 < = i < = M

1 < = j < = N

Declaración de arreglos bidimensionales

Al declarar un arreglo es necesario hacerlo como una variable, por la cual en la parte de declaraciones de variables se utiliza el siguiente formato:

NombreArreglo: Arreglo [TamañoRenglones, TamañoColumnas] Tipo de dato

Donde:

NombreArreglo.- nombre de identificación de la variable.

Arreglo.- palabra reservada que indica que la variable es un arreglo.

TamañoRenglones.- indica el número de renglones que tendrá el arreglo.

TamañoColumnas.- indica el número de columnas que tendrá el arreglo

Tipo de dato.- es el tipo de dato que tiene el conjunto de elementos del arreglo que se está definiendo; puede ser entero, real, etc.

Page 44: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Por ejemplo, si aplicamos los conceptos del formato para definir la matriz de orden 4 x

5 de números enteros, tenemos:

Matriz: Arreglo[4, 5] entero

1. Matriz es el nombre de la variable.

2. Es un arreglo que contiene a renglones y 5 columnas (20 elementos).

3. Cada elemento del arreglo es un dato de tipo entero.

Manejo de los elementos de una matriz

Para relacionar cada elemento individual de una matriz se usan dos subíndices; el primero indica el renglón y el segundo la columna, como sigue:

Matriz[Renglón, Columna]

donde:

Renglón.- indica el número de renglón y

Columna.- indica el número de columna que ocupa el elemento relacionado.

Los subíndices pueden ser constantes, variables o expresiones de tipo entero.

Como toda variable, una de tipo matriz puede usarse para leer datos, asignarle valores mediante

expresiones aritméticas, imprimir su contenido, formar parte de expresiones lógicas, etc. Por ejemplo:

Matriz[1, 1] = 20

Leer Matriz[R, C]

Leer Matriz[3, 4]

Matriz[1, 2] = Matriz[1, 2] + Matriz[2, 3]

Imprimir Matriz[1, 2]

Lectura

Para realizar la lectura de una matriz los elementos deben referenciarse por medio de dos índices,

normalmente se usan dos ciclos (anidados) para lograr la lectura de elementos consecutivos. Por ejemplo leer los elementos de una matriz de orden 5 x 3, los pasos a seguir son los siguientes:

i = 1

Repetir con i desde i hasta 5

Page 45: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

j = 1

Repetir con j desde 1 hasta 3

leer matriz[i, j]

j = j + 1

fin del ciclo interno

i = i + 1

fin del ciclo externo

Al variar los índices de i y j se lee un elemento de matriz, según la posición indicada por los índices i

y j

Para i = 1 y j = 1, se lee el elemento del renglón 1 y columna 1

i = 1 y j = 2, se lee el elemento del renglón 1 y columna 2

• • • •

i = 5 y j =3, se lee el elemento del renglón 5 y columna 3

Escritura

• El procedimiento para una escritura es similar al de una lectura

i = 1

Repetir con i desde 1 hasta 5

j = 1

Repetir con j desde 1 hasta 3

Imprimir Matriz[i, j]

j = j +1

fin del ciclo interno

i = i + 1

fin del ciclo externo

Ejemplo1 1: Desarrollar un algoritmo y diagrama de flujo el cual, reciba como entrada un arreglo bidimensional de orden m x n con valores de tipo entero y muestre el arreglo bidimensional:

Algoritmo

1. inicio

2. declaración de variables:

i, j, m, n: entero

Page 46: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

mat: Arreglo[m, n] entero

3. leer m, n

4. i = 1

5. repetir con i desde 1 hasta m

j = 1

5.1 repetir con j desde 1 hasta n

leer mat[i, j]

j = j + 1

5.2 fin del ciclo del paso 5.1

i = i + 1

6. fin del ciclo del paso 5

7. i = 1

8. repetir con i desde 1 hasta m

j = 1

8.1 repetir con j desde 1 hasta n

imprimir mat[i, j]

j = j + 1

8.2 fin del ciclo del paso 8.1

i = i + 1

9. fin del ciclo del paso 8

10. fin

Page 47: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

Ejemplo 2: Desarrollar un algoritmo y diagrama de flujo el cual reciba como entrada un arreglo

bidimensional de orden m x n con valores de tipo entero, para calcular la suma de los elementos de

la diagonal principal. Mostrará el arreglo bidimensional y la suma de los elementos de la diagonal principal.

Algoritmo

1. inicio

2. Declaración de variables

i, j, m, n, sumdiag=o: entero

mat: Arreglo[m, n] entero

3. Leer m, n

4. i = 1

5. repetir con i desde 1 hasta m

j = 1

5.1 repetir con j desde 1 hasta n

leer mat[i, j]

5.1.1 si i == j entonces

sumdiag = sumdiag + mat[i, j]

5.1.2 fin del condicional 5.1.1

j = j + 1

5.2 fin del ciclo del paso 5.1

Page 48: Programa de Formación: Diseño, desarrollo e Código: 496614 Versión: 102 Algoritmos ... · 2016-03-27 · problema a través de algoritmos, ... Diagramas de flujo ... Los datos

i = i + 1

6. fin del ciclo del paso 5

7. i = 1

8. repetir con i desde 1 hasta m

j = 1

8.1 repetir con j desde 1 hasta n

imprimir mat[i, j]

j = j + 1

8.2 fin del ciclo del paso 8.1

i = i + 1

9. fin del ciclo del paso 8

10. imprimir sumdiag

11. fin


Recommended