Logo Studenta

Algoritmos y estructura de datos

¡Este material tiene más páginas!

Vista previa del material en texto

Algoritmos y Estructuras Algoritmos y Estructuras 
de Datosde Datos
Parte Parte –– PrPráácticactica
Que debemos saber?Que debemos saber?
Definir un algoritmoDefinir un algoritmo
Diferentes herramientas utilizadas para representar Diferentes herramientas utilizadas para representar 
algoritmos algoritmos 
Tipos de datos utilizados en los algoritmosTipos de datos utilizados en los algoritmos
Tipos de operacionesTipos de operaciones
Elementos que se emplean para construir un Elementos que se emplean para construir un 
algoritmo:algoritmo:
•• ConstanteConstante
•• Variables Variables 
•• ContadoresContadores
•• AcumuladoresAcumuladores
•• Estructuras repetitivasEstructuras repetitivas
•• Estructuras selectivasEstructuras selectivas
Que es un Algoritmos?Que es un Algoritmos?
Es un mEs un méétodo para resolver paso a paso todo para resolver paso a paso 
un determinado problema.un determinado problema.
El algoritmo debe ser:El algoritmo debe ser:
PRECISO (dividir el problema)PRECISO (dividir el problema)
DEFINIDO (igual resultado)DEFINIDO (igual resultado)
FINITO (menor cantidad de pasos)FINITO (menor cantidad de pasos)
DefiniciDefinicióón de un Algoritmosn de un Algoritmos
ENTRADAENTRADA PROCESOPROCESO SALIDASALIDA
Ingresar dos números 
enteros mayores a 50
Determinar si los 
números ingresados 
son pares o impares
Mostar el resultado 
por pantalla
RepresentaciRepresentacióónn
Diagrama de FlujoDiagrama de Flujo
Diagrama NDiagrama N--SS
Forma NarrativaForma Narrativa
FFóórmulasrmulas
SEUDOCODIGOSEUDOCODIGO
Tipos de DatosTipos de Datos
Datos SimplesDatos Simples
NumNumééricos ricos 
Enteros (positivos, negativos van 32768 al Enteros (positivos, negativos van 32768 al --32767),32767),
Reales (positivos, negativos, punto decimal)Reales (positivos, negativos, punto decimal)
LLóógicosgicos
Verdadero/falsoVerdadero/falso
CarCaráácter cter 
AlfabAlfabééticos (A, Bticos (A, B……Z)Z)
NumNumééricos (1,2ricos (1,2…….).)
Especiales (<, >, *, /, Especiales (<, >, *, /, --))
Tipos de OperacionesTipos de Operaciones
MatemMatemááticasticas
•• Suma Suma 
•• Resta Resta 
•• DivisiDivisióón n 
•• MultiplicaciMultiplicacióón n 
•• ExponencialExponencial
•• DivDiv
•• ModMod
LLóógicasgicas
•• OrOr
•• AndAnd
•• NotNot
RelacionalesRelacionales
•• Igual Igual 
•• Desigual Desigual 
•• Mayo/MenorMayo/Menor
•• Mayor /Menor igual Mayor /Menor igual 
Elementos que se emplean para Elementos que se emplean para 
construir un algoritmoconstruir un algoritmo
VariableVariable: es aquel valor que cambia : es aquel valor que cambia 
durante la ejecucidurante la ejecucióón del algoritmosn del algoritmos
ConstanteConstante: es aquel valor que permanece : es aquel valor que permanece 
durante toda la ejecucidurante toda la ejecucióón del programa.n del programa.
Elementos que se emplean para Elementos que se emplean para 
construir un algoritmoconstruir un algoritmo
ContadorContador: es una variable cuyo valor se : es una variable cuyo valor se 
incrementa o incrementa o decrementadecrementa en una cantidad en una cantidad 
constante en cada interacciconstante en cada interaccióón.n.
AcumuladorAcumulador: es una variable cuyo valor se : es una variable cuyo valor se 
incrementa o incrementa o decrementadecrementa sumar otra sumar otra 
variable.variable.
Elementos que se emplean para Elementos que se emplean para 
construir un algoritmoconstruir un algoritmo
Estructuras SecuencialEstructuras Secuencial es aquella en que es aquella en que 
una acciuna accióón sigue a otra en secuencia.n sigue a otra en secuencia.
Estructuras SelectivasEstructuras Selectivas se la utiliza para se la utiliza para 
tomar decisiones ltomar decisiones lóógicas. Se evalgicas. Se evalúúa una condicia una condicióón n 
y en funciy en funcióón del resultado de la misma se realiza n del resultado de la misma se realiza 
una opciuna opcióón.n.
Pueden ser:Pueden ser:
•• SimpleSimple
•• DoblesDobles
•• MMúúltiplesltiples
Elementos que se emplean para Elementos que se emplean para 
construir un algoritmoconstruir un algoritmo
Estructuras RepetitivasEstructuras Repetitivas repiten una repiten una 
secuencia de acciones un nsecuencia de acciones un núúmero mero 
determinado de veces.determinado de veces.
Pueden ser Pueden ser 
•• MIENTRASMIENTRAS
•• REPETIRREPETIR
•• DESDE/PARADESDE/PARA
PresentaciPresentacióón de Trabajo Prn de Trabajo Práácticoctico
PresentaciPresentacióón Individualn Individual
1 copia en digital1 copia en digital
1 copia en papel1 copia en papel
Con anCon anáálisis para aquellos algoritmos que lisis para aquellos algoritmos que 
se requieran del mismo.se requieran del mismo.
Fecha de entrega: 22/05/2008Fecha de entrega: 22/05/2008
Algoritmos y Estructuras Algoritmos y Estructuras 
de Datosde Datos
Parte Parte –– PrPráácticactica
29 29 -- Mayo Mayo -- 20082008
Subprogramas/Subprogramas/SubagoritmosSubagoritmos
TTéécnica cnica ““Divide y VencerDivide y Vencerááss””
Dividir el problema principal en problemas mDividir el problema principal en problemas máás s 
pequepequeñños, mos, máás sencillos, mas fs sencillos, mas fáácil de resolver.cil de resolver.
Cada parte independiente (subproblema) se denomina Cada parte independiente (subproblema) se denomina 
““Subprogramas o Subalgoritmos””
Subprogramas/Subprogramas/SubalgoritmosSubalgoritmos
Existen dos tipos importantes de Subprogramas:Existen dos tipos importantes de Subprogramas:
•• Funciones Funciones 
•• ProcedimientosProcedimientos
Programa Programa 
PrincipalPrincipal SubprogramaSubprograma
retorno - 1
llam
ada 
o 
invo
caci
ón -
2
llamada o invocación - 1
retorno - 2
FuncionesFunciones
MatemMatemááticamente es una operaciticamente es una operacióón que toma uno n que toma uno 
o mo máás valores llamados argumentos y produce un s valores llamados argumentos y produce un 
valor denominado resultado.valor denominado resultado.
Las funciones solo devuelven un Las funciones solo devuelven un úúnico valor. nico valor. 
Las funciones internas son las incorporadas al Las funciones internas son las incorporadas al 
sistemas.sistemas.
Las funciones externas son las definidas por el Las funciones externas son las definidas por el 
usuario.usuario.
DeclaraciDeclaracióón de Funcionesn de Funciones 
((JustJust Basic)Basic)
functionfunction Raizcuadrada(valorRaizcuadrada(valor))
RaizcuadradaRaizcuadrada = valor ^ 0.5= valor ^ 0.5
endend functionfunction
Llamada de FuncionesLlamada de Funciones 
((JustJust Basic)Basic)
Ejemplo:Ejemplo:
PrintPrint ““La Raiz Cuadrada de 120 La Raiz Cuadrada de 120 
es:es:””;Raizcuadrada(120);Raizcuadrada(120)
ProcedimientoProcedimiento
Es un programa autEs un programa autóónomo que ejecuta nomo que ejecuta 
determinadas acciones devolviendo cero, uno o determinadas acciones devolviendo cero, uno o 
varios resultados acorde a los parvarios resultados acorde a los paráámetros metros 
enviados.enviados.
Es Es úútil cuando se necesita que determinado til cuando se necesita que determinado 
proceso se ejecute y devuelva el control al proceso se ejecute y devuelva el control al 
programa principal, por ejemplo ordenar una programa principal, por ejemplo ordenar una 
serie de nserie de núúmeros.meros.
DeclaraciDeclaracióón de Procedimientos n de Procedimientos 
((JustJust Basic)Basic)
subsub MensajeMensaje
printprint ““Sr. Usuario la informaciSr. Usuario la informacióón n 
ingresado es incorrectaingresado es incorrecta””
endend subsub
callcall MensajeMensaje
Llamada de ProcedimientoLlamada de Procedimiento 
((JustJust Basic)Basic)
DefiniciDefinicióón Variables n Variables 
Variable LocalVariable Local es aquella que estes aquella que estáá
declarada y definida dentro del declarada y definida dentro del 
subprograma.subprograma.
Variable GlobalVariable Global es aquella que estes aquella que estáá
declara para todo el programa o declara para todo el programa o 
algoritmos principal.algoritmos principal.
ParParáámetros por Valormetros por Valor 
((JustJust Basic)Basic)
x=5.3x=5.3y=7.2y=7.2
resultado=resultado=sumaentero(x,ysumaentero(x,y))
printprint””xx==““;x;x
printprint””yy==““;y;y
printprint resultadoresultado
endend
functionfunction 
sumaentero(a,bsumaentero(a,b))
a = a = int(aint(a))
b = b = int(bint(b))
sumaenterosumaentero=a+b=a+b
endend fuctionfuction
ParametrosParametros por Referenciapor Referencia 
((JustJust Basic)Basic)
x=5.3x=5.3
y=7.2y=7.2
resultado=resultado=sumaentero(x,ysumaentero(x,y))
printprint””xx==““;x;x
printprint””yy==““;y;y
printprint resultadoresultado
endend
functionfunction 
sumaentero(byrefsumaentero(byref 
a, a, byrefbyref b)b)
a = a = int(aint(a))
b = b = int(bint(b))
sumaenterosumaentero=a+b=a+b
endend fuctionfuction
Ejemplo en Ejemplo en JustJust BasicBasic
En un CINECLUB de la ciudad de Córdoba se realizan 
proyecciones de películas de diferentes géneros. 
Cuando un cliente desea ver una película, se dirige a la 
boletería del cineclub y solicita la cantidad de entradas que 
necesita. El boletero pregunta al cliente si es socio, y en caso 
de serlo, solicita su número de documento y verifica su 
asociación, ya que a los socios se les realiza un descuento del 
30% del valor de las entradas (siempre y cuando tenga las 
cuotas al día). 
El boletero busca la proyección de la película solicitada y 
verifica que todavía existan entradas disponibles para la venta, 
en caso de ser así, realiza el cobro y registra la venta 
emitiendo un ticket que entrega al cliente/socio junto con las 
entradas. Los clientes que no son socios deben abonar el 
100% del valor de la entrada.
AnAnáálisis de Resolucilisis de Resolucióónn
ENTRADAENTRADA PROCESOPROCESO SALIDASALIDA
Ingreso de socio o 
cliente
Cantidad de 
entradas solicitadas
Cantidad de asiento 
en sala
El precio del boleto
Variable de cierre
Realizar descuento 30%
Descontar asientos según 
entradas vendidas
Contar entradas vendidas
Restar con respecto a a 
los asientos en sala
Sumar socio 
Sumar cliente
Sumar total de cada ticket
Ticket
Cantidad de entradas 
vendidas
Cantidad de asientos 
disponibles
Dinero total recaudado
Cantidad de boletos 
vendidos a Socio
Cantidad de boletos 
vendidos a Clientes
	Algoritmos y Estructuras de Datos
	Que debemos saber?
	Que es un Algoritmos?
	Definición de un Algoritmos
	Representación
	Tipos de Datos
	Tipos de Operaciones
	Elementos que se emplean para construir un algoritmo
	Elementos que se emplean para construir un algoritmo
	Elementos que se emplean para construir un algoritmo
	Elementos que se emplean para construir un algoritmo
	Presentación de Trabajo Práctico
	Algoritmos y Estructuras de Datos
	Subprogramas/Subagoritmos
	Subprogramas/Subalgoritmos
	Funciones
	Declaración de Funciones�(Just Basic)
	Llamada de Funciones�(Just Basic)
	Procedimiento
	Declaración de Procedimientos (Just Basic)
	Definición Variables 
	Parámetros por Valor�(Just Basic)
	Parametros por Referencia�(Just Basic)
	Ejemplo en Just Basic
	Análisis de Resolución

Continuar navegando