Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Parcial informàtica, Apuntes de Informática

Asignatura: Informàtica, Profesor: , Carrera: Enginyeria Biomèdica, Universidad: UPC

Tipo: Apuntes

2012/2013

Subido el 22/10/2013

juandm
juandm 🇪🇸

4.6

(5)

3 documentos

1 / 2

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
FONAMENTS d’INFORMÀTICA FI-EI matí 25 abril 2007
1. (2 puntos)
a) Dada una variable x de tipo entero (ya leida) y suponiendo que los valores
admisibles deben ser múltiplos de i pero no de j (también ya leidos), se pide escribir
una porción de programa que “Diga si el valor de x es correcto o no (no definir ni
leer nada, ya está definido y leido: ¡sólo se pide el trozo de programa!)
IF (x MOD i = 0) AND (x MOD j <> 0)
// o bien NOT (X MOD j = 0)
THEN Writeln(‘correcto’)
. ELSE Writeln (‘Incorrecto’)
;
b) Escribir una instrucción para calcular una expresión booleana (no un IF...., sólo la
expresión) con éste mismo objetivo. El r4sultado de la expresión se se asignará sobre
la variable boolena correcto
pre-cond: Existen x, i, j ya inicializadas
correcto := (x MOD i = 0) AND (x MOD j <> 0)
...................................................................................
post-cond: Correcto vale TRUE o FALSE según el valor de x fuera correcto o no
2. (3 puntos)
Diseñar un algoritmo en pseudocódigo para “generar” todos los números de la serie
1, 1, 2, 6, 24, 120, 720,.......(la razón es i+1)
inferiores a un N entrado como dato.
Deberá verificarse que el valor N leído es un número entero positivo.
program ejercici_2;
// programa escrito sin considerar overflow de enteros
uses
SysUtils;
{$APPTYPE CONSOLE}
VAR N, r, element: INTEGER ;
begin
{ TODO -oUser -cConsole Main : Insert code here }
Writeln('ejercicio 2 examen 25 abril 2007') ; Writeln;
REPEAT
Write('Entre N:');Readln(n);Writeln;
UNTIL n>0; // podia ser més sofisticado pero esto bastaba
element:=1; r:=0;
WHILE element<N
DO BEGIN
Write(element,',') ;
r:=r+1 ;
element:=element*r
END;
Writeln; Writeln;Writeln('final');readln
end.
pf2

Vista previa parcial del texto

¡Descarga Parcial informàtica y más Apuntes en PDF de Informática solo en Docsity!

FONAMENTS d’INFORMÀTICA FI-EI matí 25 abril 2007

  1. (2 puntos) a) Dada una variable x de tipo entero (ya leida) y suponiendo que los valores admisibles deben ser múltiplos de i pero no de j (también ya leidos), se pide escribir una porción de programa que “Diga si el valor de x es correcto o no (no definir ni leer nada, ya está definido y leido: ¡sólo se pide el trozo de programa!)

IF (x MOD i = 0) AND (x MOD j <> 0) // o bien NOT (X MOD j = 0) THEN Writeln(‘correcto’)

. ELSE Writeln (‘Incorrecto’) ;

b) Escribir una instrucción para calcular una expresión booleana (no un IF...., sólo la expresión) con éste mismo objetivo. El r4sultado de la expresión se se asignará sobre la variable boolena correcto pre-cond: Existen x, i, j ya inicializadas

correcto := (x MOD i = 0) AND (x MOD j <> 0) ...................................................................................

post-cond: Correcto vale TRUE o FALSE según el valor de x fuera correcto o no

  1. (3 puntos) Diseñar un algoritmo en pseudocódigo para “generar” todos los números de la serie 1, 1, 2, 6, 24, 120, 720,.......(la razón es i+1) inferiores a un N entrado como dato. Deberá verificarse que el valor N leído es un número entero positivo.

program ejercici_2; // programa escrito sin considerar overflow de enteros uses SysUtils; {$APPTYPE CONSOLE} VAR N, r, element: INTEGER ; begin { TODO -oUser -cConsole Main : Insert code here } Writeln('ejercicio 2 examen 25 abril 2007') ; Writeln; REPEAT Write('Entre N:');Readln(n);Writeln; UNTIL n>0; // podia ser més sofisticado pero esto bastaba element:=1; r:=0; WHILE element<N DO BEGIN Write(element,',') ; r:=r+1 ; element:=element*r END; Writeln; Writeln;Writeln('final');readln end.

  1. (1,5 puntos) Codificar en complemento a dos el valor entero -120 (16 bits)

120 (16 bits)= 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 compl 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1

1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0

F F 8 8

Representar el resultado en hexadecimal

  1. (2 puntos) Codificar el valor -180, como un REAL en formato IEEE 754 simple precisión (32 bits) Representación 180, 85 = ... 10110100,1101100 1100 1100......

Normalización 180,85 = 1,0110100110 1100 1100 1100 (1100) x 2 7 exponente = 127 + 7 = 134 = 10000110

Binario 1 100 0011 0 011 0100 1101 1001 1001 1001

C 3 3 4 D 9 9 9 (Delphi “redondearia” a “A”

Representar el resultado en hexadecimal

De hecho Delphi redondea, por lo que la última cifra sería “A” (ambas resp buenas, ya sea “9” o “A”)

  1. (1,5 puntos) Explicar Concepte, objetivo y ventajas del diseño por refinamientos

“Stepwise refinment”, técnica de desarrollo de programas orientada a diseñar la estructura general dejando el detalle para más adelante. De este modo se disminuye la complejidad aparente al tiempo que se evitan los bloqueos (“No sé”)

F F 8 8

C 3

F

D

F

F

8 A