You are on page 1of 13

DESARROLLO DE UN PROGRAMA

Independiente a la naturaleza del problema a resolver, la descripcin de general de cada programa incluye a lo menos los siguientes conceptos: Tipo de lenguaje de programacin Descripcin del programa con indicacin de las tareas a realizar y del algoritmo de resolucin Frecuencia de procesamiento Entradas y salidas del programa Especificaciones detalladas de clculos, tablas, etc. Limitaciones y restricciones (orden de entrada/salida, tiempo de respuesta, etc.) Una vez conocidos los conceptos anteriores, se procede a la escritura del programa. Las personas que escriben y depuran el programa se llaman programadores. Los pasos que exige el desarrollo de un programa, se suelen sintetizar en los siguientes siete: 1. 2. 3. 4. 5. 6. Planificacin del problema: descripcin y anlisis Desarrollo de las especificaciones del programa Codificacin del programa Depuracin del programa Documentacin del programa Mantenimiento del programa

Planificacin del programa Un equipo de analistas y usuarios deben decidir exactamente lo que el programa debe hacer, que datos debe procesar y que informacin entregar Desarrollo de las especificaciones del programa El programador especifica las funciones del procesamiento de datos que el programa debe ejecutar. Las relaciones entre las funciones se establecen en una serie de diagramas de flujo Codificacin del programa El programador escribe el cdigo fuente del programa. Este cdigo fuente, consta de los pasos del programa descritos en un lenguaje computacional. En los computadores el cdigo fuente se traduce en un cdigo que el computador puede ejecutar.

Depuracin del programa El programador ejecuta el programa para detectar y corregir errores. A esta operacin se denomina depurar el programa. Documentacin del programa El programador describe el funcionamiento y uso del programa en una documentacin tcnica y de usuario Mantenimiento del programa Se refiere a realizar cambios al programa despus de entregado, esto se puede dar por las siguientes situaciones: Si el tipo de informacin requerida necesitase cambios Con la operacin del programa, los usuarios pueden descubrir errores Extensin de la funcionalidad inicial del programa, para adaptarse a cambios o mejorar su desempeo.

LENGUAJES DE PROGRAMACION
I. Concepto: Un lenguaje de programacin es un conjunto de instrucciones que pueden ser ejecutadas en un computador. En la vida real se puede comparar un lenguaje con un idioma. II. Clasificacin: Los lenguajes se pueden clasificar segn nivel o traduccin. 1) Segn Nivel se clasifican en: a) Lenguaje de Mquina: Est compuesto por una serie de combinaciones de ceros y unos (cdigo binario), que representan direcciones de informacin y cdigo de operaciones que debe efectuar la mquina. b) Bajo Nivel: Este lenguaje establece una relacin de traduccin entre un lenguaje simblico y el lenguaje de mquina, es decir a cada direccin o cdigo se asigna un smbolo. Ej.: Assembler (lenguaje ensamblador) c) Alto nivel: Permiten generar varias instrucciones en lenguaje de maquina por cada instruccin del cdigo fuente. Ej.: PASCAL, COBOL, BASIC, C++, etc. 2) Segn como se traducen se clasifican en:

a) Compilado: Estos lenguajes requieren la compilacin o traduccin de todo el cdigo fuente para transformarse en un programa ejecutable. Para poder ejecutar el programa se deben cumplir las siguientes etapas: Creacin del programa fuente Compilacin del programa fuente (trasformarlo en programa ejecutable) Ejecucin del programa (ejecutable)

b) Interprete: En el caso de los lenguajes interpretes, las etapas anteriores se concentran en una sola, es decir no genera un programa ejecutable, sino que el intrprete se encarga de la traduccin y ejecucin de cada una de las instrucciones a medida que procesa el programa fuente. III. Componentes de un Lenguaje Palabras reservadas Identificadores (constantes y variables) Sentencias: Iteracin Bifurcacin condicionales Entrada/Salida Sub-programas (funciones y procedimientos) Operadores Aritmticos Lgicos Relacionales Asignacin Smbolos Especiales Tarea: Traer 2 ejemplos de lenguajes intrpretes y 2 ejemplos de lenguaje compilados (que no sean c c++)

Estructura de un programa en C
La estructura bsica de un programa en C est dada por: Llamadas a bibliotecas Cuerpo del programa

Ejemplo de programa en C: #include <stdio.h> #include <conio.h> /* Ejemplo de programa en Lenguaje C/C++ */ int main(void) { // Muestra mensaje por pantalla printf(Este es mi primer programa en C); return(0); } Descripcin del cdigo: #include Se utiliza para llamar a las bibliotecas de funciones y procedimientos, que se utilizarn en el programa /* comentario */ Lo que este encerrado en este bloque ser tomado como comentario y no se tomar en cuenta para su ejecucin. Este mtodo permite comentariar varias lneas dentro del bloque. Se pueden hacer comentarios en cualquier parte del programa. int main(void) main es la funcin principal del programa, ya que es la 1ra. en ejecutarse. Si esta funcin no es hallada por el compilador, el programa no se ejecuta. int indica que la funcin retornar un valor numrico entero y (void) indica que no se le pasar ningn parmetro a la funcin. // comentario Permite comentariar solo una lnea. Todo lo que est a la derecha de estos smbolos ser tomado como comentario.

printf Es una funcin que permite mostrar mensajes en el monitor del PC. return(0) Este comando tiene una doble funcionalidad, terminar la ejecucin de la funcin y devolver un valor. En este caso como main es la nica funcin, return termina el programa. Case Sensitive El lenguaje c es case sensitive, lo que quiere decir que diferencia maysculas de minsculas, por ejemplo las siguientes variables son distintas para c: Suma, suma, SUMA De igual manera ocurre para las palabras reservadas y nombres de procedimientos o funciones. El siguiente listado est mal escrito: #INCLUDE, Printf, scanF, MAIN, vOId Declaracin de Variables Se puede declarar variables en cualquier parte del programa, con el nico requisito de que sea declarada antes de utilizarse. No se puede utilizar ninguna variable que no haya sido declarada antes. Formato: tipo nombre_variable Ejemplo: int valor; float iva, suma; char letra = a; char palabra[30]; // // // // Valor entero Valor con coma valor de UN carcter con inicializacin Cadena de caracteres

Se pueden inicializar las variables de la siguiente forma: char letra = a int valor = 1000; char nombre[10] = Alfonso; Restricciones para el nombre de las variables: Deben comenzar con una letra o vocal No deben contener espacios intermedios Solo se puede utilizar las letras del abecedario, nmeros y el carcter guin bajo.

mbito de la variable: El mbito de la variable esta dado por el tiempo de vida de esta, es decir el tiempo que permanece reservada en la memoria RAM. Se crea con la declaracin y se destruye al finalizar la ejecucin del bloque donde fue declarada. Tipos de variables: El tipo de variable indica el rango o tipo de valores que esta puede contener. Por ejemplo: int Variable del tipo numrico, que puede contener un nmero entero dentro del rango -32768 a 32767 char Variable del tipo carcter, que permite almacenar solo un carcter. El modificador unsigned Este modificador permite solamente admitir valores positivos, con la consiguiente ventaja de aumentar el rango del valor a contener. Ejemplo: char unsigned char int unsigned int : permite valores desde -128 a 127 : permite valores desde 0 a 255 : permite valores desde -32768 a 32767 : permite valores desde 0 a 65535

Declaracin de Constantes Una constante, como su nombre lo indica, es un identificador que almacena valores que no cambian durante la ejecucin del programa. Generalmente esta se escribe con letras maysculas. Formato: const tipo nombre_constante = valor_constante Ejemplo: const float PI = 3.14; const float IVA = 0.19; Operadores: Operador de asignacin (=) Este es un operador sirve para dar un valor a una variable. Este valor puede ser un nmero que tecleamos directamente u otra variable.

Operadores Aritmticos: + / * ++ -% Suma Resta Divisin Multiplicacin Incremento (antes y despus de la variable) Decremento (antes y despus de la variable) Modulo o Resto (solo funciona para enteros)

Orden de precedencia de los operadores: () ++ -* / % + /= += -=

Tarea: Investigar el uso de operadores: *= Operadores de Comparacin: == != > < >= <= Igual que Distinto que Mayor que Menor que Mayor o Igual que Menor o Igual que

Funciones de Entrada y Salida: printf: Permite mostrar expresiones por pantalla. Formato: printf (texto [, lista de expresiones]); Ejemplo: printf printf printf printf printf printf (Este es un mensaje); (%d, valor); (%d, 50 + 8); (%d, valor * 3); (El total es %f, total); (El seor %s debe %d pesos, nombre, deuda);

Modificadores: - %d : valor decimal - %c : carcter - %s : cadena de caracteres - %f : valor con coma flotante

scanf: Permite ingresar un valor a una variable desde le teclado. Formato: scanf (modificador, &variable); Ejemplo: scanf(%d, &valor); scanf(%c, &letra); scanf(%s, &nombre); nota: fflush(stdin); SENTENCIAS CONDICIONALES: Sentencia if: Formato: if (condicin) { Instrucciones a ejecutar si se cumple la condicin } Ejemplo: if (nro > 0) { printf (El Nro. es mayor a cero); } Sentencia if - else: Formato: if (condicin){ Instrucciones a ejecutar si se cumple la condicin } else{ Instrucciones a ejecutar si NO se cumple la condicin } Ejemplo: if (nro >= 0) { printf (El Nro. es positivo); } else { printf (El Nro. es negativo); }

// Se puede omitir el &

Sentencia if else if: Formato: if (condicin) { Instrucciones a ejecutar si se cumple la condicin } else if (condicin) { Instrucciones a ejecutar si NO se cumple la condicin } Ejemplo: if (nro < 10) { printf("El Nro. es menor a 9"); } else if (nro < 100) { printf("El Nro. esta entre 10 y 99"); } else if (nro < 1000) { printf("El Nro. esta entre 100 y 999"); } else printf("El Nro. es mayor o igual a 1000"); Operadores Lgicos: && || ! AND OR NOT

Nota: En c el falso se representa por un cero y un verdadero por cualquier valor distinto de cero.

Sentencia switch: Formato: switch ( variable ) { case opcin 1: Se ejecuta si la variable tiene el valor de la opcin 1 break; case opcin 2: Se ejecuta si la variable tiene el valor de la opcin 2 break; . . . case opcin n: Se ejecuta si la variable tiene el valor de la opcin n break; default: Se ejecuta si la variable tiene el valor distinto break; } Ejemplo: switch (opc){ case 1: printf("Ha seleccionado la opcin 1"); case 2: printf("Ha seleccionado la opcin 2"); case 3: printf("Ha seleccionado la opcin 3"); case 4: printf("Ha seleccionado la opcin 4"); default: printf("Opcin incorrecta"); break; } Nota: Tambin se puede utilizar con variables carcter. break; break; break; break;

SENTENCIAS DE ITERACIN REPETITIVAS Sentencia for: Formato: for ( inicializacin; condicin; incremento ) { Conjunto de instrucciones } Ejemplo: for (x = 1; x <= 10; x++) { printf(%d, x); } Nota: for(;;) Ciclo infinito. - Se utiliza cuando se conoce de antemano el nmero de iteraciones a realizar Sentencia while: Formato: while ( condicin ) { Conjunto de instrucciones } Ejemplo: x = 1; while (x <= 10) { printf(%d, x); x++; } Evala al principio Puede ejecutar o no el bloque dependiendo de la condicin Se utiliza cuando se desconoce el nmero de iteraciones a realizar

Sentencia do - while: Formato: do { Conjunto de instrucciones } while ( condicin ) Ejemplo: x = 1; do{ printf(%d, x); x++; } while (x <= 10) Evala al final Ejecuta el bloque al menos una vez Se utiliza cuando se desconoce el nmero de iteraciones a realizar

Ciclo infinito: for (;;) Es un for que no tiene valor inicial, condicin, ni incremento, por lo tanto crea un ciclo infinito. Su uso solo se justifica al complementarlo con las sentencias break y continue Sentencias continue y break; continue permite cortar el ciclo y continuar con la siguiente iteracin de este, y break sale del ciclo, independiente si este cumple o no la condicin de salida

Ejemplo: Validar un rango de nmeros, si es incorrecto debe volver al principio y solicitar nuevamente el nmero. Termina con cero. int main(void) { for(;;){ // ciclo infinito int nro; clrscr(); printf("Ingrese un N del 10 al 20 (0 = salir)"); scanf("%d", &nro); if (nro == 0) break; // si nro es igual a cero sale del ciclo

if (nro < 10 || nro > 20) { printf("Error: Nmero fuera de rango"); getch(); continue; } printf("Correcto!... Ingrese otro"); getch(); } return(0); }

You might also like