jueves, 31 de marzo de 2011




UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO
COLEGIO DE CIENCIAS Y HUMANIDADES  SUR



 NOMBRE DEL PROFESOR
RODRIGUEZ MALDONADO LUIS ENRIQUE


NOMBRE DE LA ALUMNA
JUAREZ HERNANDEZ ABIGAIL ANDREA



GRUPO
668



MATERIA
CIBERNETICA Y COMPUTACION II




TEMA
LENGUAJE DE PROGRAMACIÓN 










 


CICLO ESCOLAR 210-2011

INDICE

1. Introducción
1.1 Generaciones en los Lemguajes de Programación
2. Niveles en el Lenguaje de Programación
3. Pascal
3.1 Elementos basicos
4. Sentencias
4.1 Conjunto de caracteres
4.2 Palabras Reservadas
5. Identificadores
6. Estructura del programa
7. Reglas sintacticas
8. Declaraciones
9. Tipos de Rutinas
10. Tipos de Ordinales
11.Integer
11.1 Char
12. Boolean
12.1 Enumerativo
13. Conclusiones
14. Bibliografia

INTRODUCCIÓN


El lenguaje de programación, es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana.

Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.

También la palabra programación se define como el proceso de creación de un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de los siguientes pasos:
  • El desarrollo lógico del programa para resolver un problema en particular.
  • Escritura de la lógica del programa empleando un lenguaje de programación específico (codificación del programa).
  • Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina.
  • Prueba y depuración del programa.
  • Desarrollo de la documentación.
Los primeros lenguajes de programación surgieron de la idea de Charles Babagge, la cual se le ocurrió a este hombre a mediados del siglo XIX. Era un profesor matemático de la universidad de Cambridge e inventor ingles, que la principio del siglo XIX predijo muchas de las teorías en que se basan los actuales ordenadores. Consistía en lo que él denominaba la maquina analítica, pero que por motivos técnicos no pudo construirse hasta mediados del siglo XX.}

GENERACIONES EN LOS LENGUAJES DE PROGRAMACIÓN




Generación
Nombre
Particularidad
PrimeraDe máquinaEspecífico para cada microprocesador, uso de código binario
SegundaEnsambladorUso de nemotécnicos que abstraen del lenguaje máquina.
TerceraDe procedimientosLenguajes estructurados con comandos cercanos al lenguaje común.
CuartaOrientados a procesosProgramas orientados a problemas específicos.
QuintaNaturalIncluye inteligencia artificial y sistemas expertos.




 

NIVELES EN EL LENGUAJE DE PROGRAMACIÓN

El estudio de los lenguajes de programación agrupa tres intereses diferentes; el del programador profesional, el del diseñador del lenguaje y del Implementador del lenguaje.

El  "el programador" es un tanto amorfo, en el sentido de que camufla importantes diferencias entre distintos niveles y aplicaciones de la programación. Claramente el programador que ha realizado un curso de doce semanas en COBOL y luego entra en el campo del procesamiento de datos es diferente del programador que escribe un compilador en Pascal, o del programador que diseña un experimento de inteligencia artificial en LISP, o del programador que combina sus rutinas de FORTRAN para resolver un problema de ingeniería complejo, o del programador que desarrolla un sistema operativo multiprocesador en ADA.

El "diseñador del lenguaje" es también un termino algo nebuloso. Algunos lenguajes (como APL y LISP) fueron diseñados por una sola persona con un concepto único, mientras que otros (FORTRAN y COBOL) son el producto de desarrollo de varios años realizados por comités de diseño de lenguajes.

El "Implementador del lenguaje" es la persona o grupo que desarrolla un compilador o interprete para un lenguaje sobre una maquina particular o tipos de maquinas. Mas frecuentemente, el primer compilador para el lenguaje Y sobre la maquina X es desarrollada por la corporación que manufactura la maquina X

 Además, hay cuatro niveles distintos de lenguaje de programación.

Los "Lenguajes Declarativos" son los mas parecidos al castellano o ingles en su potencia expresiva y funcionalidad están en el nivel mas alto respecto a los otros. Son fundamentalmente lenguajes de ordenes, dominados por sentencias que expresan "Lo que hay que hacer" en ves de "Como hacerlo". Ejemplos de estos lenguajes son los lenguajes estadísticos como SAS y SPSS y los lenguajes de búsqueda en base de datos, como NATURAL e IMS. Estos lenguajes se desarrollaron con la idea de que los profesionales pudieran asimilar mas rápidamente el lenguaje y usarlo en su trabajo, sin necesidad de programadores o practicas de programación.

Los lenguajes de " Alto Nivel" son los más utilizados como lenguaje de programación. Aunque no son fundamentalmente declarativos, estos lenguajes permiten que los algoritmos se expresen en un nivel y estilo de escritura fácilmente legible y comprensible por otros programadores. Además, los lenguajes de alto nivel tienen normalmente las características de " Transportabilidad".

Es decir, están implementadas sobre varias maquinas de forma que un programa puede ser fácilmente " Transportado " (Transferido) de una maquina a otra sin una revisión sustancial. En ese sentido se llama "Independientes de la maquina". Ejemplos de estos lenguajes de alto nivel son PASCAL, APL y FORTRAN (para aplicaciones científicas), COBOL (para aplicaciones de procesamiento de datos), SNOBOL( para aplicaciones de procesamiento de textos), LISP y PROLOG (para aplicaciones de inteligencia artificial), C y ADA (para aplicaciones de programación de sistemas) y PL/I (para aplicaciones de propósitos generales).


Los "Lenguajes Ensambladores" y los "Lenguajes Maquina" son dependientes de la maquina. Cada tipo de maquina, tal como VAX de digital, tiene su propio lenguaje maquina distinto y su lenguaje ensamblador asociado. El lenguaje Ensamblador es simplemente una representación simbólica del lenguaje maquina asociado, lo cual permite una programación menos tediosa que con el anterior. Sin embargo, es necesario un conocimiento de la arquitectura mecánica subyacente para realizar una programación efectiva en cualquiera de estos niveles lenguajes.

Los siguientes tres segmentos del programa equivalentes exponen las distinciones básicas entre lenguajes maquina, ensambladores de alto nivel:


Como muestra este ejemplo, a mas bajo nivel de lenguaje mas cerca esta de las características de un tipo e maquina particular y más alejado de ser comprendido por un humano ordinario. Hay también una estrecha relación ( correspondencia 1:1) entre las sentencias en lenguaje ensamblador y sus formas en lenguaje maquina codificada. La principal diferencia aquí es que los lenguajes ensambladores se utilizan símbolos (X, Y, Z, A para " sumar", M para "multiplicar"), mientras que se requieren códigos numéricos (OC1A4, etc.) para que lo comprenda la maquina.

La programación de un lenguaje de alto nivel o en un lenguaje ensamblador requiere, por tanto, algún tipo de interfaz con el lenguaje maquina para que el programa pueda ejecutarse. Las tres interfaces más comunes: un "ensamblador”, un "compilador" y un "interprete". El ensamblador y el compilador traducen el programa a otro equivalente en el lenguaje X de la maquina "residente" como un paso separado antes de la ejecución. Por otra parte, el interprete ejecuta directamente las instrucciones en un lenguaje Y de alto nivel, sin un paso de procesamiento previo.

La compilación es, en general, un proceso más eficiente que la interpretación para la mayoría de los tipos de maquina. Esto se debe principalmente a que las sentencias dentro de un "bucle" deben ser reinterpretadas cada vez que se ejecutan por un interprete. Con un compilador. Cada sentencia es interpretada y luego traducida a lenguaje maquina solo una vez.

Algunos lenguajes son lenguajes principalmente interpretados, como APL, PROLOG y LISP. El resto de los lenguajes -- Pascal, FORTRAN, COBOL, PL/I, SNOBOL, C, Ada y Modula-2 - son normalmente lenguajes compilados. En algunos casos, un compilador estará utilizable alternativamente para un lenguaje interpretado (tal como LISP) e inversamente (tal como el interprete SNOBOL4 de los laboratorios Bell).

Existen cinco estilos de programación y son los siguientes:

 °Orientados a Objetos.
°Imperativa : Entrada, procesamiento y salidas de Datos.
°Funcional : "Funciones", los datos son funciones, los resultados pueden ser un valor o una función.
°Lógico : {T, F} + operaciones lógicas (Inteligencia Artificial).
°Concurrente : Aún esta en proceso de investigación.

PASCAL

Fue creado por el matemático suizo Nicklaus Wirth en 1970, basándose en el lenguaje ALGOL, en cuyo diseño había participado en los años sesenta. Su nombre proviene del filosofo y matemático francés del siglo XVII, Blaise Pascal, que invento la primera maquina tipo mecánico para sumar.

Fue el primer gran lenguaje creado después de haber sido ampliamente diseminados los conceptos asociados con la programación estructurada.

Aunque en principio la idea del diseñador era proporcionar un lenguaje adecuado para la enseñanza de los conceptos y técnicas de programación, con el tiempo ha llegado a ser un lenguaje ampliamente utilizado en todo tipo de aplicaciones, que posee grandes facilidades para la programación de sistemas y diseño grafico.

Aporta los conceptos de tipo de datos, programación estructurada y diseño descendente, entre otros, además de haberse convertido en predecesor de otros lenguajes más modernos, como MODULA-2 y ADA




 






ELEMENTOS BASICOS

 
Un programa en PASCAL es un conjunto de instrucciones o sentencias, escritas según ciertas reglas, para realizar operaciones sobre entidades de datos conocidas como constantes, variables y resultados de funciones. La constante es una entidad cuyo valor no puede ser modificado durante la ejecución. La variable es una entidad cuyo valor puede modificarse durante la ejecución. Una función es un conjunto de operaciones asociadas a un nombre y que devuelve un valor.
 
En PASCAL, todo dato está asociado a un TIPO de datos y debe ser declarado antes de utilizarse. Un TIPO de datos está representado por un identificador y determina el rango de valores que un elemento de datos puede tomar, así como las operaciones a que puede ser sometido. Además, el TIPO determina el espacio en memoria necesario para almacenar cualquiera de los valores posibles que puede tomar esa entidad.

El compilador de PASCAL proporciona identificadores para algunos tipos que están predefinidos : números enteros y reales, valores lógicos, caracteres alfanuméricos, registros,tablas, cadenas de caracteres, conjuntos, ficheros y punteros a estructuras dinámicas. Pero, además, el PASCAL permite al usuario crear sus propios tipos definiendo identificadores de su elección para representar rangos de valores. Estos también llevan asociados un conjunto de operadores admisibles y unas necesidades determinadas de espacio en memoria.

El tipo de una constante es el tipo de su valor correspondiente. El tipo de una variable es el tipo establecido cuando se declaró y no puede modificarse en general. El tipo de una función es el del valor que devuelve. Los valores de las variables y de las funciones pueden cambiar tantas veces como se desee durante la ejecución de un programa, pero esos valores deben permanecer siempre dentro del rango establecido por su tipo. Una variable no adopta un valor hasta que el programa le asigna uno. El valor de una función se calcula durante la ejecución de dicha función.
 
En PASCAL también existen las EXPRESIONES que, igualmente, corresponden a algun tipo siempre. Una expresión representa al valor resultante de operar alguna combinación de constantes, variables, funciones, con ciertos operadores. Se pueden usar operadores aritméticos, relacionales, lógicos, de manejo de cadenas de caracteres, y de conjuntos. Las operaciones aritméticas producen valores enteros o reales. Las operaciones relacionales y lógicas producen valores booleanos. Las operaciones entre conjuntos permiten obtener la unión, la intersección y las diferencias entre conjuntos.


Las características del concepto de TIPO que están incorporadas al PASCAL son las
siguientes :

1. Un tipo de datos determina el conjunto de valores al que pertenece unaconstante,o que puede tomar una variable o expresión, o que pueden ser generados por un operador o función.

2. El tipo de valor identificado por una constante, variable o expresión puede deducirse de su forma o de su declaración sin necesidad de ejecutar el proceso de cálculo.

3. Cada operador o función presupone argumentos de un tipo determinado y produce un resultado también de un tipo determinado. Si un operador admite argumentos de varios tipos ( por ejemplo, se utiliza el símbolo "+" igualmente para sumar enteros y reales ) el tipo del resultado puede determinarse a partir de reglas específicas del lenguaje.

SENTENCIAS


Las sentencias de un programa en PASCAL se forman con elementos que pueden ser :

- símbolos individuales, tales como los operadores aritméticos.
- palabras con un significado especial en PASCAL y palabras definidas por el usuario.

Los elementos gramaticales se construyen con caracteres. Un carácter es cualquier elemento de la tabla de codificación ASCII ( Tabla 2.1 ). Algunos caracteres son SIMBOLOS ESPECIALES que se usan en PASCAL como delimitadores de sentencias, como operadores y como elementos sintácticos del lenguaje. Ejemplo : " ; " , " > ", " < > " , " = " .

Las PALABRAS usadas en un programa en PASCAL son combinaciones de caracteres alfabéticos y numéricos. Ocasionalmente pueden incluirse el signo del dólar ($), el de subrayar ( _ ) y el del tanto por ciento (%) en algunas implementaciones. Algunas PALABRAS están RESERVADAS para nombres de sentencias ejecutables, de operaciones y de estructuras de datos predefinidas.

Otras PALABRAS usadas en los programas son los IDENTIFICADORES. Algunos están PREDEFINIDOS y representan rutinas y tipos de datos que proporciona el PASCAL. Otros identificadores usados son los DEFINIDOS POR EL USUARIO para poner nombre a programas, constantes simbólicas, variables y cualquier elemento del programa que no haya sido denominado.


EL CONJUNTO DE CARACTERES

El PASCAL estandar usa el conjunto de la tabla de codificación ASCII ( AmericanStandard Code for  Information Interchange ) que contiene 128 caracteres puestos en orden.

Hay varias clases de caracteres :

. Las letras mayúsculas y las minúsculas desde la " A " a la " Z " y desde la " a " a la " z ".
. los números del " 0 " al " 9 ".
. Caracteres especiales, tales como el "ampersand" (&), el signo de interrogación (?), el signo de igualdad (=).

. Caracteres no imprimibles, tales como el espacio en blanco, el tabulador, el salto de linea, el retorno de carro, el pitido. En general, los compiladores de PASCAL no distinguen entre letras mayúsculas y minúsculas excepto cuando se escriben entre apóstrofos.

Ejemplo : PROGRAM Uno y PROGRAM UNO son equivalentes.
' Pepe Pérez ' y ' PEPE PEREZ ' son diferentes.

 Cada elemento es un valor constante del tipo predefinido CHAR. El número decimal que lleva asociado cada elemento es el ordinal que devuelve la función ORD de PASCAL aplicada a ese carácter.



PALABRAS RESERVADAS

En la definición del lenguaje PASCAL, algunas palabras están reservadas. Se usan como nombres de sentencia, de tipos de datos y de operadores. Suelen escribirse con mayúsculas, aunque no es necesario.
Las palabras reservadas sólo se pueden usar, dentro de un programa, en el contexto para el que han sido definidas. No se pueden redefinir para usarlas como identificadores.




IDENTIFICADORES

Son nombres que denotan constantes, tipos, variables, procedimientos y funciones. Pueden incluir letras y dígitos cumpliendo las restricciones siguientes:

. Un identificador no puede comenzar con un dígito.
. Un identificador no puede tener espacios en blanco ni dígitos especiales.
. Los primeros caracteres de un identificador (31 en VAX PASCAL) deben designar un nombre único dentro del bloque de programa en el que ha sido definido.

En PASCAL hay algunos identificadores que están predeclarados como nombres de procedimientos, de funciones, tipos de datos, constantes simbólicas y variables de fichero.




ABS  FALSE   PACK    SQR
ARCTAN    GET    PAGE     SQRT
BOOLEAN   INPUT   PRED  SUCC
CHAR  INTEGER  PUT  TEXT
CHR  LN  READ  TRUE
COS MAXINT READLN TRUNC
DISPOSE NEW REAL UNPACK
EOF NIL RESET WRITE
EOLN ODD REWRITE WRITELN
EXP  ORD  ROUND
OUTPUT  SIN


En un programa puede redefinirse cualquier identificador predeclarado para denominar otra entidad. Si se hace eso, no podrá utilizarse tal identificador para su propósito habitual dentro del bloque donde se haya redefinido.

No es recomendable redefinir identificadores predeclarados porque se pierde acceso a
prestaciones del lenguaje útiles. Los identificadores definidos per el usuario se usan para nombrar programas, módulos, constantes, variables, procedimientos, funciones, secciones de un programa y tipos definidos por el usuario. Estos identificadores representan estructuras de datos significativas, valores y acciones que no están representadas por alguna palabra reservada, identificador predeclarado o símbolo especial.

ESTRUCTURA DEL PROGRAMA

Un programa escrito en PASCAL consta de un ENCABEZAMIENTO y un BLOQUE. En el encabezamiento se especifica el nombre del programa y los nombres de los ficheros externos que se usan para entrada de datos y salida de resultados.

El bloque está dividido en dos partes :

. La sección de las declaraciones, donde se declaran todos los datos y las rutinas.

. La sección ejecutable, que contiene sentencias ejecutables. Un programa también puede contener lineas de comentario intercaladas en cualquier lugar. Sintácticamente, un programa comienza con la palabra PROGRAM y termina con un punto "." El primer ejemplo muestra un caso sencillo donde sólo se pretende ofrecer un visión general :

PROGRAM
(* Ejemplo PAS001 *)
(* Aqui no hay declaraciones. No se necesitan *)
BEGIN
WRITELN (' Que tal va con este capítulo ? ') ; (* Esta es la única sentencia
 END.





Uno ( INPUT, OUTPUT ) ; (* Este es el encabezamiento *)

REGLAS SINTACTICAS

1.El punto y coma ( ; ) y el punto ( . ) son DELIMITADORES en PASCAL. El punto y coma separa sentencias consecutivas. También se usa para terminar el encabezamiento del programa y las declaraciones de los datos. No es necesario escribir punto y coma después de la palabra BEGIN ni antes de la palabra END porque BEGIN y END no son sentencias. El punto indica el final del programa.

2. Las palabras BEGIN y END también son delimitadores, no son sentencias.Se usan para separar las partes funcionales de un programa. Con ellas se indica el principio y el final de la sección ejecutable. También sirven para delimitar una sentencia compuesta. Cada BEGIN debe estar asociado con un END, excepto en dos casos : la sentencia CASE y la declaración de RECORD.

3. El PASCAL permite formato libre en la escritura del texto que compone el programa. Se pueden colocar las sentencias en cualquier lugar de una línea, escribir una sentencia en más de una línea y colocar varias sentencias en una misma línea. Pero no se puede dividir un nombre y un número entre varias líneas
o con un espacio en blanco.

4. Un programa puede contener comentarios en cualquier lugar. Los comentarios se delimitan encerrándolos entre llaves ( { } ). También es posible comenzar un comentario con " ( * " y acabarlo con " * ) ".

PROGRAM
TYPE
colores = (verde,rojo,ámbar,amarillo) ;
VAR
color : colores ;
BEGIN
WRITELN (' De que color está el semáforo (verde, rojo, ámbar) ? ') ;
READLN (color) ;
CASE color OF
verde : WRITELN(' PUEDES PASAR, PERO MIRA POR SI ACASO ');
amarillo, ámbar, rojo : WRITELN (' QUIETO !, ESPERA ')
END ;
END.
Cruzar_calle ( INPUT, OUTPUT ) ;

DECLARACIONES



Todas las entidades definidas por el usuario que se usan en un programa deben ser
declaradas en esta sección, indicando un identificador y lo que representa.


ETIQUETAS ( LABEL )
CONSTANTES ( CONST )
TIPOS ( TYPE )
VARIABLES ( VAR )
PROCEDIMIENTOS ( PROCEDURE )
FUNCIONES ( FUNCTION )

No es necesario que un programa contenga declaraciones de todas esas categorías. Podría no haber ninguna como en el ejemplo PAS001. Las declaraciones pueden escribirse en un orden cualquiera.

Una misma clase de declaración puede aparecer más de una vez. Pero una declaración particular no se puede repetir en un bloque. Las etiquetas son enteros decimales que pueden usarse para señalar alguna sentencia y hacerla accesible mediante la sentencia GOTO. Aqui ya no se va a dedicar más atención a las sentencias de declaración porque se describirán más adelante, pero se indican algunos ejemplos para mostrar la forma que adoptan:

TYPE estaciones = (primavera, verano, otoño, invierno) ;
VAR letra : CHAR;
CONST pi = 3.1416 ;
LABEL 100, 200, 300 ;

TIPOS DE RUTINAS

En PASCAL se usan dos tipos de rutinas: los PROCEDIMIENTOS y las FUNCIONES.

Los procedimientos se usan para realizar un conjunto de acciones. Se invocan con una sentencia ejecutable denominada " llamada a procedimiento " Las funciones se usan para obtener y devolver un valor. Se invocan cuando un identificador de función aparece dentro de una expresión.

El compilador de PASCAL suministra muchas rutinas predeclaradas para realizar operaciones de uso frecuente, como las de entrada y salida. Una rutina consta de un encabezamiento y un bloque que hay que definir en la declaración de la rutina ( recordar que los procedimientos y funciones son entidades que hay que declarar en los programas ). El encabezamiento contiene el nombre de la rutina, una lista de parámetros formales que declaran los datos externos a la rutina y, en el caso de las funciones, el tipo del resultado o valor de la función.

El bloque de la rutina contiene una sección de declaraciones opcional y una sección ejecutable. En la primera se declaran datos que son locales a la rutina y son inaccesibles o desconocidos desde fuera.

El PASCAL es un lenguaje para la programación estructurada en bloques. Permite
anidar bloques de rutinas, no sólo dentro del programa principal, sino también dentro de
otra rutinas.

Cada rutina puede tener sus propias declaraciones y definiciones locales, incluso sepuede redeclarar en ella un identificador que haya sido declarado en un bloque más externo.Una rutina declarada en un nivel  más interno tiene acceso a las declaraciones y definiciones hechas en todos los bloques que la contienen.

La parte del programa donde se tiene acceso a un identificador se llama ámbito o alcance del identificador. Fuera de ese dominio, un identificador no tiene significado o tiene significado diferente.

Concretamente,
el ámbito de un identificador es el bloque donde ha sido declarado. Como los bloques pueden estar anidados, el alcance de un identificador puede incluir a bloques situados a niveles inferiores en la jerarquía del programa. En el ejemplo del diagrama que sigue es fácil comprobar las siguentes afirmaciones

TIPOS DE ORDINALES

Los valores de un tipo ordinal tienen una correspondencia biunívoca con el conjunto de enteros positivos. Tales valores estan ordenados de manera que a cada uno le corresponde un valor ordinal único que indica su posición en la lista de todos los valores posibles de ese tipo.

Hay tres funciones predeclaradas que operan solamente sobre expresiones de tipo ordinal, proporcionando información sobre la secuencia de valores ordenados de ese tipo:

. La función PRED busca al predecesor de cualquier valor de un tipo ordinal, excepto para el menor de todos.

. La función SUCC busca al sucesor de cualquier valor de un tipo ordinal, excepto para el mayor de todos.

. La función ORD busca al ordinal de un valor y lo devuelve como un entero. El ordinal de un entero es el mismo entero.

INTEGER


Incluye a los valores enteros positivos y negativos desde -2**31+1 hasta 2**31-1. Este campo contiene valores que van desde -2.147.483.647 hasta 2.147.483.647. Ocupa 32 bits en memoria.

El mayor valor posible de tipo INTEGER está asignado al identificador de constante predefinido MAXINT. Los valores de tipo INTEGER se representan con dígitos decimales. No se admiten ni el
punto ni la coma.

Estos son valores correctos:
32
0
87314

También se pueden usar enteros negativos pero hay que tener en cuenta que un entero negativo como -32, por ejemplo, no es una constante, es una expresión formada por el signo (-) y el valor entero 32. El uso de enteros negativos en expresiones aritméticas complejas puede dar lugar a resultados distintos de los esperados si no se interpreta bien esta cuestión.


Las operaciones de entrada (lectura) permiten suministrar el signo "más" o "menos" con  los valores enteros. En las operaciones de salida, el signo de los valores negativos se incluye automáticamente.
Los datos de tipo INTEGER pueden ser sometidos a operaciones aritméticas

CHAR


Sus valores posibles son cada uno de los elementos del conjunto de caracteres ASCII. Ocupan ocho bits en memoria. Para especificar un caracter constante basta con escribir cualquier caracter ASCII imprimible entre apóstrofos. Para especificar el apóstrofo mismo hay que escribirlo dos veces entre apóstrofos. Cada una de las siguientes es una constante de tipo CHAR válida:

 'A' '.'
'Z' '''' (es el apóstrofo)
'0' '?'

Se pueden escribir cadenas de caracteres como 'BUENOS DIAS' y 'que tal está?', pero deben ser tratados como datos estructurados tales como las tablas ( ARRAY ) de caracteres. Al aplicar la función ORD sobre una expresión de tipo CHAR, se obtiene como resultado el valor ordinal que indica su posición en la tabla ASCII. Por ejemplo, si la variable "letra_A" tiene el valor 'A', entonces la expresión ORD (letra_A) devuelve el valor 65 .Las variables de tipo CHAR pueden ser sometidas a operaciones de concatenación

 

BOOLEAN

Los datos de tipo BOOLEAN sólo pueden tomar dos valores constantes que se describen con los identificadores predeclarados FALSE (falso) y TRUE (verdadero). Tales valores están ordenados de forma que FALSE es menor que TRUE. La función ORD aplicada sobre el valor FALSE devuelve el entero 0 y aplicada sobre TRUE devuelve el entero 1. Al chequear la veracidad o validez de las relacciones de comparación se obtiene como resultado un valor de tipo BOOLEAN.

ENUMERATIVO

Un tipo Enumerativo es un conjunto de valores constantes ordenados representados por
identificadores. Estos tipos no están predefinidos por el compilador. Los inventa el usuario.


En la declaración es donde el usuario define el tipo listando todos los identificadores en orden, separados por comas y encerrados entre paréntesis.

Sintaxis: ( { identificador }, ... )
Ejemplo: ( Primavera, Verano, Otoño, Invierno )


Los valores de un tipo enumerativo quedan ordenados según su posición en la lista de izquierda a derecha. A cada identificador le queda asignado un valor ordinal comenzando en cero para el primero.

La función ORD puede aplicarse sobre expresiones de tipo enumerativo. Para el ejemplo propuesto, las siguientes afirmaciones son correctas:


ORD (Primavera) es menor que ORD (Verano)
ORD (Verano) es igual a 1

Los identificadores de los tipos enumerativos no pueden ser definidos para otros propósitos dentro del mismo bloque de programa. Con el PASCAL para VAX-11, un tipo enumerativo puede tener hasta 65535 identificadores como máximo. Otros ejemplos de estos tipos:
(agua, vino, cerveza, leche)
(cilindro, cono, esfera)
(recluta, soldado, cabo, sargento)
(fluor, cloro, bromo, yodo)


CONCLUSIONES

Como puede verse, existen lenguajes específicos para cada tarea diferente. son muchos los lenguajes de porgramacion

Los lenguajes y las Técnicas de Programación son importantes para la utilización de la computadora como una herramienta para resolver problemas.

En computación, un Problema consiste en la necesidad de transformar un grupo de datos iniciales en un grupo diferente de datos finales (resultados).

De este modo, una computadora podrá resolver un problema si alguien desarrolla un programa que contenga las instrucciones adecuadas que permitan transformar los datos.

Los lenguajes deben ser confiables, comprensibles, eficientes en términos de tiempo de ejecución y consumo de espacio, y deben satisfacer las necesidades de una comunidad, ya sean científicos, hombres de negocios o usuarios no técnicos. Cada uno estos grupos está acostumbrado a un vocabulario particular y una manera de ver las cosas; de este modo, existe una gran variedad de lenguajes y muy probablemente esto continuará siendo así.

BIBLIOGRAFIA

http://www.lenguajes-de-programacion.com/programacion-en-pascal.shtml
http://sicuz.unizar.es/siscen/doc/ccuz19.pdf
http://www.monografias.com/trabajos/lengprog/lengprog.shtml
http://teleformacion.edu.aytolacoruna.es/PASCAL/document/intro.htm
http://es.kioskea.net/contents/langages/langages.php3
http://www.rena.edu.ve/cuartaEtapa/Informatica/Tema13.html