Wikipedia para siempre
TreeWeb::Artículos::Manual::Turbo Pascal 7
Permalink: http://www.treeweb.es/u/1061/ 04/04/2011

Turbo Pascal 7

Tipos de datos

  • INTEGER -100
    Rango: (-32768,32768-1) 2 bytes
  • REAL 3.14e-04
    Rango: (-2.9E-38,2.9E-38)U(-1.7E+38,1.7E+38) 6 bytes
  • CHAR ‘A’
    1 carácter ASCII, 1 byte
  • BOOLEAN TRUE
    1 bit
  • STRING ‘CADENA’
    1 cadena ASCII,
  • WORD
  • DOUBLE
  • EXTENDED
  • LONGINT
  • SINGLE

Declaraciones

La especificación de los identificadores en EBNF es la siguiente:
    0 
    1 CONST
    2     CONSTANTE1 = .35E-1
    3     CONSTANTE2 = ‘A’

    4 
VARIABLES
    0 
    1 VAR
    2     X,Y,Z : INTEGER;

    3 
MATRICES
    0 
    1 TYPE
    2     Matriz = ARRAY [1..5,0..7] OF Tipo1;

    3 

Estructura de un programa básico

    0 
    1 PROGRAM NombrePrograma;
    2     USES Archivo;
    3     VAR
    4         {----}
    5     CONST
    6         {----}
    7     TYPE
    8         {----}
    9 
   10     FUNCTION A(--------)
   11     FUNCTION N(--------)
   12                     
   13     PROCEDURE A(-------)
   14     PROCEDURE N(-------)
   15 
   16     {COMENTARIOS DE REQUISITOS DEL }
   17     {PROGRAMA}
   18     {COMENTARIOS DEL © Y FECHA}
   19     {COMENTARIOS DE IDEAS}
   20     BEGIN
   21         {CÓDIGO DEL PROGRAMA}
   22     END.

   23 

Operadores

BÁSICOS
FUNCIONES MATEMÁTICAS := ASIGNACIÓN
ABS() |x|


ArcTan() Atn(x) COMPARACION
Cos() Cos(x) <=

Exp() ex <

Ln() ln x >=

Round() Redondea x >

Sin() Sen (x) = IGUAL
Sqr() X2 <> DISTINTO
Sqrt() RaizCuadrada x


Trunc() ###.#### MATEMATICOS
Frac() ###.#### + SUMA
Int()
- RESTA
Pi Π * PRODUCTO
Random 0.0<= x <1.0 / DIVISION REAL
Random(n) 0 <= x < n DIV DIVISION ENTERA


MOD RESTO
OPERADORES LOGICOS


AND Y CONVERSION DE VARIABLES
OR O INT() INTEGER
NOT NO SIN() SINGLE


STR() STRING
OPERADORES CON CADENAS VAR() VARIANT
CHR



ORD CODIGO ASC


PRED PREDECESSOR


SUCC SUCESOR


ODD 1 SI ES IMPAR




Prioridad de operadores

  1. Paréntesis, NOT
  2. *,/,DIV, MOD
  3. +,-
  4. Operaciones de izquierda a derecha
  5. <, <=, >, >=, =, <>

Funciones intrínsecas del compilador

I/O WriteLn(‘dds’,var) Escribe una linea Write(‘dds’,var) Escribe los caracteres indicados ReadLn(var1, var2) Asigna valores por teclado a varN *SALIDA CON FORMATO Var1:4 Var1:4:2 0042,51 Var1:len var:len:dec ENTORNO DE DESARROLLO *COMENTARIOS ENTRE LLAVES: {}





Bucles

FOR
    0 
    1 FOR Variable := {Inicio} TO {Final} DO
    2 BEGIN
    3     {CODIGO}
    4 END;

    5 
WHILE
    0 
    1 WHILE {Condición} DO
    2 BEGIN
    3     {CODIGO}
    4     {MODIFICADOR DE LA CONDICIÓN}
    5 END;

    6 
REPEAT
    0 
    1 REPEAT
    2     {CODIGO}
    3     {MODIFICADOR DE LA CONDICION}
    4 UNTIL {Condición};

    5 
WITH
    0 
    1 WITH {Variable de tipo RECORD} DO
    2 BEGIN
    3     {CODIGO}
    4 END;

    5 

Control del flujo de programa

IF
    0 
    1 IF {Condición} THEN
    2 BEGIN
    3     {CODIGO}
    4 END
    5 ELSE IF {Condición} THEN
    6 BEGIN
    7     {CODIGO}
    8 END
    9 .
   10 .
   11 .
   12 ELSE
   13 BEGIN
   14     {CODIGO}
   15 END;

   16 
CASE
    0 
    1 CASE {Variable} OF
    2     A,B,C : {CÓDIGO}
    3     D,E,F : {CÓDIGO}
    4     A..X  : {CÓDIGO}
    5 ELSE
    6 BEGIN
    7     {CÓDIGO}
    8 END;

    9 

Programación modular

LLAMADA A UNA FUNCIÓN
    0 
    1 A:= NombreFuncion (a,b,c...{resto de argumentos})

    2 
Nota: Una función siempre devuelve un valor.

DECLARAR UNA FUNCIÓN

    0 
    1 FUNCTION NombreFuncion(Var A,B,C,D:Tipo1; E,F:Tipo2):Tipo3;
    2     {DECLARACION D OTRAS VARIABLES Y CONSTANTES}
    3 BEGIN
    4     {CODIGO DE LA FUNCION}
    5 END;

    6 
DECLARAR UN PROCEDIMIENTO
    0 
    1 PROCEDURE NombreProcedimiento (Var A,B,C,D:Tipo1; E,F,G:Tipo2);
    2     {DECLARACION DE OTRAS VARIABLES Y CONSTANTES}
    3 BEGIN
    4     {CODIGO DEL PROCEDIMIENTO}
    5 END;

    6 
UTILIZAR FUNCIONES RECURSIVAS
    0 
    1 FUNCTION NombreFuncRec(Var1,Var2:Tipo1):Tipo1;
    2     {DECLARACIÓN DE OTRAS VARIABLES Y CONSTANTES}
    3 BEGIN
    4     IF ______ THEN
    5         NombreFuncRec:= VarX
    6     ELSE
    7         NombreFuncRec:= NombreFuncRec * ....
    8 END;

    9 
Powered by TreeWeb
© TreeWeb 2010. Todos los derechos reservados