PROGRAMACIN GRADO
DCIMO TEMA 1:
CONCEPTOS BSICOS
Unalgoritmoes una secuencia, finita y ordenada de
instrucciones que han de seguirse para resolver un problema.
Un programa normalmente implementa (traduce a un lenguaje
de programacin concreto) uno o ms algoritmos. Un algoritmo
puedeexpresarsededistintasmaneras:enformagrfica,como
undiagramadeflujo,enformadecdigocomoenpseudocdigo
ounlenguajedeprogramacin,enformaexplicativa,etc.
ALGORITMO: Nombre
El nombre en latn de
algoritmo proviene de la
traduccin que realiz
Fibonacci, de la obra del
matemtico rabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.
ALGORITMO
Eselmtodopararesolverproblemas.Es
una serie de operaciones detalladas a
ejecutarpasoapasoyqueconducenala
resolucin de un problema. Conjunto de
reglas o la forma de describir la solucin
del problema. Es una descripcin de
accionesquedebenserejecutadasyuna
descripcin de los datos que son
manipuladosporesasacciones.
ALGORITMO: Caractersticas
LEGIBLE
CONCRETO
EFICIENTE
FINITO Debe realizar las
Debe
DebeDebe ser...
Debe
Debe
Debe
Debe
generar
indicar
tener
funciones
de
resultado
realizar
estarun
operaciones
estar
estructurado
realizacin
elbien
orden
mismo
las
terminar
libre
con un
usiempre
deen
operaciones
para
de cada
que
su
mnimo
errores.
algn
de momento
utilizacin
(Validado)de
para
fcil
lasentendimiento.
se
que
paso.
siga.
fue creado.
recursos.
NO
DEFINIDO
AMBIGUO
PRECISO
PARTES DE UN ALGORITMO
Conformaelgrupode Procesos
instruccionesque
realizanlasoperaciones
conlosdatos.
Estructuras de
Control
Determinanla
organizacindelas
instruccionesque
debenserrealizadas.
ALGORITMO: Elementos
Lasinstrucciones
quesevana
realizardebenestar Definicin
bienestructuradasy devariablesyconstantes
tenerunorden
lgico,conelfinde
evitar Proceso
Entrada Salida
inconsistenciasen Estructuras
elresultado. decontrol
Esnecesarioidentificarque Cuerpodelalgoritmo
datossenecesitaningresar,
cualessirvendeformaauxiliary
cualessevanagenerar.
ALGORITMO: Quienes
pueden hacer un algoritmo?
Todapersona,
implcitamentey
diariamentediseay
realizaalgoritmos,para
darsolucina
situacionescotidianas
deformanatural.
Sinembargoelprogramador,diseael
algoritmoconsientedequealrealizar
cadapasoobtendrlasolucindeun
problemaespecfico.
ALGORITMO: Cmo se hace?
Elprogramadorsinembargo,loharadeesteotromodo:
Buscarlapginadecineseneldiario
1
local,confechadehoy
2 Revisarlacarteleradearribaabajoydeizquierda
aderecha,buscandoentrelosttulosexistentes.
3 SiseencuentraelttuloLaGuerradelas
Galaxias,noseguirbuscando.Apuntarel
nombredelcine,sudireccinyloshorarios
Sinoseencuentraelttuloenlacartelera,
4
esperarunasemanayvolveraempezarel
procesoapartirdelpunto1deestalista.
ALGORITMO: Otro ejemplo
Encenderunautomvil
1.Ponerlallave.
2.Asegurarsequeelcambioestenneutro.
3.Pisarelelacelerador.
4.Girarlallavehastalaposicinarranque.
5.Sielmotorarrancaantesde6seg,dejar
lallaveenlaposicinencendido.
6.Sielmotornoarrancaantesde6seg,
volveralpaso3(comomximo5veces).
7.Sielautonoarranca,llamaralagra.
Losalgoritmossecreanpararesolver
problemas.
Esimportantequejuntoalalgoritmo,
ALGORITMO:
describamosclaramenteelproblemaqueste
nospermiteresolver.
Requisitos
Porejemplo:
Si se requiere hallar la velocidad de un Debe Definirse el
automvil, es necesario, definir si la distancia problema
debeserenmetros,kilmetros,etcyeltiempo
estar dado en segundos u horas, ya que la
velocidad puede representarse en Km/h Debe estar dentro
mts/seg. de contexto
Esunatcnicaquepermite Inicio
representargrficamentelas Instruccin1
operacionesyestructurasquese Instruccin2
vanarealizar,medianteuna Sicondicinentonces
simbologaestndar,conunnico Instruccin3
.
.
.
puntodeinicioyunodefinalizacin.
Instruccinn
Fin
PSEUDOCDIGO: Cmo se Hace?
Cadainstruccinquesevaarealizar
1
debecomenzarporunverbo,ejemplo:
Muestre,Haga,Lea,etc.
2 Sedebemantenerunaidentacinosangra
sobreelmargenizquierdoparaidentificar
fcilmenteelcomienzoyfinaldelasestructuras
3 Larepresentacindelasestructurasson
similaresuhomnimasdeloslenguajesde
programacin,ejemplo:inicio,fin,mientras
que,repita_hasta,si_entonces_sino,etc.
PSEUDOCDIGO:Cmo se Hace?
Inicio : Denota el punto de inicio del algoritmo.
Ciclo
Ciclo
Ciclo Para
Mientras
Hasta
..
. ..
..
Para v=valini,v=valfinal,inc
..
Instrucciones
Repita
v=valini,v=valfinal,incremento Mientras que condicin
Mientras
Fin Para que condicin
Instrucciones .. Instrucciones
Instrucciones
No . Hasta que condicin
Condicin Fin Mientras
. .
v:variable
..
valini:valorinicial
Instrucciones No ..
Si valfinal:valorfinal
Condicin inc:incremento
Instrucciones
Si
SIMBOLO, REPRESENTACIN Y
SIGNIFICADO DIAGRAMA DE FLUJO
Representacin grfica del algoritmo:
diagramas de flujo
Smbolo Representacin Significado
Diagramacin
Prueba de escritorio
ALGORITMO: Definicin del
Problema
Estdadaporelenunciadodel
Estdadaporelenunciadodel
problema,elculdebeserclaroy
problema,elculdebeserclaroy
completo
completo
Esimportantequeconozcamos
Esimportantequeconozcamos
exactamentequesedesea.
exactamentequesedesea.
Mientrasquestonosecomprenda,no
Mientrasquestonosecomprenda,no
tienecasopasaralasiguienteetapa.
tienecasopasaralasiguienteetapa.
ALGORITMO: Anlisis del Problema
Losdatosde
entradaquenos Recursos
suministran Frmulas
Proceso
rea
de
Trabajo
Losdatosde
salidao
resultados que
Entendidoelproblemapara seesperan
resolverloesprecisoanalizar
ALGORITMO: Seleccin de Alternativa
Solucin..1
Solucin..3
Sedebetenerencuenta
elprincipiodequelas
cosassiempresepodrn
hacerdeunamejor
forma.
Solucin..2
Unavezque
sabemos
cmoresolverel
problema Plasmarla
solucion
medianteel
Pseudocdigo
ALGORITMO: Prueba de Escritorio
Estapruebaconsisteen:
Se
Es utiliza
Recomendable para
Al realizar lo anterior se puede
Dardiferentesdatos
corroborar
comprobar
que el
Dardiferentesdatosdeentrada
si el algoritmo es
deentradaalprograma
yconsiderartodoslosposibles
algoritmo correcto plasmado
o
casos,anlosdeexcepcino
si hay necesidad
en cualquier
noesperados,paraasegurar
de hacer ajustes
herramienta presenta
seguirlasecuenciaindicada
(volver al paso anterior)
queelprogramanoproduzca
la solucin
erroresenejecucincuando al
sepresentenestoscasos.
problemainicial
hasta
obtenerlosresultados
ALGORITMO: Conceptos
Tipo
Constante
Variable
Dato
de Dato
Correspondealtipode
Correspondeaun
Correspondeaun
valorquepuede
espaciodememoriaque
Minimapartedelainformacin.
espaciodememoriaque
almacenarseenun
almacenaundatoque
Serefierealoselementosque
almacenaundatoque
espaciodememoria
seutilizanenlosalgoritmos
dentrodelprogramaen
dentrodelprogramaen
definidoyalacantidad
pararealizaralgunaoperacin
ejecucinmantiene
ejecucincambiaovara
deespacioquerequiere
sobreestos.
siempresucontenido
paraalmacenarunvalor.
sucontenido(valor)..
(valor).
ALGORITMO: Tipos de Datos
Boleano
Real cadena
Lgicos
Entero Caracter
Numricos Carcter
Tipos
de
Datos
ALGORITMO: Operadores
+ Aritmticos
-
>=
>
< / %
<= =
Relacionales ^
!= No Lgicos
<> Y &&
O ||
Programa de Aplicacin
Programaquepermiteresolverlaecuacindeprimergrado
AlgoritmoEC1erGrado
Programa
Variables
quepermite
a,b,xdetipoentero
resolverla
Inicio
ecuacinde
Escribir(IngresevaloresdeEC)
primergrado
Leer(a,b)
Sia=0entonces #include<stdio.h>
escribir(Error) inta,b,x;
sino main()
Inicio {
x=-b/a printf(IngresevaloresdeEC);
Escribir(Lasolucines:,x) scanf(%d%d,&a,&b);
ax+b=0 Fin ifa==0printf(error);
Escribir(Finprograma) else
Fin {
x=-b/a;
a printf(Lasolucines%d:,x);
? x=-b/a }
b printf(Finprograma);
}
EJEMPLODEALGORITMOS
Algoritmo:Secuenciaordenadadeaccionesprimitivasquerealizanuntrabajo.
Ejemplos:
Clculo de la media aritmtica de
Ir al trabajo dos nmeros con una calculadora
1.Levantarse 1.PulsarlateclaAC
2.Teclearelprimernmero
2.Darseunaducha 3.Pulsarlatecla+
3.Vestirse 4.Teclearelsegundonmero
4.Desayunar 5.Pulsarlatecla+
6.Pulsarlatecla/
5.Tomarelbus 7.Teclearelnmero2
(transporte) 8.Pulsarlatecla=
Bsqueda Secuencial
Consiste en ir comparando el
elemento que se busca con cada
elemento del arreglo hasta que se
encuentra.
0123456789
I N F O M T I C A
ndiceresultado=4
M M M M M
1
Ordenamiento Burbuja
El algoritmo consiste en que los
elementos ms pesados se
hundan y los ms livianos salgan a
flote.
25 25 25 15 15 1
32 15 15 25 1 15
15 32 1 1 25 25
1 1 32 32 32 32
1
Un primer ejemplo de algoritmo
Elsiguientealgoritmocalculaelreayelpermetrodeunrectngulo
Datosdeentrada:bya(baseyaltura) Anlisisresumido
Datosdesalida:arype(reaypermetro) delproblema
Procesos:ar=b*a,pe=2*(b+a)
1. Inicio
2. Leerbaseyaltura(b,a)
3. ar b*a
4. pe2*(b+a)
5. Escribirreadelrectngulo:,ar
6. EscribirPermetrodelrectngulo:,pe
7. Fin
ACTIVIDADES
1. COPIARDIAPOSITIVASENELCUADERNO.
2. DESARROLLARLOSSIGUIENTESALGORITMOSEN
ELCUADERNO(Llegaralcolegio,
3. REALIZAREXAMENENELSIGUIENTELING:(Copiar
enelcuadernopreguntasyrespuestas)
http://www.creartest.com/hacertests-63959-EXAMEN_
DE_ALGORITMICA.php
4. REALIZARELSIGUIENTETEST:(Copiarenelcuaderno
preguntasyrespuestas)
http://www.daypo.com/test-logica-algoritmos.html
5. REALIZARTEST:(Copiarenelcuadernopreguntasy
respuestas)
GENERALIDADES SOBRE LOS
ALGORITMOS
Describir los pasos para cruzar la calle. Describa los pasos para cambiar un
bombillo quemado.
Describa los pasos para llevar a una Describa los pasos para cambiar la
amiga a cine. llanta pinchada de una cicla.
PALABRAS CLAVES
Computadora,Hardware,Software,Informtica,
Cdigobinario,Perifricos,Memoria,
Programacindecomputadoras,programador,
Programacinestructurada,Lenguajede
programacin,Interprete,Compilador,Variable,
Constante,Diagramadeflujo,Diagramasde
flujo,Algoritmos,Tomadedecisin,Ciclos,
Funciones