Está en la página 1de 9

Punto 1

---------------------------------------------

Inicio

Buffer Ganan

Dispositivo Disco

Reg_ganan

num_car N[2]

nom_j X[20]

num_cab N[2]

distancia N[3]

tiempo N[3]

FinBuffer

Buffer Caballos

Dispositivo Disco

Reg_caballo

caballo N[2]

nombre X[20]

peso N[3]

raza X[20]

FinBuffer
Abrir Ganan(Entrada), Caballos(Entrada)

Leer tamano

Entero caballos[tamano]

Real velocidades[tamano]

Entero i <- 1

Leer Reg_caballo

MQ(not(eof(Caballos)))

caballos[i] <- caballo

velocidades[i] <- 0

i <- i + 1

Leer Reg_caballo

FinMQ

Leer Reg_ganan

MQ(not(eof(Ganan)))

Para j: 1, i, 1

Si (num_cab = caballos[j])
velocidad <- distancia / tiempo

velocidades[j] <- velocidades[j] + velocidad

FinSi

FinPara

Leer Reg_ganan

FinMQ

Entero menor <- 10000000000

Entero caballo_menor <- 0

Para k: 1, i, 1

Si (velocidades[k] < menor y velocidades[k] <> 0)

menor <- velocidades[k]

caballo_menor <- k

FinSi

FinPara

Cerrar Caballos, Ganan

Abrir Caballos(Entrada)
Leer Reg_caballo

MQ(not(eof(Caballos)))

Si (caballo = caballos[caballo_menor])

Escribir caballo, nombre, peso, raza

FinSi

Leer Reg_caballo

FinMQ

Cerrar Caballos

Fin

Punto 2

---------------------------------------------

Inicio

Buffer Asignaturas

Dispositivo Disco

Reg_asig
ClavePrincipal = cod_asig

ClaveSecundaria = curso

cod_asig N[10]

nom_asig X[20]

curso N[3]

creditos N[2]

ced_prof N[10]

FinBuffer

Buffer Profesores

Dispositivo Disco

Reg_profe

ClavePrincipal = cedula

nom_prof X[20]

cedula N[10]

fecha_in X[8]

fecha_na X[8]

categoria X[15]

FinBuffer

Entero cedula <- 0

Leer cedula
Abrir Asignaturas(Entrada), Profesores(Entrada)

Leer Reg_profe cedula = cedula

Si (Reg_profe cedula = valido)

Escribir nom_prof, cedula, fecha_in, fecha_na, categoria

Leer Reg_asig

MQ(not(eof(Asignaturas)))

Si (cedula = ced_prof)

Escribir nom_asig, curso

FinSi

Leer Reg_asig

FinMQ

FinSi

//archivo organizado por cédulas

Leer Reg_profe cedula <> 0 //posicionarse al inicio del archivo

Entero cate <- 0, titu <- 0, aso <- 0, ayu <- 0


Si (Reg_profe cedula = valido)

MQ(not(eof(Profesores)))

DD (categoria)

"Catedrático":

cate <- cate + 1

"Titular":

titu <- titu + 1

"Asociado":

aso <- aso + 1

"Ayudante":

ayu <- ayu + 1

FinDD

Leer Reg_profe

FinMQ
FinSi

Si (cate > titu)

mayor_ct <- cate

mayor_ct_t <- "Catedrático"

Sino

mayor_ct <- titu

mayor_ct_t <- "Titular"

FinSi

Si (aso > ayu)

mayor_a <- aso

mayor_a_t <- "Asociado"

Sino

mayor_a <- ayu

mayor_a_t <- "Ayudante"

FinSi

Si (mayor_ct > mayor_a)

Escribir mayor_ct_t
Sino

Escribir mayor_a_t

FinSi

Escribir "El mayor sueldo es el del Catedrático"

Fin

Punto 3

---------------------------------------------

R: A

También podría gustarte