1960 - ALGOL - primer lenguaje de alto nivel bien estructurado y algorítmico
1963 - CPL - "Combined Programming Language" desarrollado en Cambridge; combinando ALGOL y lenguaje simbólico
1967 - BCPL "Basic Combined Programming Language" Martin Richards
1970 - B - Ken Thompson en AT&T's Bell Laboratories
1972 - C - Dennis Ritchie en AT&T's Bell Laboratories
1983 - C++ - Bjarne Stroustrup en AT&T's Bell Laboratories
Lenguaje de alto nivel que evolucionó según las necesidades de los programadores de sistemas, especialmente del sistema operativo UNIX. Basado en el lenguaje "ALGOL". Su nombre es tomado del operador incremental de suma.
Una de sus características principales es la de permitir la introducción de instrucciones al estilo del Lenguaje Simbólico, basado en mnemónicos; y la de poder enviar y recibir códigos especiales de las diferentes unidades de entrada y salida. Facilita la técnica : "Object Oriented Programming". Maneja clases de objetos.
Un programa en "C++" consiste de líneas de hasta 256 columnas de largo. Cada oración termina con el signo de punto y como (;). Las oraciones se agrupan por medio de corchetes: {}. Contiene treinta y dos (32) palabras reservadas: auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, return, short, signed, sizeof, static, struct, switch, typedef, union, unsigned, void, volatile, while.
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 01234567B9+-*/().=",! $:;<>(){}\¦~'@&%?_ y el espacio en blanco
Antes de comenzar el programa se incluyen directrices al compilador sobre las bibliotecas que debe buscar para encontrar las funciones utilizadas en el programa. Por ejemplo :
#include <stdlib.h>
#include <stdio.h>
#include <math.h>.
Los comentarios se identifican con //
ó encerrados entre /* y */.
Nombres de una (1) a treinta y una (31) letras y/o dígitos, la primera de las cuales tiene que ser una letra. Distingue entre minúsculas y mayúsculas.
código | operación | jerarquía | precedencia |
+ | suma | 2 | => |
- | resta | 2 | => |
* | multiplicación | 1 | => |
/ | división | 1 | => |
% | módulo | 1 | => |
constante aritmética
variable aritmética
exp.arit. oper.arit. exp.arit.
( exp.arit. )
función( exp.arit. )
== igual
!= diferente
< menor
<= menor o igual
> mayor
>= mayor o igual
! -> negación
&& -> y
|| -> ó
constante lógica
variable lógica
exp.log. oper.log. exp.log.
( exp.log. )
exp.arit. oper.rel. exp.arit.
variable = expresión;
variable ++;
equivale a variable = variable + 1;
variable --;
equivale a variable = variable - 1;
variable += expresión;
equivale a variable = variable + expresión;
variable -= expresión;
equivale a variable = variable - expresión;
variable *= expresión;
equivale a variable = variable * expresión;
variable /= expresión;
equivale a variable = variable / expresión;
cout << lista de expresiones separadas por << ...;
printf( "especificaciones", lista de expresiones separadas por coma );
La salida es siempre a la pantalla. El formato de salida es establecido por el compilador ó por las especificaciones dadas.
cin >> lista de variables sepradas por >> ...;
scanf( "especificaciones", &variables );
La entrada es siempre por el teclado. El formato de entrada es libre ó el indicado por las especificaciones.
if ( expresión lógica )
{
oraciones
}
else
{
oraciones
}
a) while ( expresión lógica )
{
oraciones
}
b) for ( oración inicial; condición; modificación )
{
oraciones
}
tipo nombre( parámetros con tipos ){ return expresión; }
tipo nombre ( parámetros formales con tipos )
{
oraciones
return expresión;
}
void nombre ( parámetros con tipos y asterísco)
{
oraciones
return;
}
FILE *nombre; como declaración
nombre = fopen( "nombre externo", "r" ); para entrada
nombre = fopen( "nombre externo", "w" ); para salida
fscanf( nombre, "especificaciones", lista de variables precedidas de & ); para leer
feof( nombre ) para cotejar el final del archivo
fprintf( nombre", "especificaciones", lista de expresiones ); para escribir
fclose( nombre ); para cerrar
Punto fijo
%wd
Punto flotante
%w.df ó %w.se
Doble precisión
%w.dlf ó %w.sle
Caracteres
%ws
Terminar línea
\n
#include<stdlib.h> #include<stdio.h> #include<math.h> double PROMED( double[],int ); int main( void ) { /* PROPOSITO : EJEMPLO DE PROGRAMA EN C */ /* AUTOR: PROF. CABASSA */ int I; double A[100]; double S; FILE *Tres; Tres = fopen( "EJEMPLO.DAT", "r" ); I = 0; fscanf( Tres, "%10lf", A[I] ); while ( ! feof( Tres ) && I < 99 ) { I++; fscanf( Tres, "%10lf", A[I] ); } if ( I == 0 ) { fprint( "NO ENTRO VALORES\n" ); } else { S = PROMED( A, I - 1 ); fprint( "EL PROMEDIO ES %20.6lE\n", S ); } fclose( Tres ); return 0; } double PROMED( double X[],int N ) { /* PROPOSITO : CALCULAR PROMEDIO */ /* AUTOR : PROF. CABASSA */ int I; double SUMA; SUMA = 0.0; for ( I = 0; I < N; I++ ) { SUMA += X[I]; } return SUMA / (double ) N; }
©Derechos Reservados - 1994 - Prof. H. D. A. Cabassa