You are on page 1of 7

Un club deportivo desea introducir por teclado una secuencia indefinida de datos personales (sexo, edad y peso) de sus

deportistas. Se desea visualizar en pantalla la siguiente informacin: a) Peso medio por sexo. b) Peso mximo por edades: hasta 20, de 21 a 40, mayor que 40. c) Realizar un programa en lenguaje algortmico que resuelva este problema. Suponemos que la secuencia de datos introducidos por el usuario termina cuando se cumpla la condicin: sexo= y edad=0 y peso=0.0
Accin Principal Var sexo:cadena edad, ch, cm: entero peso, sph, spm, media_ph, media_pm, peso20, peso2040, peso40: real Fvar ch := 0 cm := 0 sph := 0.0 spm := 0.0 peso20 := -inf peso2040 := -inf peso40 := -inf leer(sexo, edad, peso) Mientras no (sexo= y edad=0 y peso=0.0) Si sexo=hombre sph := sph + peso ch := ch + 1 Fsi Si sexo=mujer spm := spm + peso cm := cm + 1 Fsi Si edad<=20 y peso>peso20 peso20 := peso Fsi Si edad>20 y edad<=40 y peso>peso2040 peso2040 := peso Fsi Si edad>40 y peso>peso40 peso40 := peso Fsi leer(sexo, edad, peso) Fmientras mediaph := sph/(real)ch mediapm := spm/(real)cm escribir (mediaph, mediapm) escribir(peso20, peso2040, peso40) Faccin

Realizar un programa completo en lenguaje algortmico que resuelva el siguiente problema. a) Leer una secuencia de 30 pares de nmeros enteros (a, b). b) Para cada par (a, b), mostrar todos los divisores comunes, y tambin el mximo comn divisor. c) Mostrar un mensaje indicando si todos los intervalos [a, b] contienen al nmero. d) Para cada intervalo [a, b], mostrar un mensaje cada vez que un nmero del intervalo sea no primo.
Accin Principal Var i, a, b, x, mcd, n: entero todos5, primo: lgico Fvar todos5 := Verdadero Para i := 0 hasta 29 inc 1 leer(a, b) Si a > b x := a a := b b := x Fsi Para x := 1 hasta a inc 1 Si a%x=0 Y b%x=0 escribir(x) mcd := x Fsi Fpara escribir(mcd) Si No(a<=5 Y 5<=b) todos5 := Falso Fsi Para x :=a hasta b inc 1 primo := Verdadero Para n:=2 hasta x-1 inc 1 Si x%n=0 primo := Falso Fsi Fpara Si NO primo escribir(x, es no primo) Fsi Fpara Fpara Si todos5 escribir(Todos los pares contienen al 5) Fsi Faccin

Leer una secuencia de nmeros y mostrar un mensaje por cada uno, que indique si tiene algn divisor que adems sea mltiplo de 5. Al final mostrar otro mensaje que indique si todos los nmeros son no primos.
Accin Principal Var xcad: cadena x, cdiv: entero algundiv_mul5, todosnoprimos: lgico Fvar todosnoprimos := V leer(xcad) Mientras no(xcad="") x := (entero)xcad cdiv := 0 algundiv_mul5 := F Para n:=1 hasta x inc 1 Si x%n=0 y n%5=0 algundiv_mul5 := V Fsi Si x%n=0 cdiv := cdiv + 1 Fsi Fpara Si algundiv_mul5 escribir("El nmero " , x, " tiene algn divisor mltiplo de 5") Sino escribir("El nmero " , x, " no tiene ningn divisor mltiplo de 5") Fsi Si cdiv=2 todosnoprimos := F Fsi leer(xcad) Fmientras Si todosnoprimos

escribir("Todos los nmeros son no primos") escribir("Existe al menos un nmero primo")

Fsi Faccion

Escribir un programa que encuentre los n primeros nmeros primos.

Escribir un algoritmo que genere automticamente una apuesta de quiniela, teniendo en cuenta que la probabilidad de cada resultado es, 50% para el 1, 30% para la X y del 20% para el 2. Se puede usar la funcin aleatorio() , que nos devuelve un real comprendido entre 0 y 1.

Escribir un algoritmo que, dados dos enteros, obtener el entero ms cercano al primero que sea mltiplo del segundo. Por ejemplo, para 10 y 3 la solucin ser 9, para 3 y 10 ser el 20.
Accin Principal Var

Fvar leer(a,b) Si a<b Sol:=b*2 Sino

Escribir un algoritmo que, dados dos enteros, obtener el entero ms cercano al primero que sea mltiplo del Escriba un programa que averigue cuantos dgitos tiene un numero natural
n. Concrete en que condiciones debe estar ese dato para que el programa funcione correctamente. Escriba un programa que averigue cuantos dgitos tiene un numero

natural n. Concrete en que condiciones debe estar ese dato para que el programa funcione correctamente.