Sunteți pe pagina 1din 10

TEMA 7 ALGORITMOS Y PROGRAMAS.

ESTRUCTURA DE UN PROGRAMA

7.1. Algoritmos

7.2. Compilacin o

7.3. Estructura de un programa

7.1. Algoritmos Objetivo: Resolver problemas mediante computadoras (usando el lenguaje C) PROBLEMA ALGORITMO PROGRAMA Los algoritmos son ms importantes que los lena guajes de programacin (lenguaje que permite o transmitirlo de forma efectiva a un computador) o que los computadores (herramienta que lo lleva a cabo) Caracter sticas de los algoritmos: Son precisos e indican de manera estricta su orden de ejecucin o Sus resultados solo dependen de los datos de entrada, i. e., estn denidos a Terminarn en un nmero nito de pasos, es a u decir, son nitos

Partes de un Algoritmo Entrada: Quedar completamente denida a Proceso: Se describir completamente (dea pendiendo de su nivel de abstraccin) o Salida: Quedar completamente denida a Disear algoritmos para modelar: n Un cliente realiza un pedido a una fbrica. La a fbrica examina la informacin que tiene sobre el a o cliente y solo cuando este es solvente, se acepta y cursa el pedido Mostrar por pantalla el resultado de sumar todos los numeros enteros del 1 al 1000 Identicar si un nmero es primo u Sumar todos los primos menores que 1000

7.2. Compilacin o Interprete = Compilador Fases en la ejecucin de un programa en C: o

1. Compilacin: o Fichero fuente .C Fichero objeto .OBJ

2. Linkado: Fichero objeto .OBJ Fichero ejecutable .EXE

Fases en la ejecucin de un programa en C o

1. Escritura del programa fuente con un editor, el que tiene Turbo C 3.0 o el de Borland C++ 5.0, y almacenado del mismo en disco.

2. Introducir el programa fuente en memoria

3. Compilar el programa

4. Vericar y corregir errores de compilacin o

5. Obtencin del programa objeto o

6. Obtencin del programa ejecutable mediante o el montador o enlazador

7. Ejecucin del mismo o

7.3. Estructura de un programa Todo programa en C consta de una o mas funciones, una de las cuales se llama main. El programa siempre comenzar por la ejecucin a o de la funcin main. o Las deniciones de las funciones adicionales pueden preceder o seguir a main. Cada denicin de funcin debe contener: o o

Una cabecera de la funcin (nombre + arguo mentos/parmetros) a

Una lista de declaracin de argumentos de la o cabecera

Una sentencia compuesta que contiene el resto de la funcin o

Estructura de un programa II Las sentencias compuestas se encierran entre llaves. Estas llaves pueden contener otras sentencias compuestas o combinaciones de sentencias elementales (llamadas sentencias de expresin). o Cada sentencia de expresin termina con ; o Los comentarios pueden aparecer en cualquier parte del cdigo, han de estar encerrados por o unas marcas especiales: // comentario /* comentario */ Cuando utilicemos alguna funcin propia de alguo na librer ser necesario que aadamos delante a, a n de main la declaracin de inclusin de la librer o o a.

Estructura de un programa III #include <stdio.h> int primo (int n) { int i = 2; if (n < 4) return 1; while (n%i != 0) i++; if (n == i) return 1; else return 0; }

void main (void) { int x; int primo (int); printf("Introduce un entero: "); scanf("%d", &x); if (primo(x)) printf("El numero %d es PRIMO", x); else printf("El numero %d es COMPUESTO", x); }

Funciones I Es necesario dividir los programas grandes en subprogramas o funciones ms pequeos que sern a n a llamados por el principal. Ventajas:

Modularizacin o

Ahorro de memoria y tiempo de desarrollo

Independencia de datos y ocultacin de la ino formacin o

Una funcin de C es una porcin de cdigo o o o o programa que realiza una determinada tarea Cada funcin estar asociada a un identicador o a o nombre

Funciones II En toda funcin distinguiremos: o

Denicin (cabecera, argumentos, sentencia) o

Declaracin (especicacin de tipos) o o

Llamada (con su nombre y los argumentos instanciados)

Tras ser llamada devuelve un valor de retorno (especicado en la declaracin) o En su denicin no ser necesario declarar los o a argumentos, ya referidos en la cabecera Una l nea de su cdigo comenzar por return y o a a continuacin la expresin cuya evaluacin proo o o porciona el valor de retorno

S-ar putea să vă placă și