Programacion I
Programacion I
Implementacin
Mantenimiento
Fases de Programacin
Fases de Programacin
Fases de Programacin
3. Diseo de la Solucin.
En esta fase se disea la lgica de la solucin a usar, o sea,
como har el programa la tarea que se desea automatizar
usando los datos de entrada para generar los datos de
salida.
Fases de Programacin
4. Codificacin.
En este paso se traduce el algoritmo ya estructurado,
verificado y comprobado a mano, al lenguaje de
programacin que vaya a utilizarse. Slo se convierten las
acciones del algoritmo en instrucciones usando la sintaxis de
un lenguaje particular.
Fases de Programacin
5. Prueba y Depuracin.
Despus de compilado el programa, este es sometido a
pruebas a fin de determinar si resuelve o no el problema
planteado en forma satisfactoria. Para ello, se le suministran
datos de prueba y se verifican los resultados.
Fases de Programacin
6. Documentacin.
La Documentacin es la gua o la comunicacin escrita en
sus variadas formas, ya sea en enunciados, procedimientos,
dibujos o diagramas y sirve para ayudar a comprender o usar
un programa o para facilitar las futuras modificaciones.
Fases de Programacin
7. Implementacin.
El programa ya probado, revisado y mejorado se considera
terminado y puede utilizarse con un alto grado de confianza
para resolver los problemas que dieron origen a su creacin.
Fases de Programacin
8. Mantenimiento.
El programa debe revisarse cada cierto tiempo para realizar
los ajustes necesarios. Estos cambios pueden deberse por la
dinmica propia del problema, por la naturaleza del cdigo,
las exigencias del tiempo o las modernas necesidades que
podran presentarse con frecuencia, ya que se considera que
ningn problema es esttico.
Programacin Orientada a
Objeto
LaProgramacin Orientada a Objetos es un paradigma de
programacin que define los programas en trminos de
clases de objetos, que son entidades que
combinanestado(propiedades o datos), comportamiento
(procedimientos omtodos) eidentidad(propiedad del
objeto que lo diferencia del resto). Los objetos colaboran
entre ellos para realizar tareas, lo que permite que los
programas y mdulos sean ms fciles de escribir, mantener
y reutilizar.
Ventajas de la Programacin
Orientada a Objeto
Reusabilidad. La nocin de objeto permite que programas
que traten las mismas estructuras de informacin reutilicen
las definiciones de objetos empleadas en otros programas e
incluso los procedimientos que los manipulan. De esta forma
el desarrollo de un programa puede ser una simple
combinacin de objetos ya definidos donde estos estn
relacionados de una manera particular.
Desventajas de la
Programacin
Orientada a Objeto
Limitaciones para el Programador. La mayora de los
programadores no estn familiarizados con los conceptos de
la tecnologa.
Propiedades de la
Programacin
Orientada a Objeto
2. Encapsulacin.
Tambin llamada "ocultacin de la informacin", es una
tcnica que permite localizar y ocultar los detalles de un
objeto, previniendo que un objeto sea manipulado por
operaciones distintas de las definidas.
Propiedades de la
Programacin
Orientada a Objeto
3. Modularidad.
Proceso de crear partes de un todo que se integran
perfectamente entre s para que funcionen por un objetivo
general, y a las cuales se les pueden agregar ms
componentes que se acoplen perfectamente al todo, o
extraerle componentes sin afectar su funcionamiento. En el
caso que se requiera actualizar un mdulo, no hay necesidad
de hacer cambios en otras partes del todo.
continuacin
Propiedades de la
Programacin
Orientada a Objeto
4. Jerarqua.
Lajerarquaes una propiedad que permite una ordenacin
de las abstracciones. De la misma forma, las distintas clases
de un programa se organizan mediante la jerarqua. La
representacin de dicha organizacin da lugar a los
denominados rboles de herencia:
Propiedades de la
Programacin
Orientada a Objeto
5. Polimorfismo.
Polimorfismo es la capacidad del cdigo de un programa para
ser utilizado con diferentes tipos de datos u objetos. Tambin
se puede aplicar a la propiedad que poseen algunas
operaciones de tener un comportamiento diferente
dependiendo del objeto (o tipo de dato) sobre el que se
aplican.
Propiedades de la
Programacin
Orientada a Objeto
6. Herencia.
Herencia es una propiedad que permite que los objetos sean
creados a partir de otros ya existentes, obteniendo
caractersticas (mtodos y atributos) similares a los ya
existentes, es decir, crear clases derivadas a partir de clase
base.
Operadores:
1) Aritmticos: +, -, *, /
2) Operacin resto: Devuelve el residuo de una divisin
entera. MOD, %
3) Divisin entera: Devuelve el cociente de una divisin
entera. DIV, \.
4) Potencia: ^
Reglas de precedencia:
Una expresin entera segn como la evale pueda dar
diferentes valores.
La solucin es aplicar prioridad entre los operadores, de
modo que ante la posibilidad de usar varios siempre aplicar
el de mayor prioridad. Entre dos operaciones con la misma
precedencia hay que usar la regla de la asociatividad
(primero la izquierda). La prioridad es:
Expresiones Lgicas
Operadores:
1) Relacionales: <, <=, >, >=, =, <>, !=
2) Lgicos: Y and &&, O or !!, No not ~!
Tablas de Verdad
Estructura General de un
Algoritmo
Declaracin de Variables
Estructuras Secuenciales
1. Asignacin.
La asignacin consiste en el paso de valores o resultados a
una zona de la memoria. Dicha zona ser reconocida con el
nombre de la variable que recibe el valor.
Estructuras Secuenciales
Estructuras Secuenciales
continuacin
Estructuras Secuenciales
2. Entrada (Lectura).
La Entrada o Lectura es equivalente a la asignacin en
cuanto que va a haber una variable que recibe un valor, pero
este valor no resulta de evaluar ninguna expresin, sino que
el valor lo vamos a leer de un dispositivo externo de entrada.
Estructuras Secuenciales
3. Salida (Escritura).
La Salida o Escritura muestra el valor de una variable en un
dispositivo externo de salida.
Estructuras Condicionales
1. 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
continuacin
Estructuras Condicionales
2. 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
continuacin
Estructuras Condicionales
3. Mltiples.
Las estructuras de comparacin mltiples son tomas de
decisin especializadas que permiten comparar una variable
contra distintos posibles resultados, ejecutando para cada
caso una serie de instrucciones especificas. La forma comn
es la siguiente:
Si <condicin> entonces
Accin(es)
Si no
Si <condicin> entonces
Accin(es)
Fin-si
Fin-si
Estructuras Cclicas
Estructuras Cclicas
1. Para.
Ciclo en que el nmero de iteraciones se conoce antes de
ejecutarse. El ciclo lleva asociada una variable denominada
variable ndice, a la que se le asigna un valor inicial y se
determina cual va a ser su valor final y adems se establece
como va a incrementar o decrementar en cada iteracin,
operacin que se realiza en forma implcita (lo hace por
defecto).
Estructuras Cclicas
2. Mientras Que.
Ciclo que repetir un proceso durante N veces, donde N
puede ser fijo o variable. Para esto, la instruccin se vale de
una condicin que es la que debe cumplirse para que se siga
ejecutando. Cuando la condicin ya no se cumple, entonces
ya no se ejecuta el proceso.
Estructuras Cclicas
3. Repetir Hasta.
Ciclo que repetir un proceso durante N veces, donde N
puede ser fijo o variable, hasta que la condicin sea
verdadera. Como la condicin se evala al final, incluso
aunque la primera vez ya sea verdadera, el bucle se
ejecutar al menos una vez.
Repita
Accin(es)
Hasta <condicin>
Ejemplos
Ejemplos
Hallar A+B-C+100.
continuacin
Ejemplos
Obtener (a-b)(a+b).
Ejercicios
Ejemplos:
continuacin
Arreglos Unidimensionales
Donde:
nombreVector: Es el nombre del vector.
Posiciones: Son adyacentes (consecutivas) y en cada una
se almacenar un dato.
n: Es el tamao o longitud del vector.
Dato: Es el elemento (informacin) que se guarda en
cadaposicin del vector.
Referencia a los Datos
Mtodo de Burbuja
Mtodo de Seleccin
Mtodo de Insercin
Bsqueda Secuencial
for(i=j=0;i<N;i++)
if(array[i]==elemento)
{
solucion[j]=i;
j++;
}
Bsqueda Binaria
Bsqueda Binaria
int desde,hasta,medio,elemento,posicion;
int array[N];
for(desde=0,hasta=N-1;desde<=hasta;)
{if(desde==hasta) // si el array slo tiene un
elemento:
{if(array[desde]==elemento) // si es la
solucin:
posicion=desde; // darle el valor.
else // si no es el valor:
posicion=-1; // no est en el array.}
medio=(desde+hasta)/2; // Divide el array en
dos.
if(array[medio]==elemento) // Si coincide con
el central:
{posicion=medio; // ese es la solucin}
else
Ejercicios
Ejercicios
Ejemplos:
tablas= array [1..x,1..y] of real;
continuacin
Arreglos Bidimensionales
Ejercicios