Está en la página 1de 14

1. Lenguajes de programacin ...................................................................................... 2. Caractersticas de los programas ............................................................................... 3. Diseo del programa ................................................................................................

- Fase de anlisis - Fase de programacin Edicin Compilacin Montaje - Fase de explotacin y mantenimiento Instalacin Mantenimiento 4. Modelos de programacin ........................................................................................ - Secuencial - Estructurada - A objetos 5. Algortimos 6. Datos de la programacin ......................................................................................... - Numricos - Lgicos - Alfanumricos - Constantes y variables 7. Operadores ............................................................................................................... - Asignacin - Aritmticos - Lgicos y relacionales 8. Sentencias de control ................................................................................................ - Seleccin - Iteracin 9. Anotaciones para diseo de algoritmos ..................................................................... - Diagramas de flujo - Pseudocdigo

Elaborado por: Profr. Javier Vargas Guerrero

1. LENGUAJES DE PROGRAMACIN
Los programas se escriben mediante lenguajes de programacin que conducen a expresar el algoritmo (problema a resolver) de una forma ordenada y programada. Existen 3 tipos de lenguajes: Lenguaje Mquina: Inteligibles por la mquina directamente, es decir que las ordenes escritas las procesa y realiza directamente la mquina. Estas instrucciones son cadenas binarias (0 y 1) que especifican las instrucciones a realizar y la memoria donde deben realizarse. Las instrucciones dependen directamente de la mquina donde se programan. Lenguaje Ensamblador: Sus instrucciones son NEMONICOS que indican la accin a realizar y su direccin de memoria donde se ejecutan. La programacin depende tambin de la mquina donde se programe. Ms sencillos que los lenguajes mquina. La mquina no entiende directamente las ordenes y es necesario traducir las ordenes a travs de un programa ensamblador. La construccin de los programas consta de 3 partes: Programa Fuente

Programa Traductor
(ensamblador)

Programa Objeto

Lenguajes de Alto Nivel: Lenguajes creados a partir de ensamblador. Basan la programacin en sentencias y funciones que realizan una operacin ya implementada en la creacin del lenguaje de programacin. Este tipo de lenguajes son los ms sencillos de leer y comprender. Son independientes de la mquina donde se programan. La mquina no puede entender directamente las sentencias y se necesita de un programa traductor y linkador para que la mquina pueda ejecutar las operaciones. Estos de lenguajes son Clipper, C, C++, Visual Basic, Pascal, Modula2, etc...

Elaborado por: Profr. Javier Vargas Guerrero

2. CARACTERSTICAS GENERALES DE UN PROGRAMA


Con el fin de facilitar la explotacin y el mantenimiento de un programa, es fundamental reunir un conjunto de caractersticas generales para obtener su mximo rendimiento en el menor plazo de tiempo y esfuerzo. Estas caractersticas son:

LEGIBILIDAD: Un programa debe ser claro y sencillo para facilitar su lectura y comprensin a las personas ajenas al programador (autor) de la aplicacin. De este modo existe la posibilidad de repartir las tareas de mantenimiento y explotacin. FIABILIDAD: Nuestra aplicacin debe ser un programa "robusto". Es decir, capaz de recuperarse frente a errores o usos inadecuados por parte del usuario y controlar todo posible error que pueda producirse en las distintas operaciones que realicen los dispositivos que se utilizan en la aplicacin. PORTABILIDAD: El diseo de la aplicacin debe permitir la codificacin en diferentes lenguajes utilizando para ello un diseo nico y universal, sin entrar en sentencias u operadores especficos de algn lenguaje en especial. MODIFICABILIDAD: Debe ser fcil y posible su instalacin en distintas mquinas. Facilitar al mximo su mantenimiento, modificacin y actualizacin para adaptarlo o mejorarlo a nuevas situaciones. Por ejemplo efecto 2000. Este apartado se le denomina por el termino coloquial "parcheado". EFICIENCIA: Aprovechar y no derrochar los recursos de la mquina. Esto lo conseguimos minimizando el uso de la memoria, el tiempo de proceso y el de ejecucin. No debemos dejarnos llevar por los ltimos y potentes mquinas que surgen da a da en el mercado. Siempre que podamos debemos pensar que disponemos de una mquina con pocos recursos.

3. DISEO DE UN PROGRAMA
Proceso que se sigue desde el planteamiento del problema o tarea, hasta que se tiene una solucin instalada. Consta del estudio y diseo de cada una de las operaciones a realizar por la aplicacin. En este proceso no es necesaria la utilizacin del ordenador. Todo diseo y anlisis consta de diferentes fases, siendo 3 fundamentales en la realizacin de un buen plan de trabajo.

Elaborado por: Profr. Javier Vargas Guerrero

FASE DE ANALISIS Esta fase consiste en el examen y descripcin detallada de cada uno de los aspectos y dispositivos que intervienen en la creacin y explotacin del programa. Debemos tener muy en cuenta los siguientes puntos: y y y y y Equipos informticos Personal informatico (en creacin y utilizacin) Estudio de datos de entrada Estudio de los resultados Relacin entre salida / entrada

FASE DE PROGRAMACIN Consiste en el diseo y desarrollo del algoritmo para la codificacin de la aplicacin. Como resultado del desarrollo obtenemos un conjunto de acciones (funciones) que sern traducidas por el compilador (proceso de compilacin) y enlazas con las libreras (proceso de linkado) para poder ser realizadas por la mquina. Las partes de este desarrollo son entrada de datos, proceso de datos y salida. Por este orden sin posibilidad de modificacin. FASE DE EXPLOTACIN Y MANTENIMIENTO Es el momento donde debemos ejecutar y probar la aplicacin sucesivas veces con diferentes datos para asegurar su correcto funcionamiento. Tambin comprobaremos el rendimiento optimo del programa. Esta fase comprende el mantenimiento de la aplicacin a lo largo de su vida til para poder adaptarlo ante cualquier circunstancia. Es decir, mejorar la aplicacin aadiendo nuevas funciones o mejorando su rendimiento.

4. MODELOS DE PROGRAMACIN
Los modelos de programacin es conocido tambin como metodologa de la programacin y consiste en los mtodos y tcnicas disciplinadas para desarrollar algoritmos cumpliendo con las caractersticas de los programas anteriormente expuestas. Existen 3 mtodos: SECUENCIAL: Modelo descendente, se base en una serie de descomposiciones sucesivas del algoritmo inicial que describen el repertorio de instrucciones que constituyen el programa. El programa quedara formado por una serie de mdulos consecutivos que realizaran una parte del algoritmo.

Elaborado por: Profr. Javier Vargas Guerrero

ESTRUCTURADA: Programacin basada en la secuencial aadiendo subrutinas y estructuras secuenciales, de iteracin y seleccin consiguiendo un programa con mdulos independientes y reutilizables desde cualquier parte del programa. Los lenguajes tienden a este tipo de programacin. A OBJETOS: Mismas caractersticas que los lenguajes estructurados, aadiendo nuevas funciones y mecanismos de trabajo, como los objetos (conjunto de variables y funciones), el encapsulamiento, el polimorfismo y la herencia. A travs de estos lenguajes se consigue un mejor rendimiento de los programas y una mayor seguridad en el tratamiento de los datos. Los lenguajes de ltima generacin tienden a ser orientados a objetos.

5. ALGORTIMOS
Qu es un Algoritmo? y Describe el mtodo para realizar una tarea. y Es una secuencia de instrucciones que, ejecutadas adecuadamente, dan lugar al resultado deseado. y Ejemplos de algoritmos no informticos: o Receta de cocina o Una partitura musical o Los planos con las instrucciones para construir una casa
Propiedades de un Algoritmo Finitud: Nmero finito de pasos Definibilidad: Cada paso definido de un modo preciso Conjunto de Entradas: Datos iniciales del algoritmo Conjunto de Salidas: Respuesta que obtenemos del algoritmo Efectividad: Las operaciones a realizar deben ser bsicas, para que el procesador pueda realizarlas de modo exacto y en tiempo finito.

Elaborado por: Profr. Javier Vargas Guerrero

6. TIPOS DE DATO, VARIABLES Y CONSTANTES


Los datos u objetos en un programa son aquellos que son modificados por las instrucciones. Mediante ellos podremos realizar el almacenamiento y manipulacin de la informacin que intervienen en el programa. Todos los datos u objetos tiene un identificador para referenciarlo, un tipo para indicar la informacin que puede tomar y valor que es la informacin que guardan. Los tipos de datos bsicos son:

VARIABLES TIPO
NUMEROS

VARIANTE
Decimal. Hexadecimal. Octal.

VALORES
cualquiera

EJEMPLO
numero=14

0 al 9 y letras A-Z numero=0x9 0 al 7 numero=06

BOOLEANOS Texto.

---

true / false cualquier texto Retroceso. cad=hola

CADENAS Caracteres Especiales

Retorno de carro. Movimientos de lnea. Espacios ...

Los objetos que estn destinados a guardar esta informacin son las variables y constates. Las variables y constantes son posiciones de memoria destinadas a guardar informacin que como hemos comentado tienen un identificador y un tipo. La diferencia entre la variable y la constante, es que, la primera puede admitir y cambiar su valor a lo largo de un mismo programa mientras que las constantes tendrn un valor fijo durante toda la ejecucin del programa y ser imposible su modificacin en tiempo de ejecucin.

7. OPERADORES
ASIGNACIN Es el signo "=". Se puede utilizar en cualquier expresin valida. A su lado izquierdo siempre tendr una variable a la cual se le asigna el valor. A la derecha puede ser una expresin valida como una constate, un valor, una variable, una funcin, o cualquier expresin aritmtica. Existe la posibilidad de realizar una asignacin mltiple: varible=valor; variable1=variable2=variableN=valor;

Elaborado por: Profr. Javier Vargas Guerrero

ARITMTICOS Utilizados para realizar cualquier operacin matemtica. Este tipo de operadores se utilizan con variables numricas o tambin para unir expresiones. En la siguiente tabla se muestran este tipo de operadores. OPERADOR DESCRIPCIN
Resta. Suma Multiplica Divide

ORDEN

+ * /

3 3 2 2

LOGICOS Y RELACIONALES Ambos operadores se utilizan en las sentencias de control, fuera de este tipo de sentencias no tienen ninguna utilidad. Los Lgicos se utilizan para unir varias condiciones dando como resultado una nica expresin. Los relacionales son utilizados para realizar comparaciones entre los objetos (variables, constantes, valores y funciones) de un programa.

OPERADORES RELACIONALES OPERADOR DESCRIPCIN


Menor que. Mayor que. Menor o igual. Mayor o igual Igual Distinto

OPERADORES LGICOS DESCRIPCIN


Y (AND) O (OR) NO (NOT)

ORDEN 5 5 5 5 6 6

ORDEN 10 11 1

< > <= >= == ---

Elaborado por: Profr. Javier Vargas Guerrero

8. SENTENCIAS DE CONTROL
Mecanismo por el cual, los lenguajes de programacin provocan que el flujo, avance y se ramifique en funcion de los datos que contienen sus objetos. Existen las sentencias de seleccin que ramifican el programa y las sentencias de iteracin de realizan una repeticin de un bloque de cdigo mientras que una condicin sea verdadera. SECUENCIALES Inicio Sentencia1 Sentencia2 .. Sentencia N Fin

CONDICIONALES Las sentencias de seleccin pueden ser simples o multiseleccin. En ambos casos la ejecucin atraviesa un conjunto de estados bolean de determinan las acciones a realizar. El modo de ejecucin de estas sentencias es comparar objetos para ver si la condicin o condiciones se cumplen. La sentencia de multiseleccin suelen usarse cuando el rango de valores es conocido y no muy amplio. Las simples para cualquier caso de comparacin. SIMPLE

si condicion(es)=verdadero entonces
ACCION ACCION ...

sino
ACCION ACCION ...

fin si

Elaborado por: Profr. Javier Vargas Guerrero

MULTISELECCION

si valor=const1 entonces
ACCION ACCION

fin si si valor=const2 entonces


ACCION ACCION

fin si si valor=const2 entonces


ACCION ACCION

si no
ACCION ACCION

fin si

DE ITERACIN Las sentencias de iteracin repiten el bloque de cdigo que tienen en su interior mientras la condicin o condiciones de salida sean verdad. Existen dos tipos de iteracin HASTA y MIENTRAS. Ambas pueden realizar las mismas operaciones. La utilizacin del primero suele coincidir que la condicin de salida sea un valor lmite y el segundo que su condicin sea un valor determinado. HASTA

repetir hasta valor


ACCION ACCION

fin repetir
MIENTRAS

repetir mientras condicion(es) = verdadero


ACCION ACCION

fin repetir

Elaborado por: Profr. Javier Vargas Guerrero

9. AOTACIONES PARA EL DISEO DE ALGORITMOS


DIAGRAMAS DE FLUJO Es la representacin grfica del desarrollo del algoritmo. Esta representacin nos ayudara a conocer la informacin que tenemos, donde la tenemos, que debemos hacer con ella y como presentarla. Esta representacin debe tener las cualidades de sencillez, claridad y normalizacin en su diseo. Las normas para presentar los organigramas son: y y y y y y El inicio y final del programa solo aparecen una vez. El camino se tomara de principio a fin de izquierda a derecha (en mismo nivel). No realizar cruces entre los distintos caminos. Para evitarlo usar los conectores. En la parte superior se encuentran los soportes de entrada. En la parte central estarn los procesos y operaciones a realizar. En la parte final se encontrara la salida de datos.

SIMBOLOGIA DIAGRAMA DESCRIPCIN Establece el INICIO y el FIN. Indica un PROCESO interno. Introduccin de datos por parte del usuario. SALIDA de informacin POR PANTALLA. Indica la continuidad de un diagrama. CONECTOR. Volumen de DATOS. Indica el SENTIDO del flujo Especifica una bifurcacin del flujo del programa. DECISIN.

SALIDA de informacin POR IMPRESORA. Indica un proceso externo. SUBRUTINA.

Elaborado por: Profr. Javier Vargas Guerrero

SENTECIAS DE CONTROL DIAGRAMA DESCRIPCIN

Sentencia de ITERACIN.

Sentencia de SELECCIN simple. Con clusula sino

Sentencia de SELECCIN mltiple. Con clusula sino.

Elaborado por: Profr. Javier Vargas Guerrero

EJEMPLO 1: Realizar un programa para calcular el rea de un rectngulo cuyos datos base y altura se leen del teclado y el resultado se visualizara en la pantalla. Se deber realizar mediante diagramas y pseudocdigo. INICIO INICIALIZAR VARIABLES BASE<-0 ALTURA<-0 AREA<-0 INTRODUCIR BASE ALTURA PROCESO: AREA<-BASE*ALTURA VISUALIZAR AREA FIN

EJEMPLO 2: Realizar un programa que obtenga el sueldo neto de un trabajador cuyo sueldo base se obtiene por teclado y teniendo en cuenta que si ese sueldo es mayor a 150.000pts tiene una retencin del 10%. INICIO INICIALIZAR VARIABLES BASE<-0 NETO<-0 RETEN<-0 INTRODUCIR BASE SI BASE > 150000 RETEN<-SUELDO_BASE*10/100 FIN SI NETO<- BASE-RETEN VISUALIZAR NETO FIN

Elaborado por: Profr. Javier Vargas Guerrero

EJEMPLO 3: Realizar un programa que calcule la cuota de kilmetros de un visitador mdico pidiendo los kilmetros por teclado. Sabiendo que se paga a 100pts si los kilmetros recorridos son menores o iguales a 200 y 150pts si el kilometraje es menor a 200.

INICIO INICIALIZAR VARIABLES KM<-0 TOTAL<-0 MAS200<-100 MENOS 200<-150 INTRODUCIR KM SI KM<=200 TOTAL<-KM*150 SINO TOTAL<-KM*100 FIN SI VISUALIZAR TOTAL FIN

EJEMPLO 4: Realizar un programa donde nos calcule el dinero total a devolver cuando se pide un crdito bancario. Teniendo en cuenta el estado civil del usuario a la hora de pedir el crdito. INICIO INICIALIZAR VARIABLES PRESTADO<-0 CIVIL<-0 CASADO<-1 SOLTERO<-2 VIUDO<-3 DIVORCIADO<-4 SEPARADO<-5 TOTAL<-0 INTRODUCIR PRESTADO,CIVIL

Elaborado por: Profr. Javier Vargas Guerrero

SI CIVIL=CASADO ENTONCES TOTAL=PRESTADO*CASADO FIN SI SI CIVIL=SOLTERO ENTONCES TOTAL=PRESTADO*SOLTERO FIN SI SI CIVIL=VIUDO ENTONCES TOTAL=PRESTADO*VIUDO FIN SI SI CIVIL=SEPARADO ENTONCES TOTAL=PRESTADO*SEPARADO FIN SI SI CIVIL=DIVORCIADOENTONCES TOTAL=PRESTADO*DIVORCIADO SI NO

TOTAL=0 FIN SI VISUALIZAR TOTAL FIN

EJEMPLO 5: Realizar un programa que sume los valores que se van introduciendo por teclado mientras que el usuario no introduzca cero. Debemos ir mostrando el subtotal cada valor introducido. INICIO INICIALIZAR VARIABLES TOTAL<-0 VALOR<-0 REPETIR HASTA VALOR=0 INTRODUCIR VALOR TOTAL=TOTAL+VALOR VISUALIZAR TOTAL FIN REPETIR VISUALIZAR TOTAL FIN
Elaborado por: Profr. Javier Vargas Guerrero