Está en la página 1de 2

INTRODUCCIÓN A LA PROGRAMACIÓN 1.

CURSO 2005/2006
PRIMER CONTROL – I.I. 1/12/2005. SOLUCIONES

TEORÍA

cons
N : ....
tipos
Tconjunto : Tabla [N] de lógico

proc Eratostenes(sal tabprimos : Tconjunto)


var /*defina las variables enteras que estime conveniente */
i: entero
prin
inicializa_conjunto(tabprimos)
desde i:=2 hasta N
si tabprimos [i]:
elimina_múltiplos (i,tabprimos)
otras:
nula
fsi
findesde
fin

proc inicializa_conjunto(sal c : Tconjunto)


var
i : entero
prin
desde i:=1 hasta N
c[i]:= cierto
fdesde
fin

proc elimina_múltiplos (ent e: entero; ent/sal c: Tconjunto)


var
i : entero
prin
i := e*2
mientras i <= N
c[i]:= falso
i := e * i
fmientras
fin
INTRODUCCIÓN A LA PROGRAMACIÓN 1. CURSO 2005/2006
PRIMER CONTROL – I.I. 1/12/2005. SOLUCIONES

PRÁCTICAS

Cuestión 1 (1 punto)

y vale 8 0 ó 1

Cuestión 2 (1,5 puntos)

Salida: count=20 temp=20 sum=20 cada error resta 0,5

Cuestión 3 (1 punto)

a) correcto
b) R2 * es incorrecto cada error resta 0,5
c) correcto
 
Cuestión 4 (1,5 puntos)

1. typedef int Ts[9][9];


Ts s;

2. suma = 0;
for (j=0; j<9; j++)
if (s[j][i-1] > 0)----vale 0,5
suma = suma + s[j][i-1]; ----vale 0,5
3. int f (const Ts, int, int); ----vale 0,5

Cuestión 5 (1 punto)

a) 1
b) 2 cada error resta 0,5
c) bucle infinito

Cuestión 6 (1,5 puntos)

( a==b && (a+b)>c )||( a==c && (a+c)>b )||( c==b && (c+b)>a )cada error resta 0,5

Cuestión 7 (2,5 puntos)


for (j=0;j<4;j++) ----vale 0,5
{
suma=0.0;
for(i=0;i<=j;i++) ----vale 0,5
suma=suma+m[i][j];
printf("la media de la columna %d es: %f\n",j, suma/i); ----vale 0,5
}

for (i=0;i<4;i++) // media de la fila desde la diagonal secundaria


{
suma=0.0;
for(j=3;j>=3-i;j--)----vale 0,5
suma=suma+m[i][j];
printf("la media de la fila %d es: %f\n",i, suma/(i+1)); ----vale 0,5
}

También podría gustarte