Sei sulla pagina 1di 113

ALGORITMOS

Alberto Echeverry Arroyave


Ing. De Sistemas

Que es un Algoritmo
Un algoritmo es una secuencia de pasos

lgicos y ordenados con las cuales le


damos
solucin
a
un
problema
determinado.
Por ejemplo: En la vida diaria cada uno de
nosotros disea y realiza algoritmos para
solucionar los problemas cotidianos, es as
que al levantarnos de la cama ya tenemos
en la mente una serie de pasos que
debemos seguir para llegar al sitio de
estudio o al sitio de trabajo. Una vez en el
sitio de estudio, tenemos en nuestra
mente una serie de tareas que debemos
realizar en unos horarios ya definidos.

Caractersticas de los
Algoritmos
1. Un algoritmo debe ser preciso e

indicar el orden de realizacin de cada


paso.
2. Un algoritmo debe estar definido. Si
se sigue el algoritmo dos veces, se debe
obtener el mismo resultado cada vez.
3. Un algoritmo debe ser finito. Si se
sigue el algoritmo. Se debe terminar en
algn momento, o sea debe tener un
nmero finito de pasos.

Clasificacin de los
Algoritmos Segn Quien los
Ejecute
Algoritmos para s

er ejecutados por
Personas.
Algoritmos para

ser ejecutados p
or Computadoras.
Tipos de Datos

Algoritmos para ser


ejecutados por Personas
Para que un algoritmo sea ejecutado por una

persona, debe estar escrito de tal manera que


esta persona lo entienda claramente, algunas
de las normas que debe seguir la construccin
del algoritmo son las siguientes:
debe estar escrito en el idioma que comprende
la persona que realizar el algoritmo.
debe enumerar cada uno de los pasos a
realizar en un orden lgico.
debe
utilizar palabras
que comprenda
claramente la persona que realizar el
algoritmo.

Algoritmos para ser


ejecutados por Personas
Ejemplos:
Un cliente ejecuta un pedido a una fabrica.

La fabrica examina en su banco de datos


si el cliente esta activo( no es moroso con
sus deudas) entonces se acepta el pedido,
en caso contrario se rechaza.
1. Inicio
2. Leer el pedido
3. Examinar ficha del cliente
4. Si el cliente esta activo aceptar el
pedido, en caso contrario rechazar el
pedido.
5. terminar

Ejemplo
Un cliente llaga a una entidad bancaria

para realizar una consignacin, el cajero le


pide el nmero de la cuenta y el dinero a
consignar, verifica que la cuenta si existe,
si la cuenta es valida se hace la
consignacin (al saldo le aumenta el dinero
recibido) de lo contrario devuelve el dinero.
1. Inicio
2. pedir numero de la cuenta y el dinero
3. si la cuenta es valida siga en 4 de lo
contrario siga en 6
4. saldo= saldo +dinero
5 ir a 7
6 devolver el dinero
7 terminar

Ejemplo
Un cliente llaga a una entidad bancaria

para realizar una consignacin, el cajero


le pide el nmero de la cuenta y el dinero
a consignar, verifica que la cuenta si
existe, si la cuenta es valida se hace la
consignacin (al saldo le aumenta el
dinero recibido) de lo contrario devuelve
el dinero.
1. Inicio
2. pedir numero de la cuenta y el dinero
3. si la cuenta es valida siga en 4 de lo
contrario siga en 6
4. saldo= saldo +dinero
5 ir a 7
6 devolver el dinero
7 terminar

Realice los Siguientes


Ejercicios
1. un retiro de dinero por parte de un

cliente en una entidad bancaria


2. crear un algoritmo que describa
los pasos necesarios par ir a la
universidad a clase de 6 Am tenga
en cuenta que si llega 10 minutos
tarde no puede entrar al saln de
clase y si al llegar no trae el carnet
no puede entrar a la universidad.

Realice los Siguientes


Ejercicios
Disear algoritmos

que resuelvan los


posibles problemas
que se presentan
para:
1. ir al cine
2. Reparar un
pinchazo de una
bicicleta.
3. Hacer una llamada
a un compaero.

Regresar

Algoritmos para ser


ejecutados por
Los pasos para la solucin de un
Computadoras
utilizando

problema

como herramienta la computadora son :


1. Diseo del algoritmo que describa la
secuencia ordenada de pasos, que conducen a
la solucin de un problema dado(anlisis del
problema y desarrollo del algoritmo).
2. Expresar el algoritmo como un programa en
un lenguaje de programacin adecuado( fase
de codificacin). La actividad de expresar un
algoritmo en forma de programa se denomina
programacin.
3. Ejecucin y validacin de programa por la
computadora.

Regresar

Tipos de Datos
los tipos de datos a utilizar en nuestros algoritmos son:
1. numricos: estos tipos de datos se utilizan para
hacer clculos matemticos y pueden ser de dos tipos
as:
1. ENTERO: cuando el nmero no tiene parte decimal
(ejemplo: 4 , 5 , 7, 97).
2. REAL: cuando el nmero consta de una parte entera
y una parte decimal (ejemplo: 2.33 , 4.59 , 5.0 ).
2. CARACTER: contiene un solo smbolo y esta delimitado
por comillas sencillas y puede ser:
1. Caracteres alfanumricos ('A', 'B', , 'Z')
2. Caracteres numricos('1', '2', '0')
3. Caracteres especiales ('+', '-', '*', '/', ',' '.', '<' ,'>',
'$', .)

Tipos de Datos
3. CADENA(string): es una sucesin

de caracteres que se encuentran


delimitados por doble comilla. se
utilizan para guardar informacin
como el nombre de una persona, el
color preferido etc. (ejemplos: " len ",
"Maria", "azul", "rojo").se utilizan para
mostrar mensajes.
4. LOGICOS (booleanos): es aquel
dato que slo puede tomar uno de dos
valores: verdadero(true) o falso (false).

Partes de Un Algoritmo
INICIO Y FIN
Una de las caractersticas de los

algoritmos es que deben ser finitos. Se


debe indicar claramente donde inicia y
donde termina.
Ejemplo:

INICIO

FIN PROGRAMA

Partes de Un Algoritmo
DECLARACION DE VARIABLES
los datos son una parte muy importante

en un algoritmo, pues son ellos el punto


de partida y son ellos quienes sufren las
transformaciones
que
darn
los
resultados deseados. Por esta razn el
algoritmo debe guardar los datos en un
sitio donde los pueda leer y modificar
cada vez que lo requiera. los sitios
donde el algoritmo guarda los datos los
llamaremos ESPACIOS DE MEMORIA y el
tamao de estos dependen del Tipos de
Datos que se quiera guardar en ellos.

Partes de Un Algoritmo
DECLARACION DE VARIABLES
Adems si se tienen varios datos se
debe tener la posibilidad de
diferenciarlos de una manera que no se
presenten confusiones asignndoles un
Identificador Valido y nico a estos
espacios de memoria.
Ejemplo:
X, Y, X1, Y1, SUMA, CONTAR, MAYOR,
MENOR,
PROMEDIO, PORCENTAJE.

Partes de Un Algoritmo

DECLARACION DE VARIABLES

Un espacio de memoria se denomina

VARIABLE cuando su contenido puede variar


en el tiempo y de CONSTANTE cuando no se
permite que su contenido vari.
Lo primero que se hace en al algoritmo es
declarar las variables. Donde se separan los
espacios de memoria del tamao indicado
segn el tipo de dato que guardarn y
asignndoles un nombre o identificador
vlido, con el cual nos referiremos a la
informacin que se guarda en dicho espacio
de memoria.

Partes de Un Algoritmo

DECLARACION DE VARIABLES

para declarar las variables se har de la

siguiente forma:

INICIO
Tipo de Dato: Identificador,
Identificador

FIN PROGRAMA

Partes de Un Algoritmo
DECLARACION DE VARIABLES

Ejercicios:
hacer un algoritmo que declare una variable para

guardar el nmero de meses del ao y otra variable


para guardar el porcentaje de meses que tienen 30
o 31 das.
hacer un algoritmo que declare una variable para
guardar cuantas materias se han perdido en el
semestre y otra para guardar el porcentaje de
materias ganadas.
hacer un algoritmo que declare una variable para
guardar el promedio del semestre, otra para
guardar el nombre de un estudiante y otra para
guardar el nmero de notas perdidas.
hacer un algoritmo que declare una variable para
guardar el nombre de un deportista, otra para
guardar la distancia recorrida y otra para guardar la
cantidad de intentos.

Partes de Un Algoritmo
Entrada de Datos
cuando un algoritmo requiera que el usuario

ingrese datos, se utilizar la instruccin


LEER y entre parntesis la lista de variables
donde se guardarn los datos ingresados por
el usuario.

INICIO
Tipo de Dato: Identificador,
Identificador
Leer (Identificador1,
Identificador2)

Partes de Un Algoritmo
Entrada de Datos
Ejercicios:
hacer un algoritmo que lea el nombre de un
estudiante, la cantidad de materias perdidas y
el porcentaje de materias ganadas.
hacer un algoritmo que lea el nombre de un
estudiante, el promedio del semestre y el
nmero de notas perdidas.
hacer un algoritmo que lea el nombre de una
persona, la comida preferida y la cantidad de
dinero que posee.
hacer un algoritmo que lea el nombre de un
animal, la comida preferida y la cantidad de
patas que tiene.

Partes de Un Algoritmo
Salida de Datos

si el algoritmo requiere mostrar la


informacin que tiene guardada en
variables
(espacio de memoria) hacia el exterior
(para
el usuario final ), se utilizar la
instruccin MOSTRAR y entre parntesis
la
lista de variables donde se guardan los
datos
que se quieren mostrar.

Partes de Un Algoritmo
Salida de Datos

INICIO
Tipo de Dato: Identificador,
Identificador
Leer (Identificador1,
Identificador2)
Mostrar (Identificador1,
Identificador2, Identificador3)

Partes de Un Algoritmo
Salida de Datos

Ejemplo:

INICIO
Entero: N
Leer (N)
Mostrar (El Nmero que Digito
es:,N)

FIN PROGRAMA

Partes de Un Algoritmo
Salida de Datos

Ejercicios:

1. hacer un algoritmo que lea el nombre de una persona,


el nmero de horas que estudia en la semana y
muestre el porcentaje de tiempo que dedica a estudiar y
la cantidad de minutos que dedica a estudiar.
2. hacer un algoritmo que lea el nombre de un estudiante,
la cantidad de materias que cursa en el semestre, la
cantidad de materias perdidas y muestre el nombre y el
porcentaje de materias ganadas.
3. hacer un algoritmo que lea el nombre de una persona,
la comida preferida con su precio, la cantidad de dinero
que posee y muestre la cantidad de comidas que puede
comprar con el dinero que posee.
4. hacer un algoritmo que lea el nombre de un deportista,
la distancia recorrida, la cantidad de intentos y muestre

La Operacin de
Es el modo de copiar un valor especfico en
Asignacin

una variable o espacio de memoria. La


operacin de asignacin se representa con el
smbolo igual '=' La forma general de una
operacin de asignacin es:

INICIO
Tipo de Dato: Identificador,
Identificador
Leer (Identificador1,
Identificador2)
Variable = Valor
Mostrar (Identificador1,
Identificador2, Identificador3)

Asignacin en Una
Variable Numrica
en una variable numrica (declarada como

entero o real ) slo se podrn guardar datos


numricos y existe dos formas de hacerlo:
1.asignacin de un nmero (constante
numrica) a una variable numrica.
Asumamos que la variable A ha sido
declarada de tipo entero, si queremos
copiar el valor de 5 en ella lo haramos de la
siguiente manera.
A = 5
se copia el valor de 5 en la variable A.

Asignacin en Una
Variable Numrica
2. asignacin del resultado de una
expresin aritmtica a una variable
numrica. asumamos que las variable
A ha sido declarada de tipo entero y
queremos copiar en ella el resultado
de la expresin aritmtica 5*2 +1 se
hara de la siguiente manera.
A = 5* 2 +1

Asignacin en Una
Variable Numrica
Expresin Aritmtica

Una expresin es una combinacin de

constantes, variables, smbolos de


operacin, parntesis y nombres de
funciones especiales.
Operadores Aritmticos:

+-

Exponenciacin
div Divisin Entera
mod Modulo (El Residuo de la Divisin)

Asignacin en Una
Variable Numrica
Regla de Precedencia de los

Operadores Matemticos:
1.las operaciones que estn
encerradas entre parntesis se
evalan primero. Si existen
parntesis anidados( interiores unos
a otros). Se debe evaluar primero las
expresiones mas internas.

Asignacin en Una
Variable Numrica
2. Las operaciones aritmticas dentro
de una expresin suelen seguir el
siguiente orden de prioridad:
Exponenciacin

*,/
+,div , mod

Asignacin en Una
Variable Numrica
Ejemplos de Expresiones Aritmticas:

1+2+3=6
1 + (2 + 5) * 2 = 21
(4 * (2 + 1) ) mod 3 = 0
(4 * 5 + 4 ) / 2 + 4 = 16
2 ^ 2 *( ( 2 + 1 ) * 2 ) = 24
(2 + (6 * 2 - 10)*2) div 5 = 1
( 1 + 2 )* ( 2 + 3) + 1 = 16
1 + ( 2 * (3+2)) = 11

Asignacin en Una
Variable Numrica
Ejercicios:
1. hacer un algoritmo que lea dos nmeros

enteros A y B y muestre el doble de su suma.


2. hacer un algoritmo que lea dos nmeros
enteros A y B y muestre el resultado de evaluar
(A + B) *2 +10
3. hacer un algoritmo que lea el alto y el ancho de
un rectngulo y muestre su rea y su permetro.
4. hacer un algoritmo que lea el nombre de una
persona, el valor de la hora trabajada y el
nmero de horas que trabajo. se debe mostrar
el nombre y el pago de la persona
5. hacer un algoritmo que lea el nombre de un
articulo, el valor unitario, la cantidad a comprar
y muestre el nombre y el total a pagar.

Asignacin en Una
Variable tipo Cadena
Asumimos que la variable NOMBRE, se a

declarado como cadena (Carcter) en ella


copiaremos el nombre MARIA.
NOMBRE = MARIA
Expresiones de Cadena:
Hola + Mara = Hola Mara
Expresiones de Cadena:
A = Aviones
B = Colores
C = Comercial

Asignacin en Una
Variable tipo Cadena
A + B + C = Aviones Colores

Comercial
Los + A + C + son de + B = Los

Aviones Comerciales son de Colores


A + de + B = Aviones de Colores
A + C = Aviones Comerciales

Expresiones Lgicas
Una expresin lgica es una combinacin de

expresiones aritmticas, variables, constantes


lgicas, parntesis, operadores lgicos y
operadores relacionales.
Operadores Lgicos:

y (and) lo denotaremos por doble ampersan


"&&".
o (or) lo denotaremos por doble barras " | | ".
no (not) lo denotaremos como admiracin " ! ".

Expresiones Lgicas
Operadores Relacionales:
igualdad lo denotaremos con doble igual " == "
menor que, lo denotaremos por el smbolo "<"
mayor que , lo denotaremos por el smbolo ">"
menor o igual que, lo denotaremos con el
smbolo "<="
mayor o igual que, lo denotaremos con el
smbolo ">=".
diferente, lo denotaremos por el smbolo "!="

Expresiones Lgicas
Ejemplos con Operadores Lgicos y
Relacionales:
10 > 3 = verdadero
1 > 3 = falso
2 > 1 && 4 > 10 = falso
2 > 10 && 4 < 10 = falso
3 == 2 || 3 > 2 = verdadero
20 > 1 && 4 < 10 = verdadero
5 < 10 && 10 <= 20 = verdadero
2 > 1 | | 1 < 1 = verdadero

Asignacin Valores a
Variable Lgicas
Asumamos que la variable BANDERA ha

sido declarada de tipo lgico , si queremos


copiar en ella el resultado de la expresin
lgica 2 > 10 , lo haramos de la siguiente
manera:
BANDERA = 2 > 10
copiara en la variable BANDERA el valor de

"falso", pues 2 no es mayor que 10.

Asignacin Valores a
Variable Lgicas
1. hacer un algoritmo que lea el dato

N de tipo entero y muestre el


resultado de la siguiente expresin
lgica x < 3 && X < 20
2. hacer un algoritmo que lea los datos
enteros A , B y C y muestre el
resultado de la expresion lgica A *
C >= ( B - 10)

Instrucciones de
Decisin
Las instrucciones de
decisin son
necesarias cuando en
un algoritmo una o
muchas tareas se
deben hacer o no,
dependiendo de una
situacin en particular.
esta situacin nos
ayudar a decidir si
hacemos o no las
tareas indicadas.

Instrucciones de
Decisin: SI
INICIO
Instruccin 1
Si expresin lgica entonces
Instruccin11
Intruccin12
Instruccin13
Fin Si
InstruccinN

FIN PROGRAMA

Instrucciones de Decisin:
SI
Ejemplo:

INICIO
Real: N, Triple, Cuadrado
Leer (N)
Si N >= 100 Entonces
Triple = N * 3
Mostrar El Triple es, Triple
Fin Si
Si N < 100 Entonces
Cuadrado = N * N
Mostrar El Cuadrado es, Cuadrado
Fin Si
FIN PROGRAMA

Instrucciones de Decisin:
Ejercicios
SI

1. Realizar un algoritmo que reciba la hora


si es menor a 12 muestre el siguiente
mensaje : "hola buenos das".
2. Hacer un algoritmo que calcule la suma
de dos nmeros enteros. Si la suma es
mayor que 100 sacar un mensaje
comunicndolo.
3. Realizar un algoritmo que lea el nombre
y la edad de una persona y si es menor
de edad (edad menor o igual a 18 aos)
imprima el nombre y la cantidad de
meses vividos.

Instrucciones de Decisin:
SI
Ejercicios
4. Hacer un algoritmo que calcule el rea de
un tringulo y adems informe cual
longitud es la mayor la altura o la base.
5. Hacer un algoritmo que lea un nmero
entero y muestre el cuadrado del numero si
el numero es mayor a 10. el doble del
numero, si el numero es mayor a 20, la
mitad del numero si le numero es mayor a
50.
6. Hacer un algoritmo que lea el nombre, la
cantidad de horas trabajadas y el valor de
la hora. Que muestre el salario y el nombre
si el total a pagar es mayor a 1000.

Instrucciones de Decisin:
Ejercicios
SI

7. Hacer un algoritmo que lea un nmero


entero N, si N es par y mayor a 200
muestre el doble de N, si N es par y
menor a 200 muestre la mitad de N.
8. Hacer un algoritmo que lea un nmero
entero N, si N es par muestre el doble de
N, si N mayor a 200 muestre la mitad de
N.
9. Hacer un algoritmo que lea el nombre y
la edad de una persona, si es mayor de
edad muestre el nombre y los das
vividos, si es menor de edad muestre
slo el nombre.

Instrucciones de Decisin:
SI SI NO
INICIO
Instruccin 1
Si expresin lgica entonces
Instruccin11
Intruccin12
Instruccin13
Si No
Instruccin21
Intruccin22
Instruccin23
Fin Si
InstruccinN
FIN PROGRAMA

Instrucciones de Decisin:
SI SI NO
Ejemplo:

INICIO
Real: N, Triple, Cuadrado
Leer (N)
Si N >= 100 Entonces
Triple = N * 3
Mostrar El Triple es, Triple
Si No
Cuadrado = N * N
Mostrar El Cuadrado es, Cuadrado
Fin Si
FIN PROGRAMA

Instrucciones de Decisin:
SI

SI
NO

Ejercicios
1. Lea el nombre, la edad y el sexo (1= femenino, 2=
masculino) de una persona y si esta es de sexo
masculino y mayor de edad imprima el nombre, de lo
contrario imprima el nombre y edad de la persona.
2. Lea el nombre, la edad, el sexo (1= femenino, 2=
masculino) y el estado civil (1= soltero, 2 = casado, 3
= otro) de una persona e imprima el nombre y la edad
de la persona slo si esta es mujer menor de edad, de
lo contrario indique que estado civil tiene esa persona.
3. Lea dos nmeros X y Y e imprima ambos nmeros si
por lo menos uno de ellos es positivo.
4. Lea dos nmeros X y Y e imprima ambos nmeros
slo si son de diferente signo y distintos de cero.

Instrucciones de Decisin:
SI

SI
NO
Ejercicios
5. Lea dos nmeros, calcule el cociente de dividir el primero por
el segundo. Imprima el cociente. Pero recuerde que antes de
hacer la divisin debe evaluar que el divisor no sea igual a cero
(0). Por que en este caso debe imprimir "la divisin no es
posible".
6. Para un salario bruto hasta de $ 250.500 no hay retencin.
Para un salario bruto de $ 250.501 a $ 300.000 el porcentaje
de retencin es de 5% . para un salario bruto mayor a
$300.000 el porcentaje de retencin es del 8%. Imprimir el
nombre del empleado, el salario bruto, el valor de la retencin
y el salario neto( salario bruto menos la retencin). Se debe
leer el nombre el salario hora y las horas trabajadas.
7. Leer el nombre de un empleado, el salario bsico por hora y el
nmero de horas trabajadas durante una semana. Calcular el
salario neto, teniendo en cuenta que si el nmero de horas
trabajadas durante la semana es mayor a 48, esas horas de
mas se consideran horas extras y tienen un 25% de recargo.

Instrucciones de Decisin:
SI y SI SI NO Anidados
INICIO

Instruccin 1
Si expresin lgica entonces
Instruccin11
Si expresin lgica entonces
Si Expresin lgica entonces
Instruccin12
Si NO
Instruccin13
Fin Si
Si No
Si Expresin lgica entonces
Instruccin14
Fin Si
Fin Si
Fin Si
InstruccinN
FIN PROGRAMA

Instrucciones de Decisin:
SI SI NO
Ejercicios:

1. En el supermercado de cadena NVCH, se trabajan


varias lneas de productos, cada producto esta
etiquetado con un cdigo el supermercado desea
desarrollar un programa que le permita a sus clientes
consultar el valor de el producto antes de ser pasado
a la registradora, a continuacin entregamos la
informacin de los productos con los respectivos
precios para que el programador los tenga en cuenta
en el momento de desarrollar el programa.
Cdigo producto valor
1 Memorias USB 25000
2 Pantallas 280000
3. Discos Duros 320000

Instrucciones de Decisin:
SI SI NO
Ejercicios:
2. La empresa NVCH inversiones decidi dar unas
bonificaciones a su empleados, teniendo en
cuenta las siguientes condiciones:
Si las ventas en el mes son inferiores a
3.000.000 de pesos tendr una bonificacin de
el 0.5% sobre las ventas.
Si las ventas son superiores a 3.000.000 de
pesos pero menores a 5.000.000 de pesos se
aplicara una bonificacin de 2.5% sobre las
ventas.
Si las ventas son superiores a 5.000.000 de
pesos tendr una bonificacin de 5% sobre las
ventas y adems se mostrara un mensaje de
felicitaciones.

Instrucciones de Decisin:
SI SI NO
Ejercicios:
3. Un vendedor ofrece su producto de la
siguiente manera: Si le compran 10
productos o menos, el precio por
producto es de $20. Si le compran
ms de 10 artculos, el precio es de
$15 por artculo. Realice el
Pseudocodigo que con solo
proporcionarle la cantidad de artculos
d como resultado el precio y el total.

Instrucciones de Decisin:
SI SI NO
Ejercicios:
4. Se requiere un programa de calificaciones que
arroje el concepto correspondiente a la nota
numrica obtenida por el estudiante, teniendo
en cuenta la siguiente correspondencia:
De 0 a 1.9..................................... Deficiente
De 2 a 2.9..................................... Insuficiente
De 3 a 3.9...................................... Aceptable
De 4 a 4.5..................................... Sobresaliente
De 4.6 a 5..................................... Excelente

Instrucciones de Decisin:
SI SI NO
Ejercicios:
5. Se tienen los siguientes datos: nombre y

salario. Para el calculo del impuesto se


considera lo siguiente:
Salario
Salario <= 2000 No hay impuesto

Salario > 2000 y hasta 5000 el impuesto es


del 2% del excedente de 2000
Salario > 5000 el impuesto es del 5% del
excedente de 5000
Elaborar el pseudocodigo que imprima el
nombre, el impuesto y salario total.

Instruccin de Decisin
Multiple
INICIO

Tipo: Identificador1
Leer (Identificardor1)
Case Identificador1

= 1
Si expresin lgica entonces
Si Expresin lgica entonces
Instruccin12
Si NO
Instruccin13
Fin Si
Fin Si

= 2
Instruccin14
Fin Case
Instruccin15
FIN PROGRAMA

Instrucciones de
Repeticin
Las

instrucciones
de
repeticin
son
necesarias cuando en un algoritmo hay que
realizar una o muchas tareas varias veces,
las instrucciones de repeticin bsicas son: el
MIENTRAS y el PARA, cada una de las cuales
tiene su propia representacin y su propia
manera de controlar el nmero de veces que
se repetir el ciclo ( instrucciones internas ).
estas
caractersticas
hacen
que
una
instruccin de repeticin sea mas adecuado
que la otra en una situacin particular.

Estructura de Repeticin
Mientras (While)
La estructura repetitiva mientras es

aquella en que las instrucciones


internas (bucle ) se ejecutan
mientras se cumple una determinada
condicin.
La estructura es la siguiente:

Estructura de Repeticin
Mientras (While)
INICIO
Tipo: Identificador1
Leer (Identificardor1)
Instruccin1
Haga Mientras Expresin Lgica
Instruccin2
Instruccin3
Instruccin4
Fin Mientras
InstruccinN
FIN PROGRAMA

Estructura de Repeticin
Mientras (While)
Cuando se ejecuta la instruccin mientras.

La primera cosa que sucede es que se


evala la condicin (una expresin lgica).
Si la expresin es falsa, ninguna accin del
bucle ( parte interna) se ejecuta y el
programa
continua
en
la
siguiente
instruccin al bucle. Si la expresin es
verdadera, entonces se ejecuta el cuerpo
del bucle. Despus de lo cual se evala de
nuevo la expresin booleana.

Estructura de Repeticin
Mientras (While)
Este proceso se repite una y otra vez

mientras la expresin lgica (condicin) sea


verdadera. Dentro del cuerpo del bucle
debe existir una instruccin que modifique
la expresin de tal manera que en algn
momento haga que su valor sea falso. Es
decir que garantice la terminacin del ciclo.

Estructura de Repeticin
Mientras (While)
Para

controlar
el
nmero
de
repeticiones del ciclo se puede
hacer de dos maneras:

1)Utilizando una Variable Contador.


2)Utilizando una Variable Centinela.

Estructura de Repeticin
Mientras (While) Controlada
con una Variable Contador
INICIO
Entero: I
I=0
Haga Mientras I <= 10
Mostrar I
I = I + 1
Fin Mientras
FIN PROGRAMA

Estructura de Repeticin
Mientras (While) Controlada
con una Variable Contador
1. hacer un algoritmo que lea 5 datos enteros

dados por el usuario y muestre la suma de


los datos impares.
2. hacer un algoritmo que lea 5 datos dados por
el usuario y muestre el porcentaje de datos
impares.
3. hacer un algoritmo que lea un dato entero N,
y muestre el factorial de N (recuerde que el
factorial de N es: 1 * 2 * 3 *...*N).

Estructura de Repeticin
Mientras (While) Controlada
por una Variable Centinela

se utilizan cuando no sabemos cuantas veces se


debe repetir el ciclo. en este caso se utiliza una
variable que nos servir de centinela, para
indicarnos cuando terminar el ciclo.
INICIO
Entero: I
Leer I
Haga Mientras I > 0
Mostrar I
Leer I
Fin Mientras
FIN PROGRAMA

Estructura de Repeticin
Mientras (While) Controlada
por una Variable Centinela
1. hacer un algoritmo que muestre el

promedio de los datos que ingrese el


usuario, se termina cuando entre el dato
cero(0).
2. Hacer un algoritmo que muestre el salario
total a pagar de la compaa XYZ , el
salario mayor a pagar , el salario menor a
pagar y el nombre de l empleado que gana
el mayor salario y del empleado que gana
el menor salario; a dems el promedio de
salario s que paga la empresa.

Estructura de Repeticin
Mientras (While) Controlada
por una Variable Centinela

3. Hacer un algoritmo que reciba un


dato N . si el dato es par muestre la
sumatoria de N y si es impar muestre
el factorial de N. El algoritmo se
repite hasta que el usuario halla
indique que no desea ingresar ms
datos.
4. Leer y mostrar sucesivamente
nmeros. Hasta que aparezca un
numero comprendido entre 1 y 5.

Ejercicios Estructura de
Repeticin Mientras (While)
1. Calcular el promedio de las notas que entre

el usuario. Se recibir un valor centinela de


-99.
2. Hacer un algoritmo que diga cuantos
nmeros entre 1 y 100 son divisibles por 3.
3. Imprimir las 30 primeras potencias de 4, es
decir, 4 elevado a la 1, 4 elevado a la 2,
etctera.
4. Determinar el promedio de una lista
indefinida de nmeros positivos,
terminados con un nmero negativo.

Ejercicios Estructura de
Repeticin Mientras (While)
5. Se desea leer las calificaciones de una clase de
informtica y contar el numero total de aprobados
( 3 o mayor que 3).
6. Hacer un algoritmo para la siguiente serie de
fibonacci 1,2, 3,5,8,13. La serie termina segn
el nmero N suministrado por el usuario. Este
nmero N debe ser mayo a 20 y menor o igual a 30.
7. Se desea conocer una serie de datos de una
empresa con 50 empleados, decir cuantos
empleados ganan ms de 300000 pesos al mes,
cuantos ganan entre 200000 y 300000 pesos y
cuantos ganan menos de 100000.

Estructura de Repeticin Para


Permite que un grupo de instrucciones se repita
(For)

cero o mas veces, dependiendo del valor que


resulte al evaluar una expresin de tipo lgico.
INICIO

Para Expresin de Inicio, Expresin de


Fin, Expresin de Incremento
Instruccin 1
Instruccin 2
Instruccin N

Fin Para
FIN PROGRAMA

Estructura de Repeticin Para


(For)
Ejemplo:
hacer un algoritmo que lea 5 enteros dados por el
usuario
y muestre su suma.

INICIO
Entero N, I, SUMA = 0
Para I = 1, I < 6, I + 1
Leer (N)
SUMA = SUMA + N

Fin Para
Mostrar la
SUMA

Suma de

los Enteros es: ,

FIN PROGRAMA

Estructura de Repeticin Para


1. hacer un algoritmo que lea 5 datos dados por el
(For)
2.
3.

4.

5.

usuario y muestre la suma de los datos pares.


hacer un algoritmo que lea un dato entero N, y
muestre la sumatoria de 1 hasta N.
hacer un algoritmo que lea un nmero entero N
si el nmero es par muestre la sumatoria de 1
hasta N y si el numero es impar muestre el
factorial de N.
Imprimir las 30 primeras potencias de 4, es
decir, 4 elevado a la 1, 4 elevado a la 2,
etctera.
Hacer un algoritmo que muestre las tablas de
multiplicar del uno al diez, y cada tabla del uno
al diez.

Funciones
Una funcin es un subalgoritmo que

toma uno o ms valores llamados


argumentos o parmetros y produce
un valor llamado resultado (valor de la
funcin para los argumentos
o
parmetros dados).
La declaracin de una funcin requiere
una serie de pasos que la definen. Una
funcin tiene una construccin similar
a los algoritmos.

Sintaxis para Declarar


Funciones
Tipo de Dato: Nombre_Funcin (Lista
Parmetros)
< Acciones >
Retornar (Expresin)
Fin Funcin

Invocacin de las
Funciones
Nombre_Funcin

(Lista Parmetros)

Funciones
La lista de parmetros actuales debe
corresponder en tipo y cantidad con la lista de
parmetros (formales) definidos por la funcin.
Una llamada a la funcin implica los siguientes
pasos:
1.A cada parmetro formal se le asigna el valor
real de su correspondiente parmetro actual.
2.Se ejecuta el cuerpo de acciones de la funcin.
3.Se devuelve el valor de la funcin al nombre de
la funcin y se retorna al punto de llamada.

Ejemplos de Funciones
el siguiente algoritmo llama a la funcin

Sumatoria para calcular y mostrar


sumatoria de los nmeros del 1 al 5.

la

Inicio
Entero : N = 5
Mostrar la Sumatoria de 1 hasta 5 es:,
Sumatoria (N)
Fin

en la siguiente diapositiva se muestra el


funcionamiento de la suncin Sumatoria.

Ejemplos de Funciones
Entero: Sumatoria (entero :Limite)
Entero: I, Suma = 0
Para I = 1, I <= Limite, I + 1
Suma = Suma + I
Fin Para
Retornar (Suma)
Fin Funcion

Mas Ejemplos de
el siguiente algoritmo llama
Funciones

a la funcin
DIGITOMAYOR para determinar y mostrar el
dgito mayor de los nmeros del 131 al 136.

Inicio
Entero : Ini = 131, Fin = 136
Mostrar El digito mayor es:, DIGITO
MAYOR (Ini, Fin)
Fin

en la siguiente diapositiva se muestra el


funcionamiento de la suncin DIGITOMAYOR.

Mas Ejemplos de
Funciones
Entero: DIGITOMAYOR (entero : Inicio,
entero: Tope)
Entero: I, Mayor = 0
Para I = Inicio, I <= Tope, Inicio + 1
Si Inicio > Mayor
Mayor = Inicio
Fin Si
Fin Para
Retornar (Mayor)
Fin Funcion

Ejercicios de Funciones
1. Hacer un algoritmo que llama a la funcin

FACTORIAL para calcular y mostrar el


factorial de los nmeros del 1 al 5.
2. Hacer un algoritmo que llama a la
funcin SUMATORIA para calcular y
mostrar la sumatoria de 3 nmeros dados
por el usuario.
3. el siguiente algoritmo llama a la funcin
DIGITOMAYOR para determinar y mostrar
el dgito mayor de 5 nmeros que ingrese
el usuario.

Ejercicios de Funciones
4. Hacer un algoritmo que llame a la funcin

Salario_Pagar , para calcular el salario de


un empleado que gana $ 497000 y laboro
4 horas extras nocturnas con un recargo
del 25% para estas horas.
5. Hacer un algoritmo que lea cinco notas
por cada alumno, el nmero de alumnos
es N. Debe crear una funcin llamada
Nota_Final, que calcule la Nota Definitiva
de cada alumno.
6. Hacer una funcin que reciba un dato N y
devuelva la suma de los dgitos pares.

Procedimientos
Un procedimiento es un subalgoritmo

que toma uno o ms valores


llamados Parmetros, con los cuales
ejecuta tareas especficas.

Procedimientos
La

declaracin de un procedimiento
requiere una serie de pasos que la definen.
Un procedimiento tiene una construccin
similar a los algoritmos, por consiguiente
constar de una cabecera que comenzar
con el nombre del procedimiento y entre
parntesis una lista de parmetros del
procedimiento. A continuacin ir el
cuerpo del procedimiento, que ser una
serie de acciones o instrucciones que
conforman el cuerpo del procedimiento.

Sintaxis para Declarar


Procedimientos.
Nombre_Procedimiento (Lista Parmetros)
< Acciones >
Fin Procedimiento

Invocacin de los
Procedimientos
Nombre_Procedimiento
Parmetros)

(Lista

Procedimientos
La lista de parmetros actuales debe

corresponder en tipo y cantidad con la


lista de parmetros (formal) definidos
en el procedimiento.
Una llamada a un procedimiento
implica los siguientes pasos:
A cada parmetro formal se le asigna
el valor real de su correspondiente
parmetro actual.
Se ejecuta el cuerpo de acciones del
procedimiento.
Seregresa a la instruccin siguiente
del punto de llamada.

Ejemplos de
el siguiente algoritmo llama al procediminto
Procedimientos
SUMATORIA, para calcular y mostrar la
sumatoria de los nmeros del 1 al 5.

Inicio
Entero : I
Para I = 1, I <= 5, I + 1
SUMATORIA (I)
Fin Para
Fin

en la siguiente diapositiva se muestra el


funcionamiento del procedimiento
SUMATORIA..

Ejemplos de
Procedimientos
SUMATORIA (Entero: H)
Entero : K, Suma = 0
Para K = 1, K <= H, K + 1
Suma = Suma + 1
Fin Para
Mostrar (Suma)
Fin Procedimiento

Ejemplos de
El siguiente algoritmo llama al procedimiento
Procedimientos
SUMATORIA, para calcular y mostrar la
sumatoria de 3 nmeros dados por el usuario.

Inicio
Entero : I, N
Para I = 1, I <= 3, I + 1
Leer (N)
SUMATORIA (N)
Fin Para
Fin

en la siguiente diapositiva se muestra el


funcionamiento del procedimiento
SUMATORIA..

Ejemplos de
Procedimientos
SUMATORIA (Entero: H)
Entero : K, Suma = 0
Para K = 1, K <= H, I + 1
Suma = Suma + 1
Fin Para
Mostrar (Suma)
Fin Procedimiento

Ejercicios de
1. Un nio va a un parque de atracciones
Procedimientos
mecnicas y decide montar en varios
juegos, a dems pude repetir atraccin
mecnica (pagando). Debe hacer un
procedimiento que tome el costo de
disfrutar la atraccin y las veces que la
disfruto, y muestre la plata que gasto en
la atraccin mecnica.
2. Hacer un procedimiento que muestre el
valor total de cada articulo, teniendo
como base el precio unitario y la cantidad.
Como se trata de una caja rpida, el
nmero mximo de artculos que puede
comprar es 5.

Ejercicios de
3. Hacer un Procedimiento que realice y muestre
Procedimientos
la suma de dos nmeros siempre que sean
pares , que realice una multiplicacin si solo
uno de ellos es par y una resta si ambos son
impares.
4. Hacer un Procedimiento que realice el siguiente
calculo matemtico: 2 + (A / B) * (10 / B).

Vectores o Arreglos
Unidimensionales
Un arreglo es una coleccin de datos del

mismo tipo, que se almacenan en


posiciones consecutivas de memoria y
reciben un nombre comn. Para
referirse a un determinado elemento de
un arreglo se deber utilizar el nombre
del arreglo acompaado de un ndice el
cual especifica la posicin relativa en
que
se
encuentra
el
elemento.

Vectores o Arreglos
Unidimensionales
Los arreglos pueden ser:

Unidimensionales (vectores).

Bidimensionales (matrices, tablas).

Multidimensionales(tres dimensiones o
ms).

Vectores o Arreglos
Unidimensionales
Los pasos para la utilizacin de un vector son:
1. Declarar el vector: consiste en establecer el
nombre, el tamao y el tipo de los datos que
se van a almacenar en el arreglo ejemplo:
hay que diferenciar dos trminos :
tamao del vector (T): es el numero mximo
de elementos que puede contener el vector.
Numero de elementos (N): que indica cuantos
elementos hay almacenados en el arreglo en
determinado momento. Nota N<=T.
T = 10;
Real: notas[T]

Vectores o Arreglos
2. Llenar el vector con los datos: Se puede
Unidimensionales
hacer en el momento de la declaracin
asignando al vector los valores que
necesitamos almacenar. Ejemplo.
Real : Notas [10] = {2.3 , 3.5 , 4.2 , 3.3 ,
3.0 , 4.9 , 4.2 , 3.0 , 2.0 , 1.5 };
recorriendo el arreglo as:
para i = 1 hasta N
.......leer( notas[i] )
fin del para

Vectores o Arreglos
Unidimensionales
3. Manipular la informacin guardada

en el vector. Para esto es necesario


recorrer dicha estructura y se puede
hacer de la siguiente manera.
para i = 1 hasta N
......mostrar ( notas[i] )
fin del para

Vectores o Arreglos
Unidimensionales,
Sintaxis
A continuacin se dan dos formas para declarar un vector:
Inicio
Tipo de Dato: <Nombre del Vector> [Nro.
de Posiciones]
Fin
Inicio
Tipo de Dato: <Nombre Variable>
Leer (Nombre Variable)
Tipo de Dato: <Nombre del Vector>
[Nombre Variable]
Fin

Vectores o Arreglos
Unidimensionales,
Sintaxis
A continuacin se muestra la sintaxis para recorrer un
Vector:

Inicio
Tipo de Dato: <Nombre del Vector> [Nro.
de Posiciones]
Tipo de Dato: <Variable con la cual se
Recorrer el Vector>
Para
VRV
=
1,
VRV <= Nro .de
Posiciones / Nomonbre
Variable, <Incrementos>
Leer / Mostrar (Nombre del Vector
[VRV])

Vectores o Arreglos
Unidimensionales
Ejemplos
1. Crear un vector de tamao 10, e
implementar con el los siguientes pasos:
a) Crear un Procedimiento que Llene el
Vector con nmeros enteros.
b) Crear un Procedimiento que Muestre el
Contenido del Vector.
c) Crear una funcin que retorne la
sumatoria de los nmeros enteros
contenidos en el vector. Determinar si el
resultado de la sumatoria es un nmero
Par o Impar.

Vectores o Arreglos
Unidimensionales
Ejemplos
d) Crear una funcin que retorne el
dato mayor contenido en el vector.
e) Crear una funcin que retorne el
dato menor contenido en el vector.
f) Muestre el resultado de la
diferencia entre el numero mayor y
el numero menor que han retornado
las funciones anteriores.

Vectores o Arreglos
Unidimensionales
Ejemplos
1. Crear dos procedimientos as: Uno que
cargue un vector de N posiciones y el otro
que determine cuantas posiciones estn
llenas .
2. Continuando con el caso anterior crear un
procedimiento que cargue un nuevo vector
con las posiciones exactas, es decir, que el
tamao del vector concuerde con el nmero
de datos que almacena.
3. Crear una funcin que determine cuantas
veces en el vector Nmeros esta un dato
dado por el usuario.

Ejercicios de Vectores
4. Crear una Funcin que calcule el promedio

de los datos del vector Nmeros.


5. Crear una funcin que calcule y devuelva
la sumatoria de los datos que estn en las
posiciones impares del vector Nmeros.
6. Crear una funcin que retorne el
porcentaje de los nmeros pares del vector
Nmeros.
7. Crear un procedimiento que invierta el
vector y mostrarlo.

Ejercicios de Vectores
8. Crear un procedimiento que indique

cuantas veces esta repetido un dato


dentro del vector.
9. Crear un procedimiento que ordene el
siguiente vector de menor a mayor:
Vector {3,1,4,2}
10.Crear un a funcin que aada el dato
5 al vector anterior. (debe ajustar el
tamao al vector).
11.Crear una funcin que elimine el dato
3 al vector anterior (debe ajustar el
tamao al vector).

Matrices o Arreglos
Bidimensionales
Consiste en un vector de vectores y es

por lo tanto un conjunto de elementos


del mismo tipo en el que el orden de
los componentes es significativo y en
el que necesitan especificarse dos
subndices para poder identificar cada
elemento de la matriz.

Matrices o Arreglos
Bidimensionales
Los pasos para la utilizacin de una matriz

son:
1. declarar la matriz: consiste en establecer
el nombre, el tamao y el tipo de los datos
que se van a almacenar en la matriz ejemplo:
F = 3;
C = 4;
Real: matriz[F][C]

Matrices o Arreglos
Bidimensionales
2. llenar la matriz con los

datos: se puede
hacer en el momento de la declaracin
asignando a la matriz los valores que
necesitamos almacenar. Ejemplo.
real: notas[][ ] = { {2.3 , 3.5 , 4.2 ,3.8},{ 3.3 ,
3.0 , 4.9,5.0} ,{ 4.2 , 3.0 , 2.0 ,2.8} }
recorriendo el arreglo as:
para F= 1, F <= 3 , F + 1
para C = 1 , C<= 4 , C + 1
leer( matriz[F][C] )
fin del para
fin del para

Matrices o Arreglos
Bidimensionales
3. manipular la informacin guardada

en
la matriz. Para esto es necesario recorrer
dicha estructura y se puede hacer de la
siguiente manera.
para F = 1, F <= 3, F + 1
para C = 1, C <= 4, C+ 1
mostrar ( matriz[f][c] )
fin del para
fin del para

Matrices o Arreglos
Bidimensionales
Ejercicios: Para una matriz de N x M que
ya tiene los datos realizar un
procedimiento para cada uno de los
siguientes puntos.
1.Calcule y muestre el promedio de todos
los datos de la matriz.
2.Calcule y muestre los promedios de
cada columna; a dems determine cual
columna tiene el promedio mayor y cual
es ese promedio.

Matrices o Arreglos
Bidimensionales
3. Cuanto suman los datos de la
diagonal principal.

4. Cual es el dato mayor de la

diagonal secundaria.

Matrices o Arreglos
Bidimensionales
5. Halle el dato que ms se repita en la
matriz y diga cuantas veces esta.
6. Halle el dato mayor de la matriz .
7. Halle el dato menor de la matriz.
8. Ordene ascendentemente cada fila.
9. Ordene ascendentemente toda la
matriz.

Matrices o Arreglos
Bidimensionales
10. Recorrer la matriz de la siguiente forma

y mostrar los datos en esa posicin.

Bibliografia
http://ayura.udea.edu.co/~jlsa

nche/

Potrebbero piacerti anche