EXAMEN DE LENGUAJES DE PROGRAMACIÓN 1 EXPLICAR QUE

4 PUESTA EN PRÁCTICA DEL EXAMEN ANTES
EXAMEN TEORICO EXCAVADORAS N° 1 NOMBRE FIRMA FECHA
EXAMENDIENSTEN KEMPKENSBERG 46 POSTBUS 30158 9700 LK GRONINGEN

LYDELSE EXAMENSARBETE ORC TEKNOLOGI 2 (2)
RÉSULTATS AUX EXAMENS ET INSERTION PROFESSIONNELLE DANS LES
0 BIJLAGE 1 EXAMENPROGRAMMA VMBO ADMINISTRATIE BIJLAGE 1 ADMINISTRATIE

Examen de Lenguajes de Programación

Examen de Lenguajes de Programación


  1. Explicar que entendemos por encapsulación y modularidad en los lenguajes de programación. Explicar con ejemplos los diferentes grados de modularidad y abstracción alcanzados en lenguajes de diferentes paradigmas (C, Pascal, Ada, Java, ML, Prolog). Destacar también la utilidad de este concepto en los diferentes lenguajes.

  2. Explicar en que consisten los mecanismos de control de errores. Escribir ejemplos en C y Java.

  3. Dado el siguiente código en Smalltalk:

select: aBlock

"For each element in the receiver, evaluate

aBlock with that element as the argument.

Answer a new collection containing those elements

of the receiver for which aBlock evaluates to true."

| answer |

answer := self species new.

self do: [ :element |

(aBlock value: element)

ifTrue: [answer add: element]].

^answer

Al ejecutarlo el resultado es:

#(1 2 3 4 5 6 7) select: [:c | c odd] (1 3 5 7)

'ABCDE' select: [:c | c isVowel] 'AE’

  1. ¿ Que entendemos por código genérico? ¿ Cómo se consigue en el paradigma orientado a objetos? ¿ Y en el imperativo ?

  2. ¿ por qué este es un ejemplo de código genérico ?

  3. Al ser Smalltalk tipado dinámicamente, ¿La ligadura de un mensaje a un método concreto se realiza en tiempo de ejecución o compilación ? ¿Por qué? ¿ Y en Java?

  1. Explicar con ejemplos como resuelve, un lenguaje sin variables como ML, problemas como: entrada/salida, almacenamiento de valores intermedios, selección, iteración y abstracción. Utilizar esta estructura iterativa para explicar estos conceptos:

for (int i =0;i<10; i++)



  1. Dado el siguiente código en ML:

fun map ff nil = nil

| map ff (front::rest) = (ff front) :: (map ff rest);

Explicar por qué es una función de alto nivel, decir para que sirve, y poner ejemplos de su utilización.


  1. Dado este código en prolog:

  1. change(you,i).

2 change(are,[am,not]).

3 change(french,german).

4 change(do,no).

5 change(X,X).

6 alter([],[]).

7 alter([H|T], [X |Y]) :- change(H,X),alter(T,Y).

  1. Explicar para qué sirve la claúsula alter y poner un ejemplo de su utilización.

  2. Explicar brevemente que es la unificación y el backtracking aplicándolos a este ejemplo concreto.

  3. ¿ Influye el orden de las reglas en el resultado de la consulta ?

¿Qué sucedería si intercambiásemos las líneas 1 y 5?

  1. Dada esta gramática ambigua:

Expr ::= Num

| Expr + Expr

| Expr - Expr

| Expr * Expr

Num:= Dig

| Num Dig

Dig:= 0| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

Dibujar dos arboles sintácticos posibles de la expresión 40-3-9.

¿Influye el árbol sintáctico generado en la semántica de la expresión?


NOTA: Los alumnos que escogieron el modelo 3 de prácticas no tienen que resolver los ejercicios 1 y 2 (ya tenéis 3 puntos).

Puntuación: 1. 2 2. 1 3. 2 4. 1.5 5. 1 6. 1.5 7. 1


0 MODÈLE DE RAPPORT DEXAMEN DES OFFRES DESTINÉ À
1 º) EXAMEN DE ELECTROTECNIA (PRIMERA EVALUACIÓN) 091104 APELLIDOSNOMBRECURSO…
1) VANAF WELKE LEEFTIJD MAG IK MIJN THEORIEEXAMEN DOEN?


Tags: examen de, lenguajes, programación, explicar, examen