Está en la página 1de 32

¿QUÉ ES UN ALGORITMO?

UN ALGORITMO ES UNA LISTA DE


INSTRUCCIONES EXPRESADAS EN
FORMA PRECISA LO CUAL
ESPECIFICA UNA SECUENCIA DE
OPERACIONES A REALIZAR EN UN
ORDEN LÓGICO PARA RESOLVER
UN PROBLEMA ESPECIFICO.
Constante: Para la Informática, una
constante es una cantidad que tiene
un valor fijo en un determinado
programa o proceso o ecuación. Esto
quiere decir que la constante es un valor
permanente que no puede modificarse
dentro de un cierto contexto.
Variable es una palabra que representa a
aquello que cambia o que está sujeto a algún tipo
de variación. Se trata de un campo que se
caracteriza por cambiar su contenido dos o más
veces durante el curso de un programa.
¿Qué es una variable contador?

En programación, se
llama contador a
una variable cuyo valor se
incrementa o decrementa en un
valor fijo (en cada iteración de
un bucle). Un contador suele
utilizarse para contar el número de
veces que itera un bucle. Pero, a
veces, se utiliza para contar,
solamente, aquellas iteraciones de
un bucle en las que se cumpla una
¿Qué es una iteración (en programación)?

En programación, cuando el bloque de


instrucciones de un bucle se ejecuta, se dice
que se ha producido una iteración.

¿Qué es un bucle (en programación)?

En programación, un bucle o instrucción de


control repetitiva (o iterativa) permite
ejecutar una o más instrucciones varias
veces, es decir, permite ejecutar un bloque
de instrucciones repetidamente,
escribiéndolas una sola vez en
el algoritmo (o programa), reduciendo de
este modo el código del mismo. A los bucles
también se los conoce como ciclos o lazos.
¿Qué es una variable acumulador (en
programación)?

En programación, se
llama acumulador a
una variable cuyo valor se incrementa
o decrementa en un valor que no tiene
por qué ser fijo (en cada iteración de
un bucle). Un acumulador suele
utilizarse para acumular resultados
producidos en las iteraciones de un
bucle.
Ejemplos de Diagramas de Flujo
Veamos un primer ejemplo muy sencillo.

Queremos hacer un programa informático que nos sume dos número y nos de el resultado en pantalla.

Solución del ejemplo:


Reglas de algoritmos
1. El algoritmo debe escribirse como una expresión
en algún lenguaje:
 Descripción narrada.
 Notación matemática.
 Pseudocódigo.
 Diagramas de flujo.
 Lenguaje de computadora.

2. Exactamente cada pregunta del problema debe


ser contestada por la ejecución del algoritmo.

3. Cualquiera que sean los valores de las entradas,


la ejecución terminará después de algún número
finito de pasos.
Pseudocódigo:

una noción que se emplea en el ámbito de


la informática. Se trata de un falso
lenguaje, ya que apela a las normas de
estructura de un lenguaje de programación
aunque se encuentra desarrollado para
que pueda ser leído por un ser
humano y no interpretado por una
máquina.
EJEMPLO DE UN BASE DE DATOS
. . . . . . .
. . . . . .
.
. .
R5 5 LAURA CASTRO BETANIA $330.42 F

R4 4 MARCO PEREZ SAN MIGUELITO $250.69 M

R3 3 PEDRO GONZALEZ CHORRILLO $624.32 M

R2 2 MARIA LOPEZ PEDREGAL $350.68 F

R1 1 JUAN APARICIO CALIDONIA $400.50 M

BASE DE DATOS: CONJUNTO DE REGISTRO RELACIONADOS ENTRE SI.

REGISTRO: CONJUNTO DE CAMPOS RELACIONADOS ENTRE SI.

CAMPOS: GRUPO DE CARACTERES QUE SE TOMAN COMO UNA


UNIDAD. LOS CAMPOS PUEDEN SER ALFABETICOS, NUMERICOS,
ALFANUMERICOS ENTRE OTROS.
INSTRUCCIONES BASICAS DENTRO DE UN ALGORITMO

1. INSTRUCCIÓN DE LECTURA
2. ASIGNACION
3. CALCULO
4. IMPRESIÓN

FORMATOS PARA LA SOLUCION DE ALGORITMOS

A. SECUENCIA SIMPLE
B. SECUENCIA SIMPLE CON ALTERNATIVA DOBLE
C. REPETICION: (EL CUAL CONTIENE LOS FORMATOS)
. MIENTRAS
. HASTA QUE
. PARA
PROBLEMAS DE ALGORITMO
SECUENCIA SIMPLE:

1. Calcule la hipotenusa de un triángulo a través de la fórmula H= √A+B.


Imprima la ecuación, los datos de entrada y los resultados obtenidos.

INICIO

LEER (A,B)
H = SQR(A+B)
IMPRIMIR (“LA ECUACION ES = SQR(A+B)”)
IMPRIMIR (“LOS DATOS DE ENTRADA SON =”;A,B)
IMPRIMIR (“RESULTADOS OBTENIDOS =”;H)

FIN
2. Realice un algoritmo que calcule el precio de venta de un artículo;
sabiendo que el precio de venta será igual al precio original del artículo
mas el 7%. Como salida imprima el precio del artículo, cual es el
impuesto y a cuanto se va a vender.

INICIO

LEER (PO)
IMP = PO * 7%
PV = PO + IMP
IMPRIMIR (“PRECIO DEL ARTICULO =”;PO)
IMPRIMIR (“EL IMPUESTO ES =”;IMP)
IMPRIMIR (“PRECIO DE VENTA =”;PV)
FIN
3. Calcule el sueldo neto de un empleado sabiendo que el sueldo bruto
es igual a las horas trabajadas por la rata por hora, y el sueldo neto es
igual al sueldo bruto menos las deducciones; el registro contiene
(HT,RH,D).Imprima el sueldo neto.

INICIO

SN = 0, SB = 0

LEER (HT,RH,D)

SB = HT * RH

SN = SB – D

IMPRIMIR (“EL SUELDO NETO =”;SN)

FIN
FORMATO DE SECUENCIA SIMPLE CON ALTERNATIVA DOBLE
SI: (CONDICION ES CIERTA)
ENTONCES:
---------
---------
DE OTRO MODO:
SI: (CONDICION ES CIERTA)
ENTONCES:
---------
---------
DE OTRO MODO:
SI: (CONDICION ES CIERTA)
ENTONCES:
---------
---------
DE OTRO MODO:
SI: (CONDICION ES CIERTA)
ENTONCES:
---------
---------
SECUENCIA SIMPLE CON ALTERNATIVA DOBLE

4. Confeccione un algoritmo que calcule el valor de CC, el cual


dependerá de las tres condiciones siguientes:

CC = (A+B) / (C+D) si X>0


CC = (A+B) / (C-D) si X=0
CC = (A*B-C) si X<0
INICIO
CC = 0
LEER (A,B,C,D,X)
SI: (X > 0)
ENTONCES:
CC = (A+B) / (C+D)
DE OTRO MODO:
SI: (X = 0)
ENTONCES:
CC = (A+B) / (C-D)
DE OTRO MODO:
CC = (A*B-C)

Si CC es mayor que 100 súmale 20 e imprímelo, si CC es igual a 100


súmale 10 e imprímelo y CC es menor que 100 réstale 20 e imprímelo.
SI: (CC > 100)
ENTONCES:
CC = CC+ 20
DE OTRO MODO:
SI: (CC = 100)
ENTONCES:
CC = CC + 10
DE OTRO MODO:
CC = CC - 20

IMPRIMIR (“EL VALOR DE CC =”;CC)

FIN
CONTADOR: ELEMENTO VARIABLE QUE SIRVE PARA CONTAR EL
NÚMERO DE VECES QUE SE REPITE UNA INTERACCIÓN

EJEMPLOS:
CONT=CONT+1
CANTIDAD=CANTIDAD+1

ACUMULADOR: ELEMENTO VARIABLE QUE SIRVE PARA EL CALCULO


DE TOTALES A PARTIR DE LA SUMA DE DIFERENTES CANTIDADES

EJEMPLOS:
TOTAL=TOTAL+CANTIDAD
SALDO=SALDO+DEPOSITO
5. Realice un algoritmo que calcule la ganancia o perdida de
un producto X dependiendo de las siguientes condiciones:
a. Súmale 30 a ganancia si el color es rojo
b. Súmale 10 a ganancia si el color es negro
c. Súmale 25 a perdida si el color es verde
d. Súmale 10 a perdida si el color es azul
Solo lo realizaran para 7 registro y al finalizar imprima si
hubo ganancia o perdida del producto
INICIO
GAN = 0, PER = 0, CONT = 0, GN = 0
LEER (COLOR)
CONT = CONT + 1
SI: (COLOR = “ROJO”)
ENTONCES:
GAN = GAN + 30
DE OTRO MODO:
SI: (COLOR = “NEGRO”)
ENTONCES:
GAN = GAN + 10
DE OTRO MODO:
SI: (COLOR = “VERDE”)
ENTONCES:
PER = PER + 25
DE OTRO MODO:
SI: (COLOR = “AZUL”)
ENTONCES:
PER = PER + 10.

SI: (CONT = 7)
ENTONCES:
IR AL FINAL
DE OTRO MODO:
IR A LEER
FINAL
GN = GAN – PER
SI: (GN >0)
ENTONCES:
IMPRIMIR (“EL PRODUCTO TUVO UNA GANANCIA DE =”;GN)
DE OTRO MODO:
IMPRIMIR (“EL PRODUCTO TUVO UNA PERDIDA DE =”;GN)
FIN
FORMATO DEL CICLO DE REPETICION MIENTRAS:

LEER (CAMPOS)
MIENTRAS (CONDICIÓN SEA FALSA)
REPETIR:
--------
--------
--------
--------
--------
LEER (CAMPOS)
PROBLEMAS DE REPETICION MIENTRAS:
6. Se tiene una base de datos con x cantidad de estudiantes, realice un
algoritmo que imprima los estudiantes mayores de 25 años y que
imprima los estudiantes menores de 25 años.
INICIO
LEER (EDAD)
MIENTRAS (EOF)
REPETIR:
SI: (EDAD>25)
ENTONCES:
IMPRIMIR(“ESTUDIANTE MAYOR DE 25 AÑOS”)
DE OTRO MODO:
SI: (EDAD<25)
ENTONCES:
IMPRIMIR(“ESTUDIANTE MENOR DE 25 AÑOS”)
LEER (EDAD)
FIN
7. Se tiene una base de datos con 45 estudiantes universitarios. Realice un
algoritmo que imprima los estudiantes mayores de 18 años y los menores de 18
años. Además imprima cuantos son mayores y menores de 18 años.
INICIO
MAY = 0, MEN = 0
LEER (EDAD)
MIENTRAS (EOF)
REPETIR:
SI: (EDAD>18)
ENTONCES:
IMPRIMIR(“ESTUDIANTE MAYOR DE 18 AÑOS”)
MAY = MAY + 1
DE OTRO MODO:
SI: (EDAD<18)
ENTONCES:
IMPRIMIR(“ESTUDIANTE MENOR DE 18 AÑOS”)
MEN = MEN +1
LEER (EDAD)
IMPRIMIR (“ESTUDIANTES MAYORES DE 18 AÑOS =”;MAY)
IMPRIMIR (“ESTUDIANTES MENORES DE 18 AÑOS =”;MEN)
FIN
8. Se lee una base de datos que contiene nombre, cédula, sueldo bruto, seguro social, seguro
educativo, impuesto sobre la renta, y deducciones varias. Se desea que presente un algoritmo que
haga posible calcular el sueldo neto de los empleados, obtenidos en dicho archivo. Se desea que por
empleado imprima el nombre, cédula, salario neto lo mismo que el total de salario neto calculado.
Como no se sabe la cantidad de empleados se coloca como ultimo registro la palabra “ultimo”

INICIO
TSN = 0
LEER (NOM,CED,SB,SS,SE,IR,DV)
MIENTRAS (NOM = “ULTIMO”)
REPETIR:
SN = 0
D=0
D = SS + SE + DV + IR
SN = SB – D
TSN = TSN + SN
IMPRIMIR (NOM,CED,SN)
LEER(NOM,CED,SB,SS,SE,IR,DV)
IMPRIMIR (“TOTAL DE SALARIO NETO =”;TSN)
FIN
FORMATO DEL CICLO DE REPETICION HASTA QUE:

REPETIR:
LEER (CAMPOS)
--------
--------
--------
--------
--------
HASTA QUE (CONDICION SEA CIERTA)
PROBLEMAS DE REPETICION HASTA QUE:
9. Se tiene una base de datos con 10 registros cada uno contiene un
entero positivo cuyo valor puede oscilar entre 1 y 2. Determine el número
de veces en que cada uno de estos dos valores se repite dentro del
conjunto de 10 registros.
INICIO
CONT = 0, A = 0, B = 0
REPETIR:
LEER(NUM)
CONT = CONT + 1
SI: (NUM = 1)
ENTONCES:
A=A+1
DE OTRO MODO:
SI: (NUM = 2)
ENTONCES:
B=B+1
HASTA QUE (CONT < 10)
IMPRIMIR (“CANTIDAD DE UNO =”;A)
IMPRIMIR (“CANTIDAD DE DOS =”;B)
FIN
FORMATO DEL CICLO DE REPETICION PARA:

PARA variable = INICIO, FIN, INCREMENTO


REPETIR:
--------
--------
--------
--------
--------
PROXIMO
PROBLEMAS DE REPETICION PARA:

10. Suponga que se tiene un capital de B/.10,000.00 balboas y se


deposita a una cuenta de ahorro a un interés anual del 7%. Haga un
algoritmo que imprima el capital de la cuenta cada año durante 20 años.

INICIO
CAP = 10,000, INT = 0
PARA I = 1,20,1
REPETIR:
INT = CAP * 0.07
CAP = CAP + INT
IMPRIMIR (I,INT,CAP)
PROXIMO
FIN
11. Calcule el SB y SN para 25 empleados sabiendo que el
SB = HT * RH y el SN = SB – D

INICIO
PARA B = 1,25,1
REPETIR:

SB = 0, SN = 0
LEER (HT,RH,D)
SB = HT * RH
SN = SB - D
IMPRIMIR (“SUELDO BRUTO =”;SB)
IMPRIMIR (“SUELDO NETO =”;SN)
PROXIMO

FIN
14. Se supone que se tiene una base de datos con 300
registros de estudiantes, cada registro contiene el nombre,
cédula y calificación del resultado de un examen de
aritmética para ingresar a la Universidad Tecnológica de
Panamá. Se desea que imprima cada uno de estos
resultados calificándolos con A,B,C,D, y F. Según sus
resultados, para estos se van a dar estas condiciones:

CAL >= 91 = “A”


81 <= CAL <= 90 = “B”
71 <= CAL <= 80 = “C”
61 <= CAL <= 70 = “D”
CAL <= 60 = “F”
INICIO
PARA K = 1,300,1
REPETIR:
LEER (NOM,CED,CAL)
SI: (CAL >= 91)
ENTONCES:
IMPRIMIR (NOM,CED,”A”)
DE OTRO MODO:
SI: (81 <= CAL <= 90)
ENTONCES:
IMPRIMIR (NOM,CED,”B”)
DE OTRO MODO:
SI: (71 <= CAL <= 80)
ENTONCES:
IMPRIMIR (NOM,CED,”C”)
DE OTRO MODO:
SI: (61 <= CAL <= 70)
ENTONCES:
IMPRIMIR (NOM,CED,”D”)
DE OTRO MODO:
SI: (CAL <= 60)
ENTONCES:
IMPRIMIR (NOM,CED,”F”)
PROXIMO

También podría gustarte