Los elementos que utilizamos para desarrollar un programa son:
- Estructuras de Datos.
- Instrucciones.
- Estructuras de Control.
- Funciones.
A continuación se muestran tablas con la sintaxis para cada uno de ellos en algorítmica (Parte Declarativa o Diagrama de Tabourier) y en lenguaje C, con ejemplos.
Estructuras de Datos
Concepto
|
Algoritmia
|
Ejemplo
|
Sintaxis en C
|
Ejemplo
|
Librerías
|
No se definen
|
|
|
#include <math.h>
#include <stdio.h>
|
Constantes
|
|
CONSTANTES
- LETRA = 'a'
- PI = 3.1415
|
|
#define LETRA 'a'
#define PI 3.141592
|
Variables
|
|
VARIABLES
- radio, diámetro: real
- grupo: carácter
- edad: entero
- frase: cadena
- *punteroAReal: real
|
|
float radio, diametro;
char grupo;
int edad;
char frase[15];
float *punteroAReal;
|
Vector
|
|
VARIABLES
- habitantes[100]: entero
|
|
|
Matriz
|
|
VARIABLES
- habitantes[100][3]: entero
|
|
|
Tipos
|
|
TIPOS
- tipoAlumno = id:entero
- nombre[35]:carácter
- grupo:carácter
- nota:real
|
|
typedef struct{
int id;
char nombre[35];
char grupo;
double nota;
}tipoAlumno;
|
Instrucciones
Concepto
|
Algoritmia
|
Ejemplo
|
Sintaxis en C
|
Ejemplo
|
Inicio
|
|
|
|
int main(){
... instrucciones ...
return 0;
}
|
Asignación
|
|
|
|
|
Entrada de Datos
|
|
|
|
#include <stdio.h>
int habitantes;
char grupo;
double masa;
char pelicula[20];
scanf("%c, %d, %lf", &grupo, &habitantes, &masa);
//Leer cadenas de texto
fflush(stdin);gets(pelicula);
|
Salida de Datos
|
|
|
|
#include <stdio.h>
int habitantes;
char grupo;
double masa, nAvogadro;
char pelicula[20];
printf("Num Habitantes: %d\n tipo %c",habitantes, grupo);
printf("N clásico: %f\nN Exponencial %e",masa, nAvogadro);
printf("Peli: %s",pelicula);
|
Estructuras de Control
Concepto
|
Algoritmia
|
Ejemplo
|
Sintaxis en C
|
Ejemplo
|
Secuencia
|
|
|
200px
|
scanf("%f, %f", &base, &altura);
per = 2*base+2*altura;
area = base*altura;
printf("Perímetro:%.2f\nÁrea:%.2f\n",per,area);
|
if-then
|
|
|
|
if (dsor != 0){
coc = ddo/dsor;
printf("Cociente:%.2f\n",coc);
}
|
if-then-else
|
|
|
|
if (n % 2 == 0)
printf("El número es par\n");
else
printf("El número es impar\n");
|
switch
|
|
|
|
switch (mes){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
printf("31 días\n");
break;
case 4:
case 6:
case 9:
case 11:
printf("30 días\n");
break;
case 2:
/* depende de si el año es o no bisiesto */
printf("28 o 29 días\n");
break;
default:
printf("Error: el valor no corresponde a ningún mes.\n");
}
|
while-do
|
|
|
|
while (n >= 0){
tot = tot + n;
printf("Introduzca otro número: ");
scanf("%d", &n);
}
|
do-while
|
|
|
|
do{
ant = n;
printf("Introduzca otro número: ");
scanf("%d", &n);
}
while (n >= ant);
|
for-do
|
|
|
|
tot=0;
for (i=NUMMIN; i <= NUMMAX; i=i+1)
tot=tot+i;
printf("La suma es %d\n",tot);
|
Funciones (módulos)
Concepto
|
Algoritmia
|
Ejemplo
|
Sintaxis en C
|
Ejemplo
|
Definición
|
|
a) Parte Declarativa:
- factorial(n:entero):real
- VARIABLES
- ...
- b) Representación algorítmica:
-
|
|
double factorial(int n){
int i;
double f;
f=1;
for (i=2; i <= n; i=i+1)
f = f*i;
return f;
}
|
Devolución de Resultados
|
|
|
return expresión;
|
return f*35+media(4,7,8);
|
Invocación
|
|
a) Parte Declarativa:
- CONSTANTES
- ...
- MÓDULOS LLAMADOS
- leerEntPos(): entero
- factorial(entero): real
- b) Representación algorítmica:
-
|
|
n=leerEntPos();
fact = factorial(67);
|