Sei sulla pagina 1di 49

TECNOLGICO NACIONAL DE MXICO

Instituto Tecnolgico Superior de Guasave


Ingeniera en Sistemas Computacionales
Unidad I: Diseo Algortmico
Mtro. Jos Antonio Sandoval Acosta
Retcula ISIC-2010-224: Programa: AED-1285/2016

FUNDAMENTOS DE PROGRAMACIN
FUNDAMENTOS DE PROGRAMACION
Temario

Competencia:
Comprende y aplica los conceptos bsicos, nomenclatura y herramientas
para el diseo de algoritmos orientado a la resolucin de problemas.
FUNDAMENTOS DE PROGRAMACIN

Algoritmo: Conjunto de pasos, procedimientos, o acciones que


nos permiten alcanzar un resultado o resolver un problema.

Muchas veces aplicamos los algoritmos de manera inadvertida,


inconsciente, sobre todo cuando hemos aplicado la solucin de
un mismo problema muchas veces
FUNDAMENTOS DE PROGRAMACIN
Etapas de la solucin de un problema
FUNDAMENTOS DE PROGRAMACIN

Caractersticas de los algoritmos

Precisin
Determinismo (definido)
Finito
FUNDAMENTOS DE PROGRAMACIN
FUNDAMENTOS DE PROGRAMACIN
Pseudocdigo
Mezcla de lenguaje de programacin y espaol (o ingles o
cualquier otro idioma) que se emplea, dentro de la
programacin estructurada, para realizar el diseo de un
programa. En esencial, el pseudocdigo se puede definir como
un lenguaje de especificaciones de algoritmos.
Es la representacin narrativa de los pasos que debe seguir un
algoritmo para dar solucin a un problema determinado. El
pseudocdigo utiliza palabras que indican el proceso a realizar.
FUNDAMENTOS DE PROGRAMACIN

Diagramas de Flujo

Es un esquema grfico de un algoritmo. Muestra los pasos para


alcanzar la solucin del problema. Su correcta construccin
permite que la programacin sea fcil y rpido.
FUNDAMENTOS DE PROGRAMACIN
Smbolos para la construccin de un diagrama

Inicio y fin del diagrama

Entrada de datos (lectura)

Proceso de informacin
FUNDAMENTOS DE PROGRAMACIN

Decisin

Despliegue de informacin (impresora o


pantalla)

Flechas utilizadas para marcar el flujo del


diagrama
FUNDAMENTOS DE PROGRAMACIN
Estructura general de un diagrama de flujo

Inicio

Definir Variables

Leer datos

Procesar Datos

Desplegar Resultados

Fin
FUNDAMENTOS DE PROGRAMACIN

Ejercicio inicial

Disee el algoritmo para obtener el rea de un circulo, hacer


pseudocdigo y diagrama de flujo.

a = * r2
FUNDAMENTOS DE PROGRAMACIN

Ejercicio inicial

Realice el algoritmo y diagrama de flujo que determine el valor


absoluto de un nmero. No es posible en este caso utilizar
condiciones.
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

Disee el algoritmo para obtener el rea de un triangulo


(Hacer pseudocdigo y diagrama)

a=(b*h)/2
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

Suponga que un individuo desea invertir su capital en un banco


y desea saber cuanto dinero ganar despus de un mes si el
banco paga a razn de 2% mensual.
Hacer pseudocdigo y diagrama de flujo
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

Una tienda ofrece un descuento del 15% sobre el total de la


compra y un cliente desea saber cuanto deber pagar finalmente
por su compra.
Hacer pseudocdigo y diagrama de flujo
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

Un maestro desea saber que porcentaje de hombres y que


porcentaje de mujeres hay en un grupo de estudiantes.
Hacer pseudocdigo y diagrama de flujo que determine total
de estudiantes y calcule los porcentajes correspondientes
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

Calcular el nuevo salario de un obrero si obtuvo un incremento


del 25% sobre su salario anterior.
Hacer pseudocdigo y diagrama de flujo utilizando frmulas
adecuadas que no requieran sumatorias.
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

Dada una cantidad en pesos, obtener la equivalencia en


dlares, asumiendo que la unidad cambiara es un dato
desconocido.
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

Tres personas deciden invertir su dinero para fundar una


empresa. Cada una de ellas invierte una cantidad distinta.
Obtener el porcentaje que cada quien invierte con respecto a
la cantidad total invertida.
FUNDAMENTOS DE PROGRAMACIN

ESTRUCTURAS CONDICIONALES
FUNDAMENTOS DE PROGRAMACIN
Tipos de Asignaciones

Simples: Consiste en pasar un valor constate a una variable:


(a=15)
Contador: Consiste en usarla como un verificador del numero de
veces que se realiza un proceso: (a=a+1)
Acumulador: Consiste en usarla como un sumador en un proceso:
(total=a1+a2+a3 )
De trabajo: Donde puede recibir el resultado de una operacin
matemtica que involucre muchas variables: (a=c+b*2/4)
FUNDAMENTOS DE PROGRAMACIN
Estructuras de Condicionales

Las estructuras condicionales comparan una variable o un valor


contra otras variables o valores, para que en base al resultado de
esta comparacin, se siga un curso de accin dentro del programa.

La comparacin se puede hacer contra otra variable o contra una


constante, segn se necesite. Existen dos tipos bsicos, las
condiciones simples y las condiciones mltiples:
FUNDAMENTOS DE PROGRAMACIN

Coniciones Simples: Las estructuras condicionales simples se


les conoce como Tomas de decisin. Estas tomas de decisin
tienen la siguiente forma:
Si <condicin> entonces
Accin(es)
Fin-si
FUNDAMENTOS DE PROGRAMACIN

Condiciones Dobles: Las estructuras condicionales dobles permiten


elegir entre dos opciones o alternativas posibles en funcin del
cumplimiento o no de una determinada condicin. Se representa
de la siguiente forma:

Si <condicin> entonces
Accin(es)
si no
Accin(es)
Fin-si
FUNDAMENTOS DE PROGRAMACIN

Operadores Relacionales:

Se utilizan para establecer una relacin entre dos valores.


Compara estos valores entre si y esta comparacin produce un resultado de
certeza o falsedad (verdadero o falso).
Los operadores relacionales comparan valores del mismo tipo (numricos o
cadenas)
Tienen el mismo nivel de prioridad en su evaluacin.
Los operadores relacionales tiene menor prioridad que los aritmticos.
FUNDAMENTOS DE PROGRAMACIN

Operadores Relacionales:

> Mayor que


< Menor que
> = Mayor o igual que
< = Menor o igual que
< > Diferente
= Igual
FUNDAMENTOS DE PROGRAMACIN

Ejercicio:

1: Utilizando estructuras condicionales realice el algoritmo y


diagrama de flujo que determine el valor absoluto de un nmero
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

2: Realizar algoritmo y diagrama de flujo que lea dos nmeros y


los imprima en forma ascendente
FUNDAMENTOS DE PROGRAMACIN

Ejercicio:

3: Realizar algoritmo y diagrama de flujo que determine si un


alumno aprueba o reprueba un curso, sabiendo que aprobar s
su promedio de tres calificaciones es mayor o igual a 70;
reprueba en caso contrario.
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

4: En un almacn se hace un 20% de descuento a los clientes cuya


compra es superior a $1000.00

Cul ser la cantidad que pagara una persona por su compra?


FUNDAMENTOS DE PROGRAMACIN

Ejercicio

5: Un hombre desea saber cuanto dinero se genera por concepto


de intereses sobre la cantidad que tiene en inversin en el
banco. El decidir reinvertir los intereses siempre y cuando
estos excedan a $7000, y en ese caso desea saber cuanto
dinero tendr finalmente en su cuenta.
FUNDAMENTOS DE PROGRAMACIN
Operadores Lgicos:

Estos operadores se utilizan para establecer relaciones entre valores


lgicos.
Estos valores pueden ser resultado de una expresin relacional.

Operadores Lgicos
And - Y
Or - O
Not - Negacin
FUNDAMENTOS DE PROGRAMACIN
Operador AND

Operando 1 Operador Operando 2 Resultado


V AND V V
V AND F F
F AND V F
F AND F F
FUNDAMENTOS DE PROGRAMACIN
Operador OR

Operando 1 Operador Operando 2 Resultado


T OR T T
T OR F T
F OR T T
F OR F F
FUNDAMENTOS DE PROGRAMACIN

Operador NOT

Operador Operando Resultado


NOT T F
NOT F T
FUNDAMENTOS DE PROGRAMACIN
Ejemplos

Una persona recibe un bono de $200 en su trabajo si es casado y tiene


hijos.
La mercanca de temporada navidea entra en descuento del 40% siempre
y cuando la venta se haga en el mes de diciembre y el inventario tenga
menos de 10 piezas del producto vendido.
El dispensador de agua de una veterinaria coloca un medio de agua si en la
jaula se encuentra un perro o un gato, de lo contrario coloca un cuarto de
litro de agua.
Un paquete de correo no se entrega en el domicilio si este se encuentra
vaco.
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

6: Hacer algoritmo y diagrama de flujo que resuelva lo siguiente: una empresa


de importaciones importa productos de diferentes pases y debe pagar
impuestos dependiendo del pas de origen de cada producto:

Si el producto es originario de USA o Canad no paga impuestos


Si el producto es originario de otra parte del mundo paga un 20% de
impuestos
FUNDAMENTOS DE PROGRAMACIN
Ejercicio
7: Una empresa de bienes races ofrece casas de inters social, bajo
las siguientes condiciones:
Si los ingresos mensuales del comprador son menores o iguales a
$8000 el enganche ser del 15% del costo de la casa y el resto se
distribuir en pagos mensuales, a pagar en 15 aos.
Si los ingresos del comprador son mayores de $8000 el enganche
ser del 30% del costo de la casa y el resto se distribuir en pagos
mensuales a pagar en 10 aos.
La empresa quiere obtener cuanto debe pagar un comprador por
concepto de enganche y cuanto por cada pago mensual aplicando a
cada pago mensual un inters del 14%.
FUNDAMENTOS DE PROGRAMACIN

Ejercicio

8: Hacer un programa que indique la denominacin en cuanto a su edad de


una persona segn los siguientes criterios:
Cuando la edad es menor a 14, es un nio.
Cuando la edad es de 14 a 22, es un adolecente.
Cuando la edad es de 23 a 43, es un joven.
Cuando la edad es de 44 a 64, es un adulto joven.
Cuando la edad es de 65 a ms es un adulto mayor.
FUNDAMENTOS DE PROGRAMACIN
9: Un obrero necesita calcular su salario semanal, el cual se obtiene
de la sig. manera:
Si trabaja 40 horas o menos se le paga $16.00 por hora.
Si trabaja mas de 40 horas se le paga $16.00 por cada una de las
primeras 40 horas y $20.00 por cada hora extra.
Adems si el obrero tiene una antigedad de 5 aos o mayor y es
casado se le paga un bono del 5% sobre el sueldo semanal
calculado.
FUNDAMENTOS DE PROGRAMACIN

Diseo de Funciones

Cuando la solucin a un problema es muy compleja se requiere utilizar el


diseo descendiente (divide y vencers), esto implica que el problema se
divide en subprocesos ms pequeos y sencillos que al unirlos tenemos una
solucin completa, a estos subprocesos se les llama mdulos o funciones.

Una funcin esta constituida por un nombre (identificador de funcin), un


conjunto de parmetros que va de 1 a n, y un valor de retorno
FUNDAMENTOS DE PROGRAMACIN Diseo de Funciones

nomFun es el nombre de la funcin,


Si la funcin recibe parmetros se
inicializan en el recuadro que apunta al
inicio del a funcin,
Todas las funciones pueden regresar un
valor final, para esto se debe definir el
tipo de dato a regresar en el recuadro
final.
FUNDAMENTOS DE PROGRAMACIN Ejemplo
En este caso, se
pretende calcular la
suma de dos nmeros,
para ello creamos una
funcin llamada sumar,
que recibe dos
parmetros, los suma y
regresa un valor entero
en la variable
enteroTres.
FUNDAMENTOS DE PROGRAMACIN
Ejercicio: Se requiere realizar la venta de un producto el cual debe pagar IVA,
y desplegar el total a pagar. Desarrolle el diagrama correspondiente, el IVA
debe ser calculado en una funcin.
FUNDAMENTOS DE PROGRAMACIN
Ejercicio: Disee algoritmo que permita leer el valor correspondiente a una
distancia en millas y las visualice expresadas en kilmetros. Sabiendo que 1
milla marina equivale a 1852 metros. El clculo del total de kilmetros debe
realizarse en una funcin.
FUNDAMENTOS DE PROGRAMACIN
Ejercicio: Disee algoritmo que calcule el rea y el permetro de un
rectngulo dada la base y la altura. El rea y el permetro deben realizarse en
funciones separadas.
FUNDAMENTOS DE PROGRAMACIN
Tarea: Disee el diagrama de flujo para un rectngulo, aada las
funciones necesarias (una funcin por frmula) para obtener:
El rea del rectngulo:
A=a*b
El permetro del rectngulo :
P = 2(a + b)
El radio de la circunferencia circunscrita:
R = (a2 - b2)/2
El rea de la circunferencia circunscrita:
A = pi * R2
FUNDAMENTOS DE PROGRAMACIN
Bibliografa

Cair, Osvaldo. (2005). Metodologa de la Programacin. Tercera edicin.


AlfaOmega. Mxico, D. F.

Potrebbero piacerti anche