Elementos de un Programa

De 19E37 - Academia de Ciencias
Saltar a: navegación, buscar

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.png
#include <math.h>
#include <stdio.h>
Constantes Tabourier-constantes.png CONSTANTES
LETRA = 'a'
PI = 3.1415
Define.png
#define LETRA 'a'
#define PI 3.141592
Variables Tabourier-variables.png VARIABLES
radio, diámetro: real
grupo: carácter
edad: entero
frase: cadena
*punteroAReal: real
Variables.png
float radio, diametro;
char grupo;
int edad;
char frase[15];
float *punteroAReal;
Vector Vector.png VARIABLES
habitantes[100]: entero
Vector-C.png
 int habitantes[100];
Matriz Matrices.png VARIABLES
habitantes[100][3]: entero
Matrices-C.png
 int habitantes[100][3];
Tipos Tipos.png TIPOS
tipoAlumno = id:entero
          nombre[35]:carácter
          grupo:carácter
          nota:real
Tipos-C.png
 typedef struct{
    int id;
    char nombre[35];
    char grupo;
    double nota;
}tipoAlumno;

Instrucciones

Concepto Algoritmia Ejemplo Sintaxis en C Ejemplo
Inicio Tabourier-inicio.png Tabourier-inicio-ej.png
int main(){
 ... instrucciones ...
 return 0;
}
Asignación Tabourier-asignacion.png Tabourier-asignacion-ej.png
edad = 25;
Entrada de Datos Tabourier-entrada.png Tabourier-entrada-ej.png Entrada.png
#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 Escribir.png Escribir-ej.png Printf.png
#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 Block.png Block-ej.png 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-then.png If-then-ej.png If-then-C.png
if (dsor != 0){
  coc = ddo/dsor;
  printf("Cociente:%.2f\n",coc);
}
if-then-else If-then-else.png If-then-else-ej.png If-then-else-C.png
if (n % 2 == 0)
  printf("El número es par\n");
else
  printf("El número es impar\n");
switch Switch.png Switch-ej.png Switch-C.png
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-do.png While-do-ej.png While-do-C.png
while (n >= 0){
   tot = tot + n;
   printf("Introduzca otro número: ");
   scanf("%d", &n);
}
do-while Do-while.png Do-while-ej.png Do-while-C.png
do{
   ant = n;
   printf("Introduzca otro número: ");
   scanf("%d", &n);
}
while (n >= ant);
for-do For-do.png For-do-ej.png For-do-C.png
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 Funcion.png a) Parte Declarativa:
factorial(n:entero):real
VARIABLES
...
b) Representación algorítmica:
Tabourier-funcion.png
Funcion-C.png
 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.png Return.png return expresión;
  return f*35+media(4,7,8);
Invocación Invocacion.png
Invocacion-tabourier.png
a) Parte Declarativa:
CONSTANTES
...
MÓDULOS LLAMADOS
leerEntPos(): entero
factorial(entero): real
b) Representación algorítmica:
Invocacion-ej.png
Invocacion-C.png
  n=leerEntPos();
  fact = factorial(67);
Herramientas personales
Espacios de nombres

Variantes
Acciones
Navegación
Apuntes y Problemas
Cursos
La Academia
Herramientas