Prof. Jaime SotoSección (001)
Material original de Prof. AURELY LEAL modificado por Jaime Soto
Algoritmos y Programación IParte 3
PROGRAMA
Conjunto de instrucciones – órdenes dadas a la máquina –que producirán la ejecución de una determinada tarea. Esun medio para conseguir un fin. Es la información necesariapara solucionar un problema.
Fases de un Programa:◦ Definición y análisis del Problema.
◦ Diseño de Algoritmo (pseudocódigo).
◦ Codificación del programa.
◦ Depuración y verificación del programa.
◦ Documentación.
◦ Mantenimiento.
EL PROCESO DE LA PROGRAMACIÓN
Definición del Problema
Diseño del algoritmo
Codificación del Programa
Depuración y Verificación
DOCUMENTACIÓN
MANTENIMIENTO
INSTRUCCIONES
El proceso de diseño del algoritmo y luego lacodificación del programa consiste en definiracciones o instrucciones que resolverán elproblema.
Las instrucciones se deben escribir yposteriormente almacenar en memoria en elmismo orden en que han de ejecutarse, es deciren, secuencia.
INSTRUCCIONES
Un programa puede ser lineal, si las instruccionesse ejecutan secuencialmente, sin bifurcaciones, esdecir, en secuencia.
◦ Instrucción 1
◦ Instrucción 2
◦ Instrucción 3
.
.
.
.
.
◦ Instrucción n
INSTRUCCIONES
Un programa puede ser no lineal, cuando seinterrumpe la secuencia mediante instrucciones debifurcación.
◦ Instrucción 1
◦ Instrucción 2
.
.
◦ Instrucción x
◦ Instrucción n
.
.
◦ Instrucción n+1
TIPOS DE INSTRUCCIONES
Las instrucciones básicas son independientes dellenguaje. La clasificación más usual es:
◦ Instrucciones de Inicio / Fin.
◦ Instrucciones de Asignación.
◦ Instrucciones de lectura.
◦ Instrucciones de escritura.
◦ Instrucciones de bifurcación.
INSTRUCCIONES DE INICIO/FIN
Como su nombre lo indica muestran el inicio y el fin de unprograma, un subprograma, un modulo.
En pseudocódigo es inicio / fin.
En Pascal es Begin / End.
En Lenguaje C es: {}
INSTRUCCIONES DE ASIGNACIÓN
Se utiliza para asignar o almacenar valores a
variables o constantes. Es una operación que sitúa
un valor determinado en una posición de memoria.
Se demuestra en pseudocódigo con el símbolo <-
(Una flecha apuntando hacia el identificador, donde
se desea guardar el valor.). variable <-
expresión.
El tipo de expresión debe ser del mismo tipo que el
de la variable, en caso contrario en la fase de
compilación se produciría un error de tipos.
REGLAS DE ASIGNACIÓN
Una variable en el lado derecho de una sentenciade asignación debe tener un valor antes de que lasentencia de asignación se ejecute. Hasta que unprograma le da un valor a una variable, esavariable no tiene valor. Por ejemplo:Si x no tiene un valor antes de ejecutar y <- x+1,se producirá un error lógico.
En la izquierda de una sentencia de asignación solo
pueden existir variables. Por consiguiente no es
valido lo siguiente:
Valor_Neto - Tasas <- 34015.
REGLAS DE ASIGNACIÓN (RECORDAR)
La operación de asignación es una operacióndestructiva debido a que el valor almacenado enuna variable se pierde o se destruye y se sustituyepor el nuevo valor en la sentencia de asignación.
INSTRUCCIONES DE ASIGNACIÓN
Son instrucciones que asignan un valor de
cualquier tipo a una variable.
A = 80 A toma el valor de 80.
Que valor toma la variable C.
◦ A = 12
◦ B = A
◦ C = B
En Lenguaje C es: = igual
INSTRUCCIONES DE ASIGNACIÓN
¿Cuál es el valor de la variable AUX al ejecutarse la
instrucción 5?.
◦ A = 10
◦ B = 20
◦ Aux = A
◦ A = B
◦ B = Aux
¿Cuál es el valor de N, si N tiene el valor actual de
2?
◦ N = N +5
INSTRUCCIONES DE ASIGNACIÓN
AMN = 3+14+8 Asignación Aritmética
AMN = 25
M = 8<5 Asignación Lógica
N = M || (7<=12)
X=´12 de octubre de 1942´
Asignación de cadena de Caracteres
INSTRUCCIONES DE LECTURA DE DATOS (ENTRADA)
Esta instrucción lee datos de un dispositivo de
entrada.
pseudocódigo leer (número, horas, tasa)
Leer del teclado número, horas, tasa, se archivan
en la memoria. Ej: 1536,48,2000; entonces:
número=1536
horas=48
tasa=2000
En Lenguaje C es:
//Lee el valor y lo guarda en una variable
scanf ("%d%d%d", &número,&horas,&tasa);
INSTRUCCIONES DE ESCRITURA DE RESULTADOS (SALIDA)
Estas instrucciones se escriben en un dispositivo de
salida. Explicar el resultado de la ejecución de las
siguientes instrucciones:
A=100
B=200
C=300
Escribir (A,B,C)
Se visualizarán en la pantalla o se imprimen los valores
100, 200 y 300 que contienen las variables A,B y C.
En Lenguaje C es:
//Imprime en pantalla el texto y el valor
printf (“\n El valor es %d%d%d", A,B,C);
INSTRUCCIONES DE BIFURCACIÓN
El desarrollo lineal de un programa se interrumpe
cuando se ejecuta una bifurcación. Las bifurcaciones
pueden ser, según el punto del programa a donde se
bifurca, hacia delante o hacia atrás.
Bifurcación Incondicional: Se realiza siempre que el
flujo del programa pase por la instrucción sin necesidad
del cumplimiento de ninguna condición.
Bifurcación Condicional: Depende del cumplimiento
de una determinada condición. Si se cumple la
condición, el flujo sigue ejecutando la acción f2. Si no
se cumple, se ejecuta la acción f1.
INSTRUCCIONES DE BIFURCACIÓN
Bifurcación Adelante (Positivo)
◦ Instrucción 1
◦ Instrucción 2
.
.
◦ Instrucción 8
◦ Instrucción 9
.
.
◦ Ultima Instrucción
INSTRUCCIONES DE BIFURCACIÓN
Bifurcación Atrás (Negativo)
◦ Instrucción 1
◦ Instrucción 2
.
.
◦ Instrucción 8
◦ Instrucción 9
.
.
◦ Ultima Instrucción
BIFURCACIÓN INCONDICIONAL
Fases de la ejecución de un programa
Si
Programa Fuente
Compilador
Existen errores en
la compilación
Programa
Programa Ejecutable
Ejecución
No
Montador
ELEMENTOS BÁSICOS DE UN PROGRAMA
En programación se debe separar la diferencia entre el diseñodel algoritmo y su implementación en un lenguaje específico.
Los lenguajes de programación tienen elementos básicos quese utilizan como bloques constructivos, así como reglas paralas que esos elementos se combinan.
Palabras Reservadas ({ }, if, else, for, while, do, int, float)
Identificadores (nombres de variables esencialmente,procedimientos, funciones, etc.)
Caracteres especiales (coma, apóstrofe, etc.)
Constantes, variables, expresiones, instrucciones.
ELEMENTOS BÁSICOS DE UN PROGRAMA
Existen otros elementos que forman parte de los programas,cuya compresión y funcionamiento será vital para el correctodiseño de un algoritmo y la codificación del programa:
Estos elementos son:
Bucles, contadores, acumuladores, estructuras:(secuenciales, selectivas, repetitivas).
DATOS Y TIPOS DE DATOS
Los diferentes objetos de información con los que unprograma trabaja se denominan datos.
Todos los datos tienen un tipo asociados con ellos quenos servirá para poder conocer con que informacióntrabajaremos. Es decir, cuando ingresemos el sueldo deun trabajador necesitamos que este contengadecimales, o al solicitar la edad de una persona éstatiene que estar con números enteros, etc.. Además lasuma entre caracteres no tiene sentido.
DATOS Y TIPOS DE DATOS
La asignación de tipos a los datos tiene dos objetivosprincipales:
Detectar errores de operaciones aritméticas en losprogramas.
Determinar como ejecutar las operaciones.
Existen dos tipos de datos: simples (sin estructuras) ycompuestos (estructurados). Los datos estructuradosson conjunto de partida de datos simples con relacionesdefinidas entre ellos.
Los tipos de datos más comunes son: numéricos,caracteres y lógicos.
DATOS NUMÉRICOS
Es el conjunto de los valores numéricos. Estos puedenrepresentarse en:
Tipo Numérico Entero: Los enteros son aquellosnúmeros que no tienen componente fraccionario odecimal y dentro de la computadora son unsubconjunto finito de los números enteros. Estosnúmeros pueden ser negativos o positivos y elrango es de –32,768 a 32,767.
Ejemplo: 6, -6, 65, -98, 1900, -5672
En Lenguaje C es: int a
DATOS NUMÉRICOS
Tipo Numérico Real: son aquellos números que tienenuna parte fraccionaria y pueden ser positivos ynegativos dentro de la computadora forman unsubconjunto de los números reales. Para representarnúmeros muy pequeños o muy grandes se emplea lanotación de punto flotante, que es una generalizaciónde la notación científica. En esta notación se consideraal número real como mantisa y al exponente la potenciade 10 a la que se eleva este número.
Ejemplo: 0.08, -52.364, 3.0, -7.0
36.75201 x 1018 36.75201 mantisa 18 exponente
En Lenguaje C es: float a
DATOS LÓGICOS O BOOLEANOS
Este tipo de dato es aquel que solo puede tomaruno de 2 valores: verdadero (true) o falso (false).En lenguaje C no existe el tipo lógico pero sepuede implementar con un número enteroconociendo que 0 es falso y cualquier númerodiferente de cero verdadero.
Este tipo de dato se utiliza para representar lasalternativas (si/no) a determinadas condiciones.Ejemplo: cuando se pide si un valor es par, larespuesta será verdadera o falsa, según sea par oimpar.
DATOS LÓGICOS O BOOLEANOS
C no posee ninguna implementación primitiva deltipo booleano. Entonces, para declarar variables deeste tipo, hace falta definirlo previamente. Lamanera de hacerlo es añadir o crear nuevosnombres para tipos definidos de datos:
typedef enum {FALSE=0, TRUE=1} booleano;
Que define el tipo booleano y asigna a suselementos FALSE y TRUE los valores 0 y 1respectivamente.
DATOS TIPO CARÁCTER Y TIPO CADENA
El dato tipo carácter puede tomar un valor de unconjunto finito y ordenado de caracteres osímbolos que la computadora reconoce (códigoASCII). Este tipo de dato ocupa un byte yalmacena un solo carácter.
Existe también el dato tipo cadena (compuesto)que es una sucesión de caracteres que seencuentran delimitados por comillas, la longitud deuna cadena es el número de caracterescomprendidos entre los delimitadores.
DATOS TIPO CARÁCTER Y TIPO CADENA
Los caracteres que reconoce la computadora noson estándar; sin embargo, la mayoría reconocelos siguientes caracteres alfabéticos y numéricos.
Caracteres alfabéticos: (A,B,C,…..,Z)(a,b,c,…..,z)
Caracteres numéricos: (1,2,…..,9,0)
Caracteres especiales: (+,-,*,/,^,., ;, <,>,$.....)
Ejemplo de cadena de caracteres:◦ ´Hola Mundo´
◦ ´12 de octubre de 1942´
◦ ´Sr. McDonald´
TIPOS DE DATOS
Tipos de datos Descripción Memoria
Int Entero 2 bytes
Char Carácter 1 byte
Float Flotante 4 bytes
Double Flotante de doble 8 bytes
precisión
IDENTIFICADORES
Representan los nombres de los objetos de unprograma (constantes, variables, tipos de datos,procedimientos, funciones, etc.). Es una secuencia decaracteres que puede ser de cualquier longitud, aunquetiene ciertas reglas que hay que seguir, las cuales son:
◦ Debe comenzar con una letra o "_" y no puede contenerespacios en blanco.
◦ Letras, dígitos y caracteres subrayados ("_") están permitidosdespués del primer carácter.
En síntesis un identificador es un método para nombrara las celdas de memoria en la computadora, en lugar dememorizarnos una dirección de memoria.
Se utilizan para nombrar variables, constantes,procedimientos y funciones.
CONSTANTES
Una constante es un dato que permanece sin cambiodurante el desarrollo del algoritmo o durante laejecución del programa. La mayoría de los lenguajes deprogramación nos permiten el manejo de diferentestipos de constantes, estas pueden ser enteras, reales,caracteres y cadenas. En lenguaje C una constante sedefine por medio de la instrucción #define (directiva delprocesador).
Ejemplo: #define MAXLINEAS 25
Le indica al compilador que debe sustituir elidentificador MAXLINEAS por el número 25, cada vezque aparezca en el programa, excepto cuando es unaconstante literal de cadena, es decir, que se encuentreentre comillas.
CONSTANTES VÁLIDAS
Constantes reales válidas: 1.234 -0.1234
Constantes reales no válidas: 1,354.65 (comas nopermitidas).
Constantes tipo carácter: ´B´ ´+´ ´4´
Constantes tipo cadena de caracteres: ´AurelyLeal´
VARIABLES
Una variable es un dato cuyo valor puede cambiardurante el desarrollo del algoritmo o ejecución delprograma. Hay diferentes tipos de variables:enteras, reales, caracteres y cadenas. Una variableque es de cierto tipo solo puede tomar valores quecorrespondan a ese tipo. Si se intenta asignar unvalor de tipo diferente se producirá un error.
En lenguaje C la sintaxis para definir una variablees:
Tipo_de_dato Identificador
int a;
float a;
VARIABLES
Una variable se identifica por dos atributos: elnombre de la variable (identificador) y el tipo de lavariable. El identificador se puede formar concaracteres alfanuméricos y el carácter desubrayado ( _ ) empezando siempre por una letra.No se admiten como identificadores palabrasreservadas del lenguaje de programación que seesté utilizando. Los nombres de variables que seelijan para el algoritmo o programa deben sersignificativos y tener relación con el objeto querepresenta.
OPERADORES
En todos los lenguajes de programación se utilizanoperadores para efectuar operacionesaritméticas. Combinando las variables y constantes enexpresiones aritméticas por medio de funcionesadecuadas.
OPERADORES MATEMÁTICOS
Operador Significado+ Suma- Resta* Multiplicación/ División^ Exponenciación% Módulo++ Incremento-- Decremento
OPERADOR DIV (/) Y MOD (%)
En todos los lenguajes de programación se utilizanoperadores para realizar divisiones reales (/), enteras(\)y módulos (%).
19 / 6 = 3.16 19 \ 6 = 3 19 % 6 = 1
15 / 6 = 2.5 15 \ 6 = 2 15 % 6 = 3
Expresión Resultado Expresión Resultado10.5/3.0 3.5 10\3 3
1/4 0.25 18\2 9
2.0/4.0 0.5 30\30 1
6/1 6.0 6\8 0
30/30 1.0 10%3 16/8 0.75 10%2 0
OPERADORES
En ocasiones en los programas se necesitan realizarcomparaciones entre distintos valores, esto se realizautilizando los operadores relacionales, los cuales selistan a continuación:
Operador Significado< Menor> Mayor<= Menor que>= Mayor que== Igual!= Diferente
&& Y|| O! Negación
RELACIONALES
LÓGICOS
EXPRESIONES
Las expresiones son combinaciones de constantes,variables, símbolos de operación (operadores),paréntesis y nombres de funciones especiales.
Ejemplo: sqrt ((p-a)*(p-b)*(p-c)); (a+b+c) / p;
Una expresión toma un valor que se determina porel resultado de la ejecución de las operacionesindicadas, tomando los valores de las variables yconstantes y aplicando las prioridades de lasoperaciones.
Según el tipo de operadores que se emplee en laexpresión. Estas se clasifican en aritméticas,lógicas, relacionales, de caracteres o mixtas.
EXPRESIONES ARITMÉTICAS
Este tipo de expresiones nos sirve para representarformulas matemáticas y utilizan los operadoresaritméticos.
Las expresiones que tienen 2 o más operadoresrequieren reglas de precedencia que permitendeterminar el orden en que habrán de efectuarsedichas operaciones. Por ejemplo:
5 + 8 * 2 //Primero se hace 8 * 2 y luego se suma5 5+16 = 21
10%3 = 1 //Regresa el residuo de la divisiónentera Nota: En caso de coincidir la prioridad devarios operadores en una expresión el orden en elque se efectúan es de izquierda a derecha.
REGLAS DE PRIORIDAD
Las expresiones con más de dos operandos, requieren de reglasmatemáticas que aseguren su correcta interpretación.
Por Ejemplo: 3 * 4 + 5 Puede ser interpretada como:(3 * 4) + 5 = 17 ó bien 3 * (4 +5) = 27
Para evitar confusión, C Sigue las siguientes normas deprioridad:
1. Operaciones entre paréntesis, se evalúan primero los másinternos.2. Operadores (*, /)3. Operadores (%)4. Operadores (+, -)5. Operadores (=, <, >, <=, >=, !=)
En caso de operadores de igual prioridad se evalúa la expresiónde izquierda a derecha.
Ejemplo:2 * 2 + 3 * 3 + 6 / 2 % 2 = (2*2) + (3*3) + ((6 / 2) % 2)
EXPRESIONES LÓGICAS
La expresión lógica mas simple es una variable oconstante lógica que puede establecerse a valoresverdadero (true) o falso (false).
Las expresiones lógicas pueden combinarse paraformar expresiones mas complejas utilizando losoperadores lógicos and, or y not. Estos se utilizancon constantes lógicas.
[operando1] operador operando2
El operando1 según el tipo de operador puede noexistir.
EXPRESIONES LÓGICAS
La operación and combina dos condiciones simplesy produce un resultado verdadero solo si los dosoperandos son verdaderos. La operación or esverdadera si uno de los dos operandos esverdadero. La operación not actúa sobre una solacondición simple u operando y simplemente niega(o invierte) su valor. Esto se describe masfácilmente usando unas tablas denominadas 'tablasde verdad'.
Cuando la expresión lógica contiene varios tipos deoperadores, es preciso seguir un nuevo orden deprecedencia o prioridad para obtener el valor finalde la expresión.
EXPRESIONES LÓGICAS (Tablas de Verdad)
Operador Lógico Expresión lógica Significado
! No !p Negación de p&& p&&q (p and q) Conjunción de p y q|| p||q (p||q) Disyunción de p y q
a no a
verdadero falsofalso verdadero
a b aybverdadero verdadero verdaderoverdadero falso falsofalso verdadero falsofalso falso falso
No (6>10) es verdaderaYa que (6>10) es falsa
EXPRESIONES LÓGICAS (Tablas de Verdad)
a b a||b
verdadero verdadero verdadero
Verdadero falso verdadero
falso verdadero verdadero
falso falso falso
PRIORIDAD DE LAS EXPRESIONES LÓGICAS
Para evitar confusión, C Sigue las siguientesnormas de prioridad:
1. Operaciones entre paréntesis, se evalúanprimero los más internos.
2. Operadores (^, !)
3. Operadores (*, /,\,%, &&)
4. Operadores (+, -, ||)
5. Operadores (=, <, >, <=, >=, !=)
Cuando la expresión lógica contiene varios tipos deoperadores, es preciso seguir un nuevo orden deprecedencia o prioridad para obtener el valor finalde la expresión.
PRIORIDAD DE LAS EXPRESIONES LÓGICAS
Ejemplo:
Si num1, num2, son variables enteras con valoresasignados 3 y 6, respectivamente, entonces:(2+3*num1) <> 6+(num2-1)
2+3*num1 = 11
6+(5) = 11
falso
5>3 && 6>2
año%4==0 && año%100!=0 || año%400==0
RESULTADO DE LAS EXPRESIONES LÓGICAS
El resultado de una expresión lógica es un valor detipo lógico: verdadero o falso.
Cuando se aplican a elementos de tipo carácter severifican en orden alfabético, tomando en cuenta elorden del código ASCII. De la siguiente manera:
0 < 1 < 2 ... < 9
a < b < c ... < z
A < B < C ... < Z
EJERCICIOS
¿Cuál es el resultado de las siguientesexpresiones?
a. 3+6*14 = 3 + 84 = 87
b. 8+7*3+4*6 = 8 + 21+ 24 = 29+24 = 53
c. -4*7+2^3/4-5 = -4*7+8/4-5 = -28+2-5 = -26-5 = -31
EJERCICIOS PARA RESOLVER
Encontrar el valor de la variable z.
a. z = 4.0 * 5 b. x=3.0 y=2.0 z=x^y-y
c. z=5 x=3 z=z*x
Deducir el resultado de las siguientes instruciones.
Int x,y;
x=1;
y=5;
printf (x,y)
EJERCICIOS PARA RESOLVER
Deducir el valor de las siguientes expresiones;siendo a=5, b=25 y c=10
a. x = a+b+c
b. x = a+b*c
c. x = a+b/c
d. x = a+b\c
e. x = a+b%c
f. x = (a+b)\c
g. x = a+(b/c)
EJERCICIOS PARA RESOLVER
Calcular el valor de las siguientes expresiones:
a. 8+7*3+4*6
b. -2^3
c. (33+3*4)/5
d. 2^2*3
e. 3+2*(18-4^2)
f. 16*6-3*2
g. 3*3+4-7^2\7
Escribir un algoritmo que intercambie los valoresde dos variables a y b.
EJERCICIOS PARA RESOLVER
Deducir los valores que toman las variables a,b yctras la ejecución de las instrucciones.
a. a=4 b. a=5b=a b=a+6b=a+3 a=a+1
b=a-5
c. a = 3 d. a =10b = 20 b = 5c = a+b a = bb = a+b b =aa = b-c
EJERCICIOS PARA RESOLVER
Escribir las siguientes expresiones en forma de expresionesalgorítmicas:
a. M + P b. M+ N
N P-Q
c. M+N d. M+N
P+Q P
Q - R
S
e. Sen(x)+Coseno(x)
tan(x)
f. -b+√b2-4ac
2a
FUNCIONES INTERNAS
Las operaciones que se requieren en los programas exigen ennumerosas ocasiones, además de las operaciones aritméticasbásicas, un número determinado de operadores especialesque se denominan Funciones Internas, incorporadas oestándar.
Ejemplo:Expresión Resultadoraiz2 (25) 5redondeo (6.5) 7redondeo (3.1) 3redondeo (-3.2) -3trunc (5.6) 5trunc (3.1) 3trunc (-3.8) -3cuadrado (4) 16abs (9) 9abs (-12) 12
FUNCIONES INTERNAS
Función Descripción Argumento Resultado
abs(x) Valor Absoluto de (x) Entero o Real Entero o Real
sin(x) Seno de (x) Entero o Real Real
cos(x) Coseno de (x) Entero o Real Real
asin(x) Arco Seno de (x) Real Real
acos(x) Arco Coseno de (x) Real Real
atan(x) Arco tangente de (x) Real Real
exp(x) Exponencial de (x) Real o Entero Real
log(x) Logaritmo natural de (x) Real o Entero Real
log10(x) Logaritmo base 10 de (x) Real o Entero Real
ceil(x) Aproxima x al entero Real Entero
inmediato superior
pow(x,n) x elevado a la n Real o Entero Real o Entero
sqrt(x) Raíz Cuadrada de (x) Real o Entero Real
CONVERSIÓN DE TIPO
En las asignaciones no se pueden asignar valores auna variable de un tipo diferente del suyo. Sepresentará un error si se trata de asignar valoresde tipo carácter a una variable numérica o un valornumérico a una variable tipo carácter.
ENTRADA/SALIDA DE DATOS EN C
Como se mencionó anteriormente, es necesarioconocer las entradas y las salidas del problemapara poder resolverlo. Para que C reciba estosdatos utilizamos las funciones de biblioteca scanfpara la entrada y printf para la salida. Su sintaxises la siguiente:
//Lee el valor y lo guarda en una variable
scanf ("%d", &variable);
//Imprime en pantalla el texto y el valor
printf ("El valor es %d", variable);
ENTRADA/SALIDA DE DATOS EN C
#include <stdio.h>
#include <conio.h>
#include <math.h>
Void main()
{
int r, a, p;
printf ("Programa que calcula el área y perímetro de uncirculo");
printf ("\nIntroduce el radio: ");
scanf ("%d", &r);
a = M_PI * pow(r,2);
p = M_PI * (r+r);
printf ("\nEl área es: %d", a);
printf ("\nEl perímetro es: %d", p); getch();
}
ESCRITURA DE ALGORITMOS/PROGRAMAS
Todo programa en C consta de una o másfunciones, una de las cuales se llama main. Elprograma siempre comenzará por la ejecución dela función main. Las definiciones de las funcionesadicionales pueden preceder o seguir a main.
Cada función debe contener:
Una cabecera de la función, que consta del nombrede la función, seguido de una lista opcional deargumentos encerrados con paréntesis.
Una lista de declaración de argumentos, si seincluyen éstos en la cabecera.
Una sentencia compuesta, que contiene el resto dela función.
ESCRITURA DE ALGORITMOS/PROGRAMAS
/*Estructura de un programa en C*/
#include <nombre_de_la_biblioteca>
#define nombre_de_la_constante valor
//Función principal void main()
{
definición de variables; instrucciones delprograma;
}
EJEMPLO DE UN PROGRAMA EN C
/*Primer programa en C*/
#include <stdio.h>
#include <conio.h>
void main()
{
//Imprime el texto en pantalla
printf ("Hola, mundo!");
getch();
}