Vous êtes sur la page 1sur 3

GLOSARIO Y EJERCICIOS

Jorge Muchnik & Jos Mara Sola - SSL, abril 2005



Pratt significa Pratt, Terrence W.: Programming Languages Design and Implementation (2nd edition); Prentice Hall
[M4] significa Mdulo 4. Contiene artculo sobre TAD.

ABSTRACCIN
Proceso por el cual se separan los detalles de los elementos relevantes en el contexto del anlisis de
una situacin.
Pratt: Una parte sustancial de la tarea de un programador consiste en disear las abstracciones
apropiadas para la resolucin de un problema, y luego implementar esas abstracciones usando las
construcciones, ms primitivas, que brinda un lenguaje de programacin.
Ejercicio 1: abstraccin procedural. Implemente en ANSI C una herramienta que reciba 3 nmeros
enteros cualesquiera y determine si estn ordenados de menor a mayor o no.

CONSTANTE (como objeto)
Objeto que reside en memoria principal durante la ejecucin de un programa (proceso) y que no puede
ser modificado. Este objeto tiene un nombre (identificador) en el programa.
Ejemplo en ANSI C: const double pi = 3.1416;
LITERAL (como token)
Elemento sintctico (token) que representa un valor determinado de un tipo de dato. A veces tambin
conocido como constante, lo cual puede llevar a confusin.
Ejemplos: 124 'A' "hola" 124.0
Ejercicio 2: escriba tres constantes enteras en ANSI C, una en base 10, otra octal y otra hexadecimal.
Ejercicio 3: escriba dos constantes reales, una en punto fijo y otra en punto flotante.
Ejercicio 4: escriba una constante carcter y una constante cadena, tanto en Pascal como en C.
Ejercicio 5: cmo se implementa una cadena en Pascal y cmo en C? Virtudes y defectos de cada una.

VARIABLE
Pratt: es un objeto de dato con un nombre, definido explcitamente por el programador en un programa.

TIPO DE DATO
Pratt: es una clase de objetos de dato junto a un conjunto de operaciones para crearlos y manipularlos.
Sintetizando: {valores} y {operaciones que se aplican a esos valores}

TIPO DE DATO PRIMITIVO
Es un tipo de dato perteneciente a un determinado lenguaje de programacin; que est incorporado en
l. No se puede modificar su especificacin ni su implementacin. Ver [M4]
Ejemplo: integer en Pascal, int en C.
Ejercicio 6: cules son los valores del tipo de dato int en C?; cules son las operaciones primitivas
que se pueden aplicar a esos valores?

TIPO DE DATO ABSTRACTO (TAD)
Es un tipo de dato definido por el/la programador/a; se debe se construir porque no existe como tipo de
dato primitivo. Tiene dos partes: especificacin e implementacin. Ver [M4]. Ejemplo: nmero
complejo.
Ejercicio 7: Especifique el TAD Calendario Acadmico.
2 Glosario con Ejercicios

ESTRUCTURA DE DATOS
Pratt: es un objeto de dato que contiene otros objetos de dato como sus componentes.
Ejercicio 8: describa, con sus palabras, las diferencias sintcticas que hay en las declaraciones de un
vector en Pascal y en C.
Ejercicio 9: describa, con sus palabras, las diferencias sintcticas que hay en las declaraciones de una
matriz en Pascal y en C.

[agrego] OPERACIN
Pratt: una operacin en un lenguaje de programacin es una funcin matemtica: dado uno (o ms
operandos) produce un resultado nico y bien determinado.
Aclaracin sobre la definicin de Pratt. En esa definicin Pratt se refiere al valor que retorna una funcin
(return). Pero una funcin tambin puede devolver resultados a travs de sus parmetros.
Ejemplos: +: entero x entero -> entero.

OPERADOR
Es un smbolo, constituido por uno o ms caracteres, que representa a una determinada operacin.

PRECEDENCIA o PRIORIDAD
Ejercicio 10: Considere solo los operadores aritmticos, de relacin y booleanos, de los lenguajes Pascal
y C. Compare la precedencia de esos operadores entre estos dos lenguajes. Escriba un informe. Si
existe diferencia, en qu influye?

SENTENCIA
Ejercicio 11: Qu es el punto y coma para una sentencia en Pascal y para una sentencia en C?
Ejercicio 12: Es 2+4; una sentencia correcta en Pascal? Por qu?
Ejercicio 13: Es 2+4; una sentencia correcta en C? Por qu?

ASIGNACIN
Ejercicio 14: Compare la asignacin en Pascal y en C. Escriba sus diferencias.

CONDICIN
Ejercicio 15: Compare la condicin en Pascal y en C. Escriba sus diferencias. Ejemplifique beneficios y peligros.

SENTENCIA SELECTIVA
Ejercicio 16: Compare la sintaxis de la sentencia if en Pascal con la de C. Escriba su reflexin.

SENTENCIA ITERATIVA o REPETITIVA
Ejercicio 17: Compare la sintaxis de la sentencia repeat-until en Pascal con la de do-while en C.
Escriba su reflexin.
Ejercicio 18: Compare la semntica de la sentencia repeat-until en Pascal con la de do-while en C.
Escriba su reflexin.

FUNCIN
Ejercicio 19: Compare la sintaxis de la construccin de una funcin en Pascal con la de C. Escriba su
reflexin. Escriba un ejemplo de una funcin con idnticas caractersticas, implementada en ambos
lenguajes.


3 Glosario con Ejercicios
ARGUMENTO
Ejercicio 20: Por qu una variable puede ser un argumento?

PARMETROS
Parmetros del tipo in (entrada), out (salida) e inout (entrada-salida). BUSCAR INFORMACIN.
Parmetros transmitidos por valor y parmetros transmitidos por referencia. BUSCAR INFORMACIN.
Ejercicio 21: Por qu una expresin no puede ser un parmetro?

VECTOR
Ejercicio 22: Compare las declaraciones de vectores en Pascal y en C. Escriba: similitudes, diferencias,
beneficios, perjuicios.

LENGUAJE DE PROGRAMACIN
Pratt: Notacin para la descripcin de algoritmos y estructuras de datos; habitualmente se requiere que
est implementado en una computadora.

SINTAXIS
Pratt: La sintaxis de un lenguaje de programacin es la forma en que los programas son escritos. Las
reglas sintcticas nos dicen cmo se escriben las sentencias, las declaraciones y otras construcciones
del lenguaje.

SEMNTICA
Pratt: La semntica de un lenguaje de programacin es el significado dado a las diferentes construc-
ciones sintcticas.

COMPILADOR
Pratt: Es un traductor cuyo lenguaje fuente es un lenguaje de alto nivel y cuyo lenguaje objeto est
ms prximo al lenguaje de mquina de una computadora. (Un traductor es un procesador de
lenguajes que acepta programas en algn lenguaje fuente de alto o bajo nivel- y que produce un
programa funcionalmente equivalente en otro lenguaje objeto de alto o bajo nivel.)
Ejercicio 23: Escriba, con justificacin, si un compilador C acepta, como sintcticamente vlidas, a las
siguientes sentencias:
a) while (1) a;
b) 2+3;
c) a = b = c = d;
d) if (a = b) ;
e) 123456789000001222165439876999954345656;
f) if (2 > 3) then printf(Hola);

Vous aimerez peut-être aussi