Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Es preciso servirse de todas las ayudas del entendimiento, de la imaginacin, de los sentidos y de la memoria, bien sea
para tener una intuicin distinta de las proposiciones simples, bien sea para establecer entre las cosas que uno busca y las
que uno sabe una vinculacin adecuada que permita reconocerlas, bien sea para encontrar las cosas que deben ser
comparadas entre s, sin descuidar ningn recurso del ingenio o industria humanos.
Ren Descartes Reglas para la direccin de la mente Regla XII - 1628.
1 59 4
+
+
3
14
3
, entonces se
1
3
se pierde en
Pag. 2-2
A PROPSITO
2.3 Algoritmos.
Es bueno aclarar primero que un algoritmo es importante
en el estudio de la programacin porque, si bien el
mtodo algortmico produce algoritmos, el presente curso
pretende, entre otras cosas, que el estudiante produzca
programas de computacin. Y un programa de
computacin no es otra cosa que la expresin en lenguaje
de programacin de un algoritmo, por lo que el proceso
de resolucin de problemas con el computador comienza
con el desarrollo de algoritmos.
Tambin es bueno definir primero lo que es un
procedimiento o una receta: un conjunto de instrucciones
o de tareas que ejecutados siguiendo un orden
preestablecido o establecido por el mismo procedimiento,
Programacin con Delphi
2.4.1
Pag. 2-3
2.4.2
A PROPSITO
Ejemplo 2-1
Examnese el siguiente problema: Dadas dos rectas por las
coordenadas de dos de sus puntos, ambas rectas inclinadas,
elabore un algoritmo para determinar si esas rectas se
interceptan y, si lo hacen, determine las coordenadas del punto
de interseccin.
Primera parte: Anlisis del problema.
DATOS ........ Las dos rectas
coordenadas
de
dados
dos
por
de
las
sus
Pag. 2-4
y3 y1 + PAx1 PBx3
(PA PB)
Ordenada
del
interseccin:
punto
de
yint = PA(xint-x1)+y1
A PROPSITO
2.4.3
Codificacin
2.5
Pseudocdigo.
Ejemplo 2-2
Examnese el siguiente problema: Dado un nmero entero
positivo, elaborar un algoritmo para determinar si el nmero
dado es primo.
Primera parte: Anlisis del problema.
DATOS ...........El nmero dado, que se llamar
N
INCGNITAS ......Una caracterstica del nmero:
si es primo o no.
RESTRICCIONES ...El nmero N deber cumplir con
la condicin de ser entero ya
que el concepto de nmero
primo se aplica slo a los
nmeros enteros.
FRMULAS ........El concepto de nmero primo es
un
concepto
relativo
a
divisibilidad de nmeros. Un
Pag. 2-5
2.6
Comprobacin manual de
algoritmos: Corrida en fro.
Ejemplo 2-3
Examine los valores que toma la variable B en las siguientes
tablas que representan las corridas en fro del algoritmo del
ejemplo 2-2: la primera con un nmero primo y la segunda
con un nmero que no lo es, y observe en la segunda tabla
que, apenas se verifica que el nmero es divisible entre 2, se
imprime el mensaje NO ES PRIMO y termina la ejecucin
del algoritmo.
N
7
2.7
B
2
3
4
5
6
7
Salida
SI es primo
N
9
B
2
3
Salida
NO es primo
Diagrama de Flujo.
instrucciones.
Esta
representacin
permite
al
programador reconocer rpidamente y manipular
grficamente tanto esquemas de instrucciones como la
secuencia de ejecucin de estas, de modo que la
concepcin o la modificacin de un grupo de ellas se
hace ms fcil. Tambin adapta al programador novato al
modo de desarrollar los algoritmos tomando en
consideracin el uso de pasos fcilmente adaptables a
instrucciones en lenguaje de computacin.
Cuando se trabaja con diagramas de flujo y con lenguajes
de programacin, se acostumbra utilizar el trmino
instruccin en lugar del trmino paso debido a que una
instruccin conlleva la idea de una orden dada al
computador para que ste ejecute una tarea. Como se
mencion al final del ejemplo 2.1, existen tipos de
instrucciones, cada uno de estos con caractersticas que
permiten clasificarlos segn la labor realizan. En la
siguiente tabla se puede observar no slo algunos de estos
tipos, sino tambin del smbolo correspondiente.
Pag. 2-6
Ejemplo 2-4
Observe a continuacin el diagrama de flujo correspondiente al problema del ejemplo 2.2, el cual muestra adems, las instrucciones
correspondientes a los pasos desarrollados en el mencionado ejemplo.
INICIO
no
Leer N
PASO 1:
N>0 y N
entero?
PASO 2:
PASO 3:
PASO 4:
PASO 5:
PASO 6:
Imprimir "Si
es primo"
PASO 7:
FIN
PASO 8:
Fin.
si
B2
N es divisible
entre B?
si
no
B B +1
si
B < N?
Imprimir "No
es primo"
no
Preguntas de repaso
1. Qu es, en programacin, una variable? Tiene sta
el mismo significado que en lgebra?
2. Cree usted que un programa puede procesar un valor
que no est almacenado en una variable?
3. Qu es un procedimiento? Qu es una receta? Qu
es un algoritmo? Puede considerarse el conjunto de
los algoritmos como un subconjunto de los
procedimientos?
4. Cules son las caractersticas de un algoritmo? Cree
usted que un algoritmo sea slo para construir
programas de computacin?
5. Cuntos y cules son los pasos del Mtodo
Algortmico? Describa brevemente cada uno de ellos.
6. Puede afirmarse que el anlisis de un problema se
reduce a un proceso de identificacin de elementos?
Por qu?
7. En qu consiste el diseo de un algoritmo? En
cuntas etapas se lleva a cabo? Una vez diseado,
qu paso sigue?
8. Cmo cree usted que influye el entrenamiento del
programador en su habilidad para disear algoritmos?
9. Qu es brainstorming? Qu son los mapas
mentales? Qu otras tcnicas de ayuda para
resolucin de problemas conoce usted? Cree usted
que todas estas tcnicas son individuales o de grupo?
10. Qu son las estructuras de datos? Cmo influyen en
el diseo de un algoritmo?
11. En qu consiste el proceso de descomposiciones
sucesivas? Es siempre necesario aplicarlo al diseo
de un algoritmo?
12. Cree usted que, una vez codificado un algoritmo, ha
terminado el proceso de resolucin de un problema?
Explique.
13. Qu es pseudocdigo? Por qu es til
representando algoritmos?
14. Es obligatoria la numeracin de los pasos en un
pseudocdigo? Si no, cmo se garantiza la ejecucin
secuencial de los pasos?
15. Qu es corrida en fro? Por qu se dice que sta es
una comprobacin manual? Cmo cree usted que se
Pag. 2-7
Problemas propuestos
1. Escribir procedimientos o algoritmos para llevar a
cabo las siguientes tareas. Diga en cada caso si se
trata de un algoritmo o de un procedimiento:
Sacar la cdula de identidad
Organizar una fiesta de cumpleaos
Pintar su casa o apartamento
Construir una casa
Calcular el punto medio de un segmento de recta
conociendo las coordenadas de los extremos.
Graficar una funcin
Preparar una pizza
Reparar la grifera de un lavamanos
Redactar una carta de presentacin comercial.
Redactar el Curriculum Vitae.
Cambiar un caucho.
Elaborar un informe de inventario.
Jugar a la vieja.
Jugar al billar.
Jugar ajedrez.
Jugar Pker.
2. Dado un tringulo por las coordenadas de sus
vrtices, cmo se averigua si en su interior existen
puntos con coordenadas enteras?
3. Dados dos puntos en el plano por sus coordenadas
(x1, y1) y (x2, y2), cmo se escribe la ecuacin de la
recta que pasa por ellos, cul es la longitud del
segmento que determinan y cules son las
coordenadas del punto medio de dicho segmento.
4. Escriba un algoritmo para calcular el monto a pagar a
un trabajador en una semana si se conocen los
siguientes datos:
las horas normales de trabajo se pagan a 2000 Bs
la hora
Ing. Jos Ricardo Vargas
Pag. 2-8
=
=
=
=
b1
b2
b3
b4