Вы находитесь на странице: 1из 46

* ALGORITMICA

Ing. MONICA BARRIOS R


Profesora
Cronograma Académico 2018
ACTIVIDAD Fecha

Inicio de clases. Facultad de Ingeniería, Ciencias Económicas y Administrativas, Artes,


05 de Febrero de 2018
Ciencias jurídicas sociales y humanas.

Finalización de Clases. Facultad de Ingeniería, Ciencias Económicas y Administrativas,


02 de Junio de 2018
Artes, Ciencias jurídicas sociales y humanas,

Primeros parciales 30 % Facultad de Ingeniería, Ciencias Económicas y Administrativas, Del 05 feb al 10 de Marzo
Artes, Ciencias jurídicas sociales y humanas de 2018

Hasta el 17 de Marzo de
Límite Entrega y Publicación de Notas. Primer corte
2018

Segundos parciales 30 % Facultad de Ingeniería, Ciencias Económicas y Del 16 al 21 de Abril de


Administrativas, Artes, Ciencias jurídicas sociales y humanas 2018
Hasta el 28 de Abril de
Límite Entrega y Publicación de Notas. Segundo corte
2018
Exámenes Finales 40% Facultad de Ingeniería, Ciencias Económicas y Administrativas, Del 28 de Mayo al 02 de
Artes, Ciencias jurídicas sociales y humanas Junio de 2018

Habilitaciones. Facultad de Ingeniería, Ciencias Económicas y Administrativas, Artes, Del 05 al 12 de


Ciencias jurídicas sociales y humanas Junio de 2018
Límite Entrega y Publicación de Notas. Facultad de Ingeniería, Ciencias Económicas y Hasta el 23 de Junio de
Administrativas, Artes, Ciencias jurídicas sociales y humanas 2018
ALGORITMICA
Definición Operadores

Caracterís Lectura Escritura de


Variables
ticas datos datos

Tipos de
Tipos Estructura Ciclos
datos
* Definición
• Se denomina algoritmo a un grupo finito de operaciones
organizadas de manera lógica y ordenada que permite
solucionar un determinado problema.
• Se trata de una serie de instrucciones o reglas
establecidas que, por medio de una sucesión de pasos,
permiten arribar a un resultado o solución.
*Características
Preciso: el resulto debe ser claro y concreto

Definido: clara las instrucciones para obtener el mismo


resultado

Finito: debe terminar en algún momento

Puede tener cero o mas elementos de entrada

Debe producir un resultado


Etapas para desarrollar un
algoritmo
Análisis del Prueba de
Diseño y desarrollo
problema del algoritmo escritorio
(considerar los datos (seudo código y dfd) (seguimiento de
de entrada) paso a paso)

Codificación Compilación Ejecución


(el código se convierte (mostrar los resultados
(selección de un
en lenguaje de máquina) esperados)
lenguaje de
programación)

Depuración
(detectar error y
eliminarlos)
*Clasificación
• Cuando en sus pasos o instrucciones
CUALITATIVOS no están involucrados cálculos
numéricos.

• Se realizan en el computador
para aprovechar la velocidad de
CUANTITATIVOS procesamiento e involucran
cálculos numéricos.
*Estructura de un algoritmo
*TIPO DE DATOS

Constante Variables

* Valor fijo, * Asume diferentes


valores,
* Determinado
*El valor varia mientras el
* No se modifica a lo largo del tiempo de ejecución
tiempo durante la ejecución de * Se guardan en la
un programa memoria del computador
Ej: g, e, PI…. EJ: a,b,c,z….
*EXPRESIONES

*SENTENCIAS DE ASIGNACION
Ej:
* NUM: <- 6+a
* A:<- b+6*t
*OPERADORES
*Ejemplos
a<-5
b<-8
c<-6 ¿qué valores quedan
a<-a+4 almacenados en las variables
b<-b+5-a a,b,c?
c<-a+b+c
Rta:/
a<-a+c
a<-?
b<-5 b<-?
c<-c+4-b+3 c<-?
EJERCICIOS DE CLASE
*a<-10 *a<-10 *a<-20
*b<-12 *b<-8 *b<-10
*c<-18 *a<-a+5 *a<-a-8
*d<-21 *b<-b+3 *b<-b+5
*a<-a+11 *a<-a+12
*a<-a+15 *b<-b-15 *b<-b-15
*b<-b+8-c *a<-a-16 *a<-a-16
*c<-c+6+b *b<-b+5 *b<-b-4
*d<-d+b+a *a<-a+5 *a<-a-3
*a<-a+2 *b<-b+3 *b<-b-2
*a<-a+12 *a<-a+2
*b<-b+c *b<-b-12
*c<-b+c *b<-b+12
*d<-b+d
¿qué valores quedan
¿qué valores quedan almacenados en
almacenados en las
las variables a,b?
variables a,b,c,d?
EJERCICIOS DE CLASE
Resuelva:
1. Operaciones Aritméticas
a. 7+5–6
b. 4 * 2*(3 + 6) / 3
c. 3 + (2 + 3) * 2 – 6 / 2
d. 9 + 7 * 8 – 36 / 5
e. 4 { 5 – [ 6 + ( 2 + -4)*2 / 2 + 8] }
f. 4 [ 1 – ( 5 – 11) / 3]
g. 7 * 5 ^ 3 / 4 div 3
h. 7 * 8 * (160 mod 3 ^ 3) div 5 * 13 – 28
i. 15 / 2 * ( 7 +(68 – 15 * 33 + (45 ^ 2 / 16) / 3) / 15) + 19
j. A=4 , B=5 , C=1 (((B + C) / 2 * A + 10) * 3 * B) – 6

2. Operadores Lógicos
a. NO (15 >=7 ^ 2) O (43 – 8 * 2 div 4 <> 3 * 2 div 2)
b. (15 >= 7 * 3 ^ 2 Y 8 > 3 Y 15 > 6) O NO (7 * 3 < 5 + 12 * 2 div 3 ^ 2)
NO (( 7 * 3 div 2 * 4) > (15 / 2 * 6 >= 15 * 2 / 17 = 15))
3.Deducir= A=5 B=25 C=10
X<- A + B + C
X<- A + B * C
X<- A + B / C
X<- A + B div C
X<- A + B Mod C
X<- (A + B) / C

4. Operadores Relacionales
Diga si es verdadero o falso:
a. A=10, B=4, D=8, C=4 c. A=5 , B=16
A<C (A^2)>(B*2)
A >= D
B >= C d. X=6, B=7.8
(A + B) > C (X * 5 + B ^ 3 / 4) <= (X ^ 3 div
(A * B) <> C B)
(A - B) = C

e. ((1580 mod 6 * 2 ^ 7) > (7 + 8 * 3 ^


a. A=10 , B=5 4)) > ((15 * 2) = (60 * 2 / 4))
(A<4) Y (B<1)
*Representación
* Seudocódigo

• Es un lenguaje de especificación de algoritmos.

• El pseudocódigo nació como un lenguaje similar al


lenguaje natural y era un medio para representar
básicamente las estructuras de control de programación
estructurada.

• Se considera un primer borrador, dado que el


pseudocódigo tiene que traducirse posteriormente a un
lenguaje de programación.
* IDENTIFICADORES

Características:
• Nombre claro
• Menor de 20 caracteres
• Contenido preciso: valor que toma dentro del programa
• Tipo de dato definido
* Comando de Entrada y
salida de datos

Escribir: Pantalla,
Impresora, puertos

LEER: Teclado
*Ejemplo
Leer un numero y
mostrarlo en pantalla Hola Mundo

Inicio Inicio

Escribir “Digite un numero” Escribir “Hola MUNDO!!!!”


Leer (num)
Escribir num Fin

Fin
DIAGRAMA DE FLUJO

Es la representación gráfica de flujo de un


algoritmo o de secuencia rutinarias se basan en
la utilización de diversos símbolos para
representar operaciones específicas.

Se les llama diagramas de flujo porque los


símbolos utilizados se conectan por medio de
flechas para indicar la secuencia de la
operación
*Diagrama de Flujo de Datos
Inicio o fin: Se utiliza para señalar el comienzo así como el final de
un diagrama. Tradicionalmente se colocan las palabras "INICIO" o
"FIN" dentro de la figura para hacerlo más explícito

Entrada de datos: Representa una operación de entrada. En este


símbolo se indican los valores iníciales que deberá recibir el
proceso. Esto se hace asignándoles letras o nombres de variables
para cada uno de los valores y anotando estas letras en el interior
de la figura.

Despliegue de resultados: Este símbolo se utiliza para mostrar un


resultado, el cual puede representar la solución al problema que se
pretende resolver y que fue conseguida a través del resto del
diagrama. Dentro de su interior se anotará la variable con el
resultado final o el mensaje que represente el resultado del
algoritmo.
Proceso: Es el símbolo más comúnmente utilizado. Se usa
para representar un evento o proceso determinado que es
controlado dentro del diagrama de flujo en que se encuentra,
sumar, restar y cualquier operación aritmética es un proceso.

Flujo de datos: Indica la secuencia (flujo) de operación del


diagrama, que a su vez indican el sentido y trayectoria.

Conector: Representa un punto de conexión entre procesos.


Se utiliza cuando es necesario dividir un diagrama de flujo en
varias partes o procesos dentro de la misma hoja, por razones
de espacio o simplicidad. Se usa para conectar procesos
contenidos dentro de la misma hoja. La mayoría de las veces
se utilizan números en los círculos para hacer la referencia.

Decisión. Se utiliza para representar una pregunta o


interrogante que tiene al menos dos respuestas posibles, para
cada una de las cuales hay un camino de continuación del
proceso. Lo anterior hace que a partir de éste el proceso tenga
dos o más caminos posibles.
Características que debe cumplir un
diagrama de flujo

• Existe siempre un camino que permite llegar a una solución


(finalización del algoritmo).

• Existe un único inicio del proceso.

• Existe un único punto de fin para el proceso de flujo (salvo


del rombo que indica una comparación con dos caminos
posibles).
Ejemplo
EJERCICIOS DE CLASE
Ejemplos
1. Un estudiante realiza cuatro exámenes durante el semestre, los cuales
tienen la misma ponderación. Realice el pseudocódigo y el diagrama de
flujo que representen el algoritmo correspondiente para obtener el
promedio de las calificaciones obtenidas.

2. Se requiere conocer el área de un rectángulo. Realice un algoritmo para


tal fin y represéntelo mediante un diagrama de flujo y el pseudocódigo para
realizar este proceso.

3. Se requiere obtener el área de una circunferencia. Realizar el algoritmo


correspondiente y representarlo mediante un diagrama de flujo y el
pseudocódigo
correspondiente.
4. Una empresa constructora vende terrenos con la forma A
de la figura, Realice un algoritmo y represéntelo mediante un
diagrama de flujo y el pseudocódigo para obtener el área
respectiva de un terreno de medidas de cualquier valor.
Ejemplos
5. Se requiere obtener el área de la figura. Para resolver este
problema se puede partir de que está formada por tres figuras: dos
triángulos rectángulos, con H como hipotenusa y R como uno de los
catetos, que también es el radio de la otra figura, una
semicircunferencia que forma la parte circular (ver forma B). Realice
un algoritmo para resolver el problema y represéntelo mediante el
diagrama de flujo y el pseudocódigo.
6. Un productor de leche lleva el registro de lo que produce en litros,
pero cuando entrega le pagan en galones. Realice un algoritmo, y
represéntelo mediante un diagrama de flujo y el pseudocódigo, que
ayude al productor a saber cuánto recibirá por la entrega de su
producción de un día (1 galón = 3.785 litros)
7. Se requiere determinar el sueldo semanal de un trabajador con
base en las horas que trabaja y el pago por hora que recibe. Realice
el diagrama de flujo y el pseudocódigo que representen el algoritmo
de solución correspondiente.
8. Determinar la cantidad de dinero que recibe un
trabajador por concepto de horas extras, sabiendo que
cuando las horas trabajadas excede 40 se consideran extras
y se pagan el doble. Valor hora $ 30.000

9. Calcular el total a pagar por compra de camisas. Si


compra 3 camisas o más se aplica un descuento del 20% y si
son menos el 10%.

10. Calcular el valor absoluto de un numero, el usuario


ingresa dicho valor.
Estructuras
EJERCICIOS DE CLASE
EJERCICIOS
• Se desea implementar un algoritmo para determinar cuál de
dos valores proporcionados es el mayor. Representarlo con
pseudocódigo, diagrama de flujo

• Realice un algoritmo para determinar si un número es positivo


o negativo. Represéntelo en pseudocódigo, diagrama de flujo.

• Realice un algoritmo para determinar cuánto se debe pagar


por equis cantidad de lápices considerando que si son 1000 o
más el costo es de $850; de lo contrario, el precio es de $1200.
Represéntelo con el pseudocódigo, el diagrama de flujo .
EJERCICIOS DE CLASE
EJERCICIOS

• Almacenes “El harapiento distinguido” tiene una promoción: a todos los trajes que tienen un precio
superior a $250.000 se les aplicará un descuento de 15 %, a todos los demás se les aplicará sólo 8 %. Realice
un algoritmo para determinar el precio final que debe pagar una persona por comprar un traje y de cuánto
es el descuento que obtendrá. Represéntelo mediante el pseudocódigo, el diagrama de flujo.

• Se requiere determinar cuál de tres cantidades proporcionadas es la mayor. Realizar su respectivo


algoritmo y representarlo mediante un diagrama de flujo, pseudocódigo.

• La langosta ahumada” es una empresa dedicada a ofrecer banquetes; sus tarifas son las siguientes: el
costo de platillo por persona es de $35.000, pero si el número de personas es mayor a 200 pero menor o
igual a 300, el costo es de $45.000. Para más de 300 personas el costo por platillo es de $25.000. Se
requiere un algoritmo que ayude a determinar el presupuesto que se debe presentar a los clientes que
deseen realizar un evento. Mediante pseudocódigo, diagrama de flujo

• El director de una escuela está organizando un viaje de estudios, y requiere determinar cuánto debe cobrar
a cada alumno y cuánto debe pagar a la compañía de viajes por el servicio. La forma de cobrar es la
siguiente: si son 100 alumnos o más, el costo por cada alumno es de $65.00; de 50 a 99 alumnos, el costo es
de $70.00, de 30 a 49, de $95.00, y si son menos de 30, el costo de la renta del autobús es de $4000.00, sin
importar el número de alumnos. Realice un algoritmo que permita determinar el pago a la compañía de
autobuses y lo que debe pagar cada alumno por el viaje (represente en pseudocódigo, diagrama de flujo.
Ejercicios
• Fábricas “El cometa” produce artículos con claves (1, 2, 3, 4, 5 y 6). Se requiere un
algoritmo para calcular los precios de venta, para esto hay que considerar lo siguiente:
Costo de producción = materia prima + mano de obra + gastos de fabricación. Precio de
venta = costo de producción + 45 % de costo de producción. El costo de la mano de obra
se obtiene de la siguiente forma: para los productos con clave 3 o 4 se carga 75 % del
costo de la materia prima; para los que tienen clave 1 y 5 se carga 80 %, y para los que
tienen clave 2 o 6, 85 %. Para calcular el gasto de fabricación se considera que si el
artículo que se va a producir tiene claves 2 o 5, este gasto representa 30 % sobre el costo
de la materia prima; si las claves son 3 o 6, representa 35 %; si las claves son 1 o 4,
representa 28 %. La materia prima tiene el mismo costo para cualquier clave. Represente
mediante el diagrama de flujo, el pseudocódigo.

• El banco “Pueblo desconocido” ha decidido aumentar el límite de crédito de las tarjetas de


crédito de sus clientes, para esto considera que si su cliente tiene tarjeta tipo 1, el aumento
será de 25 %; si tiene tipo 2, será de 35 %; si tiene tipo 3, de 40 %, y para cualquier otro
tipo, de 50 %. Ahora bien, si la persona cuenta con más de una tarjeta, sólo se considera la
de tipo mayor o la que el cliente indique. Realice un algoritmo y represente su diagrama de
flujo y el pseudocódigo para determinar el nuevo límite de crédito que tendrá una persona
en su tarjeta.

• Una empresa les paga a sus empleados con base en las horas trabajadas en la semana.
Para esto, se registran los días que laboró y las horas de cada día. Realice un algoritmo
para determinar el sueldo semanal de N trabajadores y además calcule cuánto pagó la
empresa por los N empleados. Represéntelo mediante diagrama de flujo, pseudocódigo.
Ejercicios
• Una compañía de viajes cuenta con tres tipos de autobuses (A, B y C),
cada uno tiene un precio por kilómetro recorrido por persona, los
costos respectivos son $2.0, $2.5 y $3.0. Se requiere determinar el
costo total y por persona del viaje considerando que cuando éste se
presupuesta debe haber un mínimo de 20 personas, de lo contrario el
cobro se realiza con base en este número límite, Represéntelo
mediante diagrama de flujo, Pseudocodigo.

• “El náufrago satisfecho” ofrece hamburguesas sencillas, dobles y


triples, las cuales tienen un costo de $20.00, $25.00 y $28.00
respectivamente. La empresa acepta tarjetas de crédito con un cargo
de 5 % sobre la compra. Suponiendo que los clientes adquieren sólo
un tipo de hamburguesa, realice un algoritmo para determinar cuánto
debe pagar una persona por N hamburguesas. Represéntelo mediante
diagrama de flujo, Seudocódigo.

Вам также может понравиться