Está en la página 1de 30

PROBLEMAS DE LÓGICA Y ALGORITMOS

(SECUENCIALES)

1. Escribir las siguientes expresiones algebraicas como expresiones algorítmicas:


2 2 2
a) b - 4ac b) x + y c) 3x + 2y d) a + b
2
z 2z c-d
2 2 2
e) 4x - 2x + 8 f) a + b - 3a + 4b g) 4πr3 h) (x2 - x1) + (y2 - y1)
c 5 c+2 3

2. Si el valor de A es 4, el valor de B es 5 y el valor de C es 1, evaluar las siguientes expresiones:

a) B*A - B**2/4*C
b) (A*B) /3**2
c) ((B + C)/2*A + 10)*3*B) -6
d) (A<>B*4/(C*5)) and (B >= C *10 mod 4)

3. Obtener el valor de cada una de las siguientes expresiones aritméticas:

a) 7 div 2 b) 7 mod 2 c) 12 div 3 d) 12 mod 3


e) 0 mod 5 f) 7*10-5 mod 3* 4+9 g) 9 div 2/5 h) 7 mod 5 mod 3
i) 7 mod 5/4**2 j) 7 mod (5 mod 3) k) trunc(3,8) l) ( 7*(10-5) mod 3)*4 +9
m) 0 div 5 n) 2 div 3 +3/5

4. Elaborar un algoritmo que lea un número y calcule e imprima su cuadrado y su cubo.

5. Elaborar un algoritmo que obtenga el inverso aditivo y el inverso multiplicativo de un número.

6. Para un empleado se tienen los siguientes datos:

• Nombre del empleado.


• Salario básico por hora.
• Horas ordinarias trabajadas.
• Horas extras trabajadas.

elabore un algoritmo que calcule e imprima:

⇒ Nombre del empleado.


⇒ Salario neto a pagar.
⇒ Valor de la retención en la fuente.

Teniendo en cuenta que las horas extras tienen un recargo del 40% y la retención en la fuente (10%) se
aplica a las horas extras trabajadas.

7. Elabore un algoritmo que calcule el valor de la función ‘y’, para un valor de x cualquiera.
2
2/3 2 3
x 35( x + x )
y = 3x + +
x2 − 1 x2 + 1

8. Elabore un algoritmo que intercambie el valor de dos variables.

9. Elabore un algoritmo que lea un número y calcule e imprima:

⇒ Valor absoluto del número.


⇒ Cuadrado del número.
⇒ Cubo del número y de su valor absoluto.

10. La compañía “La Veloz” vende tres tipos de automóviles (A, B y C), cada uno de los cuales tiene un
precio de venta y un porcentaje de comisión por venta diferentes. Elaborar un algoritmo que calcule el valor
de las comisiones que se deben pagar a un determinado vendedor, del cual se tienen los siguientes datos:

⇒ Nombre del vendedor.


⇒ Unidades vendidas del auto A.
⇒ Unidades vendidas del auto B.
⇒ Unidades vendidas del auto C.

11. Elaborar un algoritmo que calcule el área y el perímetro de un rectángulo y de un círculo.

Área del círculo = πr2 Perímetro del círculo = 2πr

12. Elabore un algoritmo que calcule e imprima la suma, el producto, el cociente y el resto (módulo) entre
dos números enteros A y B.

13. Elabore un algoritmo que lea una temperatura en grados Centígrados y calcule la temperatura
equivalente en grados Fahrenheit. Nota: Escriba el resultado como real y como entero.
o
F = (9/5)oC + 32

14. Un sistema de ecuaciones lineales del tipo: ax + by = c, dx + ey = f se puede resolver con las siguientes
fórmulas:

ce − bf af − cd
x= y=
ae − bd ae − bd

elabore un algoritmo que resuelva el sistema de ecuaciones.

Nota: asuma que ae - bd es diferente de cero.

15. Elabore un algoritmo para convertir una medida dada en pies a sus equivalentes en: yardas, pulgadas,
centímetros y metros. Tenga en cuenta que 1 pie = 12 pulgadas, 1 yarda= 3 pies, 1 pulgada = 2,54 cm y 1
m = 100 cm.

16. Un corredor de maratón (distancia = 42,195 Km) ha hecho el recorrido en un tiempo T (dado en horas y
minutos). Elabore un algoritmo que calcule la velocidad media del corredor en Km/h, Km/s, m/s, m/min y
Km/min.

17. El mismo corredor del problema anterior hizo de nuevo el recorrido, pero como estaba un poco
cansado se demoró 30 minutos más que en la ocasión anterior. Elabore un algoritmo que calcule el tiempo
promedio, dado en horas, en minutos y en segundos, en que corrió cada kilómetro.
3

18. Elabore un algoritmo que tomando como base la fecha actual y la fecha de nacimiento de una persona
(mes, día y año) calcule su edad (la de la persona) en años, en meses y en días.

19. Elabore un algoritmo que calcule la nota definitiva de un estudiante a partir de las siguientes notas
parciales que tienen, cada una, un valor en porcentaje: examen escrito (50%), trabajos (20%), qüices
(20%) y participación (10%).

20. Para un empleado se tienen los siguientes datos:

• Nombre del empleado.


• Salario básico por hora.
• Horas ordinarias trabajadas.
• Horas extras diurnas trabajadas.
• Horas extras nocturnas trabajadas.
• Horas extras dominicales trabajadas.

elabore un algoritmo que calcule e imprima:

⇒ Nombre del empleado.


⇒ Salario neto a pagar.
⇒ Valor de la retención en la fuente.

Teniendo en cuenta que las horas extras tienen los siguientes recargos:

• Horas extras diurnas: 25%.


• Horas extras nocturnas: 50%.
• Horas extras dominicales: 75%.

y que el 10% de retención en la fuente se aplica a las horas extras trabajadas.

21. Suponga que un tren parte de un lugar A hacia un lugar B, los cuales están distantes S1 Km, con una
velocidad constante V1. Pero, al llegar a un punto C, el cual está entre A y B, a una distancia S2 de A,
hace una escala de 30 minutos para finalmente partir hacia B con una velocidad diferente V2.

Al partir el tren de A, sale también un auto con una velocidad V, el cual al llegar a C hace una escala de 2
horas para finalmente continuar a B con la misma velocidad.

Suponiendo que el auto se mueve en una línea paralela a la del tren, elabore un algoritmo que calcule el
tiempo que empleará el tren y el auto para trasladarse de A a B.

22. Elabore un algoritmo que calcule el área y el volumen de un cubo, a partir de la longitud de sus lados.

Área del cubo = 6l2 Volumen del cubo = l3

23. Dado el radio de una esfera, elabore un algoritmo que calcule su área y su volumen.

Área de la esfera = 4πr2 Volumen de la esfera = 4/3πr3

24. En la ciudad de Cartagena al comenzar el año hay un número determinado de habitantes, de los
cuales, al comenzar el año, emigran a otras ciudades el 2%, pero llegan a la ciudad el 0.5% de la población
del resto del departamento de Bolívar. A la mitad del año la población se ha incrementado en un 5% debido
a los nacimientos, después de eso no hay más nacimientos. Durante los primeros 10 meses no se muere,
4
ni matan, a nadie, pero en los dos últimos meses se desata una mortandad tremenda y una violencia de tal
magnitud, que al llegar el 31 de diciembre, la población se ha reducido en un 8%.

Un programador experto, como usted, llamó al DANE el 1 de enero y formuló las siguientes preguntas:
¿Cuántos habitantes hay en Cartagena?, ¿Cuántos habitantes hay en le resto de Bolívar?. El DANE le dio
la información que solicitó, el programador sacó una calculadora programable, oprimió algunas teclas y dijo
sonriente: “El 31 de diciembre habrán en Cartagena tantos habitantes”. Elabore el algoritmo que utilizó el
programador.

25. Elabore un algoritmo que convierta una cantidad de dinero dada en pesos colombianos a su
equivalente en dólares (E.U.).

26. Elabore un algoritmo que convierta una cantidad de dinero dada en dólares (E.U.) a su equivalente en
pesos colombianos. Nota: desprecie los centavos de la moneda colombiana.

27. Un policía de tránsito (llamados en Japón “Tequito Lamoto”) reporta a la central en promedio N
infracciones en el mes, de las cuales el 20% se producen en las horas de la mañana, el 35% se producen
en horas de la tarde y el 45% restante se producen en horas de la noche.

Elabore un algoritmo que calcule e imprima lo siguiente:

• Promedio diario matutino de infracciones.


• Promedio diario vespertino de infracciones.
• Promedio diario nocturno de infracciones.

28. Elabore un algoritmo que lea un número entero A, de máximo cuatro cifras, y calcule e imprima un
número B que resulte de leer el número A de derecha a izquierda. Así por ejemplo, si el valor de A es
4538, el valor de B será 8354.

29. En la ciudad de Cartagena hay N habitantes el 1 de enero. Al finalizar el año (el 31 de diciembre) la
población ha variado por las siguientes causas:

• El 2% de la población ha emigrado a otras ciudades o municipios.


• Hubo un aumento del 1,8% por inmigraciones.
• Hubo un aumento del 1,7% por nacimientos.
• El 1,1% de la población falleció.

Elabore un algoritmo que basándose en la anterior información calcule e imprima lo siguiente.

a. Aumento promedio mensual de la población (en número de personas).


b. Disminución promedio mensual de la población (en número de personas).
c. Población total de la ciudad al finalizar el año.

30. (Valor: 2). En la hacienda “La Vaca Gorda” el primer día del mes preparan 10.000 litros de una mezcla
homogénea con agua y Q gramos de un compuesto químico que purifica el agua. Diariamente se extraen
400 litros de la mezcla para dar de beber al ganado. El último día de la semana, después de extraer los
400 litros de la mezcla, se agrega, a la misma, suficiente agua para completar el volumen inicial.

Elabore un algoritmo que conteste las siguientes preguntas:

• ¿Cuál será la densidad de la mezcla (gramos/litros) al inicio de cada una de las cuatro semanas del
mes?
• ¿Cuántos gramos del compuesto químico se deben agregar al inicio del siguiente mes para tener en la
mezcla nuevamente 450 gramos del mismo?
5

PROBLEMAS DE LÓGICA Y ALGORITMOS


(SELECTIVOS)

1. Elaborar un algoritmo que lea un número y averigüe si el número es par o impar.

2. Elaborar un algoritmo que lea un número y calcule e imprima su cuadrado si el número es par y su cubo
si el número es impar.

3. Elaborar un algoritmo que lea un número y calcule e imprima su cuadrado si el número es negativo y su
cubo si el número es positivo.

4. Elaborar un algoritmo que lea el nombre, la edad, el sexo y el estado civil de una persona e imprima su
nombre de la persona si corresponde a un hombre casado mayor de 40 años o una mujer soltera menor de
50 años.

5. Elaborar un algoritmo que identifique e imprima el número medio de un conjunto de tres números
diferentes. El número medio es aquel que no es ni el mayor ni el menor.

6. Para un empleado se tienen los siguientes datos:

• Nombre del empleado.


• Salario básico por hora.
• Horas ordinarias trabajadas.
• Horas extras trabajadas.

elabore un algoritmo que calcule e imprima:

⇒ Nombre del empleado.


⇒ Salario neto a pagar.
⇒ Valor de la retención en la fuente.

Teniendo en cuenta que las horas extras tienen un recargo del 40% y la retención en la fuente (10%) se
aplica a las horas extras trabajadas, si el total obtenido por este concepto es superior a $100.000.

7. Elabore un algoritmo que lea tres números y los ordene en forma ascendente.

8. Coldeportes Bolívar está interesada en promover el Basketbol y para ello desea conocer personas que
tengan las siguientes características:

Edad: Menor de 18 años.


Estatura: Mínima, 1,80 cm.
Peso: Máximo, 80 Kg.

Elaborar un algoritmo que lea la edad, la estatura y el peso de un deportista y verifique si cumple o no las
condiciones exigidas.

9. Elaborar un algoritmo para calcular el monto de las comisiones que recibirá un vendedor del cual se
tiene su nombre, total unidades vendidas y precio del artículo vendido. El porcentaje de las comisiones es
el siguiente: si el precio del artículo es de $20.000 la comisión es del 3%, si el precio del artículo es mayor
de $20.000 pero menor de $50.000 la comisión será del 5%, si el precio del artículo es mayor o igual a
$50.000 la comisión será del 10%.
6
10. La compañía “La Veloz” vende tres tipos de automóviles (A, B y C), cada uno de los cuales tiene un
precio de venta y un porcentaje de comisión por venta diferentes. Elaborar un algoritmo que calcule el valor
de las comisiones que se deben pagar a un determinado vendedor, del cual se tienen los siguientes datos:

⇒ Nombre del vendedor.


⇒ Unidades vendidas del automóvil.
⇒ Tipo de automóvil vendido

11. Elaborar un algoritmo que lea el nombre de un empleado, el salario básico por hora y el número de
horas trabajadas durante una semana. Calcule e imprima el salario neto, teniendo en cuenta que si el
número de horas trabajadas es mayor de 40 las horas demás se consideran horas extras y tienen un
recargo del 40%.

12. Elabore un algoritmo que tomando como base la fecha actual y la fecha de nacimiento de una persona
(mes, día y año) calcule su edad (la de la persona) en años, en meses y en días y diga si la persona es
mayor o menor de edad.

13. Elabore un algoritmo que calcule la nota definitiva de un estudiante a partir de las siguientes notas
parciales que tienen, cada una, un valor en porcentaje: examen escrito (50%), trabajos (20%), qüices
(20%) y participación (10%), y averigüe si la nota definitiva es aprobatoria o no.

14. Para un empleado se tienen los siguientes datos:

• Nombre del empleado.


• Salario básico por hora.
• Horas ordinarias trabajadas.
• Horas extras diurnas trabajadas.
• Horas extras nocturnas trabajadas.
• Horas extras dominicales trabajadas.

elabore un algoritmo que calcule e imprima:

⇒ Nombre del empleado.


⇒ Salario neto a pagar.
⇒ Valor de la retención en la fuente.

Teniendo en cuenta que las horas extras tienen los siguientes recargos:

• Horas extras diurnas: 25%.


• Horas extras nocturnas: 50%.
• Horas extras dominicales: 75%.

y que el 10% de retención en la fuente se aplica a las horas extras trabajadas, solo si el valor devengado
por este concepto es superior a $200.000.

15. Elaborar un algoritmo que lea el nombre y la edad de una persona. Si la persona puede votar se debe
imprimir el nombre de la persona y el mensaje ‘Puede votar’, en caso contrario imprimir el nombre, la edad
y el mensaje ‘No puede votar’.

16. Elabore un algoritmo que lea dos números e imprima la suma si los dos números son positivos.

17. Elabore un algoritmo que lea dos números e imprima la diferencia entre el primero y el segundo si por
lo menos uno es positivo. De lo contrario, imprima su cociente.
7
18. Elabore un algoritmo que lea dos números e imprima los dos números solo si son de signo contrario y
distintos de cero.

19. Elabore un algoritmo que lea dos números e imprima el cociente entre el primero y el segundo. Si el
segundo es cero no ejecute el caso sino que muestre el mensaje: ‘la división no es posible’.

20. Suponga que un tren parte de un lugar A hacia un lugar B, los cuales están distantes S1 Km, con una
velocidad constante V1. Pero, al llegar a un punto C, el cual está entre A y B, a una distancia S2 de A,
hace una escala de 30 minutos para finalmente partir hacia B con una velocidad diferente V2.

Al partir el tren de A, sale también un auto con una velocidad V, el cual al llegar a C hace una escala de 2
horas para finalmente continuar a B con la misma velocidad.

Suponiendo que el auto se mueve en una línea paralela a la del tren, elabore un algoritmo que averigüe
quién llega primero a B.

21. Una compañía ha decidido dar a sus mejores empleados una bonificación por su desempeño. Esta
bonificación se basa en dos criterios: el número de horas extras trabajadas y el número de horas que el
empleado ha estado ausente del trabajo.

La compañía ha determinado que se use la siguiente fórmula para determinar la bonificación: se restan dos
tercios de las horas de ausencia a las horas extras trabajadas y se distribuye la bonificación de acuerdo
con la siguiente tabla:

Resultado Bonificación

> 40 horas $200.000,oo


> 30 horas pero <= 40 horas $150.000,oo
> 20 horas pero <= 30 horas $100.000,oo
> 10 horas pero <= 20 horas $50.000,oo
<= 10 horas $20.000,oo

Elabore un algoritmo que permita determinar la bonificación que recibirá un empleado cualquiera de la
compañía.

22. A los estudiantes de un curso se les dice que su calificación final será el promedio de las dos
calificaciones más altas de entre las tres que se han tomado. Elabore un algoritmo que permita a un
estudiante cualquiera efectuar el cálculo correspondiente a su nota definitiva. El algoritmo debe además
mostrar un mensaje de aprobado o reprobado según la nota definitiva.
23. Elabore un algoritmo que lea tres números (A, B y C) y diga cuál es el mayor.

24. Elabore un algoritmo lea la longitud y el diámetro de una pieza en forma de varilla y muestre un
mensaje que indique si se acepta o rechaza la pieza, de acuerdo con los siguientes criterios:

a. Su longitud debe ser mayor de 7,5 cm pero no puede exceder los 9 cm.
b. Su diámetro no debe ser menor que 0,5 cm ni mayor que 1,3 cm.
c. Por ningún motivo su masa debe exceder los 5,8 gr. (masa = volumen * densidad, densidad = 3,5
3
gr/cm ).

25. Elabore un algoritmo que calcule las raíces de una ecuación cuadrática de la forma:

ax2 + bx +c = 0

siendo:
8

− b + b 2 − 4ac − b − b 2 − 4ac
a. x1 = x2 = si b 2 -4ac ≥ 0 y a ≠0
2a 2a

−c
b. x= si a = 0
b

Nota: si b2 -4ac < 0 se debe enviar un mensaje que diga ‘Esta ecuación tiene raíces imaginarias’

26. Dado que, debido a la inflación, un peso de mañana es menor que un peso de hoy, las empresas antes
de invertir su dinero en algún negocio calculan los ingresos futuros transformados en pesos y los comparan
con la inversión que se pretende hacer.

La fórmula general para el cálculo del valor actual es:

C*N
VA =
(1 + i) N

donde: C son los ingresos anuales.


i es la tasa de inflación.
N son los años en consideración.

Si se conocen los valores de C, i y N y el monto de la inversión, elabore un algoritmo que averigüe si vale
la pena o no hacer dicha inversión.

Nota: La empresa considera que vale la pena hacer la inversión si se tiene una ganancia igual o superior al
30% del dinero invertido.

27. Existen números que leídos de izquierda a derecha y de derecha a izquierda tienen el mismo valor.
Ejemplo: 404, 1045401. Elabore un algoritmo que lea un número entero de cinco cifras y averigüe si tiene
la característica aquí mencionada.

28. La Administración de Impuestos ha cambiado el método para encontrar la retención en la fuente de un


trabajador, en la siguiente forma:

Retención = (Salario Base)/5 - 400*(número de hijos -2)

Si el empleado tiene 1 hijo o ninguno la retención será igual a: Salario Base/5.

Elabore un algoritmo que calcule la retención en la fuente para un trabajador, del cual se tienen los
siguientes datos: Nombre, Salario base y número de hijos.

29. Se desea calcular el jornal de un trabajador con base en los siguientes datos:

• Código del trabajador.


• Salario básico por hora.
• Producción mínima diaria.
• Producción del día.

El cálculo del jornal se hace de acuerdo con su salario básico por hora, más una bonificación del 2%, de su
salario básico por hora, por el número de unidades de exceso producidas sobre el mínimo que debe
producir. Si un trabajador no sobrepasa la producción mínima no tendrá bonificación.

Nota: En la empresa se laboran 8 horas diarias.


9

30. El gerente de la empresa de transportes “El tacaño” desea saber el valor a pagar por concepto del
arreglo de uno cualquiera de sus vehículos. El taller “Destroyer” envía a la empresa la factura por cada
vehículo arreglado, en la cual se encuentra la siguiente información: La placa del vehículo reparado, el tipo
de daño y el costo del mismo. El gerente ha establecido las siguientes reglas de pago teniendo en cuenta
el tipo de daño:

Tipo 1. El gerente paga solamente hasta $100.000.


Tipo 2. El gerente paga solamente hasta $300.000.
Tipo 3. El gerente paga solamente hasta $500.000.

Elabore un algoritmo que muestre la placa del vehículo arreglado, el tipo del daño y el valor a pagar.

31. El almacén “Muebles la comodidad” cobra a sus clientes el último día de cada mes. Si el cliente paga
dentro de los primeros diez días del siguiente mes obtendrá un descuento del 2% de la deuda o bien de
$20.000 dependiendo de cuál valor sea el mayor. Si el cliente paga dentro de los siguientes diez días no
tendrá derecho a ningún descuento. Si paga dentro de los restantes diez días del mes tendrá un recargo
del 2% de la deuda o bien de $20.000 dependiendo de cuál valor sea el menor.

Por cada cliente se tienen los siguientes datos:

• Número de identificación.
• Cantidad adeudada.

Elabore un algoritmo que tomando como base los datos del cliente y la fecha actual, calcule la cantidad
que tendrá que pagar un cliente cualquiera.

32. Elabore un algoritmo que, dadas las longitudes de tres líneas rectas, averigüe si con esas tres líneas se
puede construir un triángulo.

Nota: Tres líneas rectas pueden formar un triángulo si la suma de las longitudes de dos cualesquiera es
mayor que la longitud de la tercera.

33. Elabore un algoritmo que calcule el grado de eficiencia de un trabajador cualquiera de una fábrica de
tornillos, del cual se tienen los siguientes datos:

• Nombre del trabajador.


• Horas ausencia.
• Tornillos defectuosos.
• Tornillos producidos.

Para el cálculo del grado de eficiencia se tendrán en cuenta las siguientes condiciones:

1. Ausencia al trabajo <= 3,5 horas


2. Tornillos defectuosos < 300
3. Tornillos producidos > 10.000

Los grados de eficiencia se asignan de la siguiente manera:

• Si no cumple ninguna condición: Grado = 5.


• Si solo cumple la primera condición: Grado = 7.
• Si solo cumple la segunda condición: Grado = 8.
• Si solo cumple la tercera condición: Grado = 9.
• Si cumple la primera y segunda condiciones: Grado = 12.
10
• Si cumple la primera y tercera condiciones: Grado = 13.
• Si cumple la segunda y tercera condiciones: Grado = 15.
• Si cumple las tres condiciones: Grado = 20.

34. Se tienen las longitudes de tres líneas rectas. Elabore un algoritmo que averigüe si con esas tres líneas
forman un triángulo, y si lo es, qué tipo de triángulo: equilátero, isósceles o escaleno, y si es rectángulo o
no.

35. Hacer un algoritmo que calcule el área de un triángulo, dados sus lados, utilizando la fórmula:

Area = S(S − a)(S − b)(S − c)

donde S está dado por:

S = (a + b + c)/2

Calcular además, el radio del círculo inscrito que es igual a:

RCI = Area/S

y el radio del círculo circunscrito:

RCC = abc/(4 * área)

Nota: Si la expresión dentro del radical es menor que cero, el área del triángulo no existe.

36. Hacer un algoritmo que dado un número diga si es entero o racional; si el número es racional calcule su
parte entera y siga con los pasos para los enteros dados por el algoritmo. Si es entero, diga si es par o
impar. Si es par multiplíquelo por π, y diga si su parte entera es divisible por cuatro. Si es impar súmele uno
y diga si también si es divisible por cuatro.

37. Elabore un algoritmo que evalúe la función:


π/2 + x si x ≥ 20
F(x) = x! si 0 ≤ x < 20
x∧8 - x∧5 si x < 0

Nota: El factorial del número debe ser aproximado por la fórmula:

x ! = 2πx ( x / e) x (1 + 1 / (12 x ))
donde e = 2,718281828.

38. Hallar el valor de R de acuerdo con la siguiente relación:

R = (ab)/(cd) si xy > 0
R = (a + b)/(c + d) si xy = 0
R = (a + b) - (c + d) si xy < 0

39. Realice un algoritmo para averiguar si un dato se encuentra en cierto intervalo abierto.

40. En un grupo se toman 3 notas parciales; la primera vale el 30%, la segunda el 40% y la tercera el 30%.
Elabore un algoritmo que en primer lugar calcule la nota definitiva de cualquier estudiante y diga si su nota
es aprobatoria o no. En segundo lugar el algoritmo debe realizar lo siguiente: averiguar si con las dos
11
primeras notas el estudiante ya tenía la materia ganada o no, si no la tenía ganada calcule la nota mínima
que debía sacar en el tercer parcial para aprobar la materia.

41. Un joven muy creativo, seguramente usted también lo es, ha creado una alarma y desea hacer un
algoritmo que diga cuándo debe estar encendida y cuándo no. Las condiciones son las siguientes:

a. Cuando la presión es de por lo menos 25 libras, la alarma debe estar encendida.


b. Cuando la temperatura excede los 75º C o está por debajo de 10º C, la alarma debe estar encendida.
c. En cualquier otro caso la alarma debe estar apagada.

Ayude al joven a elaborar el algoritmo.

42. Elabore un algoritmo que dado un año escrito en cifras arábigas, muestre el año escrito en números
romanos, dentro del rango de 1000 a 2000.

Nota: Recuerde que V = 5, X = 10, L = 50, C = 100, D = 500, M = 1000.

43. Los buzos con equipo autónomo deben realizar pausas para descompresión durante el ascenso si se
sumergen por largos períodos de tiempo. La siguiente tabla muestra las pausas para descompresión en
inmersiones de 70 y 80 pies y los tiempos de descompresión requeridos:

70 pies de profundidad:

Tiempo sumergido Descompresión


100 Una pausa de 33 min. a 10 pies.
110 Una pausa de 2 min. a 20 pies y una de 41 min. a 10 pies.
120 Una pausa de 4 min. a 20 pies y una de 47 min. a 10 pies.
130 Una pausa de 6 min. a 20 pies y una de 52 min. a 10 pies.

80 pies de profundidad:

Tiempo sumergido Descompresión


100 Una pausa de 52 min. a 20 pies y una de 46 min. a 10 pies.
110 Una pausa de 13 min. a 20 pies y una de 53 min. a 10 pies.
120 Una pausa de 17 min. a 20 pies y una de 56 min. a 10 pies.
130 Una pausa de 19 min. a 20 pies y una de 63 min. a 10 pies.

Elabore un algoritmo que tome como datos de entrada la profundidad en pies y la duración en minutos de
la inmersión y determine los tiempos de descompresión apropiados y el tiempo total aproximado que
pasará el buzo sumergido.

44. A los estudiantes de un grupo de algoritmos se les dice que su nota definitiva será calculada a partir de
cuatro notas parciales que tendrán los siguientes valores: 25% cada una si todas son aprobadas; si la
primera se pierde y las otras se ganan, la primera valdrá 10% y las otras 30% c/u; si las dos primeras se
pierden y las dos últimas se ganan, las dos primeras valdrán 20% c/u y las dos últimas valdrán 30% c/u; en
cualquier otro caso las dos primeras tendrán un valor de 30% c/u y las otras dos 20% c/u.

A usted se le pide que elabore un algoritmo que permita a uno cualquiera de los estudiantes calcular su
nota definitiva.

45. En un grupo de algoritmos se tomaron cuatro notas, con igual valor, para obtener la nota definitiva.
Elabore un algoritmo que calcule e imprima la nota definitiva de un estudiante cualquiera y un mensaje que
indique la categoría en la que está clasificado el estudiante de acuerdo con su nota, según la siguiente
tabla.
12

Nota definitiva Clasificación


0.6 - 0.9 Decepcionante
1.0 - 1.9 Muy deficiente
2.0 - 2.9 Deficiente
3.0 - 3.5 Satisfactorio
3.6 - 4.0 Alto
4.1 - 4.5 Muy alto
4.6 - 5.0 Sobresaliente

46. Dada la siguiente función discreta:

(-2)n para n = 1,2,3,-3,-4,-2,-1


F(n) = -1 para n = 0
(-1)2n para otro caso

Elabore un algoritmo que calcule el valor de la función para un valor cualquiera de n.

47. Suponga que el sueldo básico de un trabajador es:

S = HT * 2.500 + 5.000

donde: HT con las horas trabajadas.

Al sueldo debe descontarse una cuota de seguro social. Este descuento varía de acuerdo con el tipo de
empleado asegurado así:

Tipo de empleado Descuento


1 $3.000
2 $2.500
3 $2.000
4 $1.500
5,6,7 $1.000

Si el tipo de empleado no es ninguno de los anteriores, no hay descuento.

Diseñe un algoritmo que, dadas las horas trabajadas y el tipo de empleado, calcule e imprima su sueldo
básico, su descuento y su sueldo neto a pagar.

48. Un almacén ha decidido dar, por motivo de su aniversario, un descuento a sus clientes de acuerdo con
el tipo de productos que lleve. Si el artículo tiene un precio menor que $2.000 no obtiene ningún descuento.
Si el artículo vale más de $55.000 se le concede un descuento del 50%. Los descuentos de los artículos
cuyos precios fluctúan entre $2.000 y $55.000 vienen dados por la siguiente tabla:

Precio del artículo Descuento


2.000 - 10.000 10%
10.000 - 25.000 20%
25.000 - 40.000 30%
40.000 - 55.000 40%

Haga un algoritmo para que dado el precio de un artículo imprima el descuento del artículo y el total a
pagar por el cliente.

49. Escriba un algoritmo que calcule el volumen de cierta figura geométrica según se indica:
13

1. Esfera: volumen = 4πr3/3.


2. Cilindro: volumen = πr2h.
3. Cubo: volumen = l3.

El algoritmo debe leer una variable que indique a qué cuerpo debe hallarse el volumen y luego leer las
variables necesarias para hacer dicho cálculo.

50. A los estudiantes de un grupo de Lógica se les dice que su nota definitiva será calculada a partir de
cuatro notas parciales que tendrán los siguientes valores:

• 25% cada una si todas son aprobadas.


• Si una se pierde y las otras se ganan, la perdida valdrá 10% y las otras 30% c/u.
• Si se pierden dos y las otras dos se ganan, las dos perdidas valdrán 20% c/u y las otras 30% c/u.
• En cualquier otro caso las dos primeras tendrán un valor de 30% c/u y las otras dos 20% c/u.

A usted se le pide que elabore un algoritmo que permita a uno cualquiera de los estudiantes calcular su
nota definitiva.

PROBLEMAS DE LÓGICA Y ALGORITMOS


(REPETITIVOS)

1. Elaborar un algoritmo que imprima los 100 primeros números naturales.

2. Elaborar un algoritmo que imprima los números pares comprendidos entre 1 y 1000.

3. Elaborar un algoritmo que imprima los números impares comprendidos entre 1 y 1000.

4. Elaborar un algoritmo que lea un número entero positivo y obtenga los múltiplos de 3 comprendidos entre 3 y el
número leído.

5. Elaborar un algoritmo que lea un número entero positivo y obtenga todos los divisores del número leído.

6. Elaborar un algoritmo que obtenga los primeros N números primos (enteros positivos).

7. Elaborar un algoritmo que imprima la suma de los primeros N números naturales.

8. Elaborar un algoritmo que imprima la suma de los primeros N números pares positivos.

9. Elaborar un algoritmo que calcule la calificación promedio de un número (desconocido) de estudiantes.

10. Elaborar un algoritmo que lea N parejas de números, por cada pareja debe imprimir el mayor y el menor. Imprima
un mensaje especial si los números son iguales.

11. Elaborar un algoritmo que lea N ternas de números, por cada terna debe imprimir el mayor y el menor. Imprima un
mensaje especial si por lo menos hay dos números iguales.

12. El DANE desea saber cuántas personas mayores de edad hay en la bella ciudad de Cartagena. Elaborar un
algoritmo que lea el nombre y la edad de cada uno de las personas que viven en Cartagena y provea la información
que el DANE necesita.

13. Coldeportes Bolívar está interesada en promover el Basketbol y para ello desea conocer personas que tengan las
siguientes características:

Edad: Menor de 18 años.


Estatura: Mínima, 180 cm.
14
Peso: Máximo, 80 Kg.

N personas se presentan en las instalaciones de Coldeportes manifestando su deseo de participar en ese deporte.
Elaborar un algoritmo que lea la edad, la estatura y el peso de las personas interesadas y calcule e imprima.

• Número de personas que cumplen las condiciones exigidas.


• Número de personas que no cumplen las condiciones exigidas.
• Promedio de estatura de las personas que cumplen las condiciones.
• Edad, estatura y peso de la persona más alta que se presentó.

14. Un vendedor desea calcular su comisión total sobre la venta de varios artículos. Al vendedor le corresponde el 5%
de comisión sobre artículos cuyo precio sea menor de $10.000, y 7,5% sobre los artículos cuyo precio es de $10.000 o
más. Elabore un algoritmo que permita calcular la comisión total de un vendedor. Asuma que el vendedor hizo N
ventas.

15. Elabore un algoritmo que lea dos números (M y N) y calcule e imprima la suma de los múltiplos de M comprendidos
entre M y N.
16. Elabore un algoritmo que calcule e imprima las tablas de multiplicar del 15 al 45. Se debe imprimir el multiplicando,
el multiplicador y el producto.

17. Elabore un algoritmo que calcule e imprima los 50 primeros números múltiplos de 3 anteriores al 301, así:

300, 297, 294, …

18. En una librería se calcula el precio de los libros de acuerdo con el tipo de libro y el número de páginas del mismo,
de la siguiente manera:

• Los libros de tipo 1 tienen un precio básico de $10.000 más $50 por página.
• Los libros de tipo 2 tienen un precio básico de $15.000 más $70 por página.
• Los libros de tipo 3 tienen un precio básico de $20.000 más $90 por página.
• Los demás libros tienen un precio básico de $25.000 más $120 por página.

Elabore un algoritmo que permita calcular el precio de cada uno de los libros de la librería y el valor total del inventario.
Por cada libro se tiene el código, el tipo de libro y el número de páginas, pero no se sabe cuántos libros hay en total.

19. Elabore un algoritmo que lea la longitud y anchura de un número desconocido de rectángulos. Se debe producir
una lista con la anchura, la longitud y el área de todos los rectángulos cuyo perímetro sea mayor que 12.

20. Elabore un algoritmo que lea N parejas de valores (A y B) y calcule e imprima el valor de Y, siendo:

N
Y = ∑ Xi
i =1

2 2
En donde: Xi = A + B si A - B > 0
2 2
Xi = A - 2B si A - B = 0
2 2
Xi = A + B +3 si A - B < 0

21. Dada la siguiente sumatoria:

?
K2 +1
∑ K
K =1

Elabore un algoritmo que calcule el número de términos necesarios para la sumatoria se aproxime lo más
cercanamente a 1000 sin que lo exceda.

22. Considere la siguiente serie:


2 n-1
a, (a + d)r, (a + 2d)r . . . (a + (n-1)d)r
15
Elabore un algoritmo que lea los valores de a, d, r y n y calcule e imprima la suma de los n primeros términos de la
serie.

23. Elabore un algoritmo que lea N valores de X y calcule e imprima el logaritmo natural y el logaritmo decimal para
cada valor de X, mediante las siguientes fórmulas:

1  X − 1
1000 K

Logaritmo natural de X = ∑  
K =1 K
 X 
Logaritmo decimal de X = (Logaritmo natural de X)/2,30259

24. Se tiene la siguiente sucesión: S = {An}: donde A1 = 0, A2 = 0, A3 = 2 y An = An-1 + An-2 + An-3 para cualquier n
≥ 4. Hacer un algoritmo para determinar si un número dado X pertenece o no a la sucesión.

25. Se tiene la siguiente sucesión: S = {An}: donde A1 = 0, A2 = 0, A3 = 2 y An = An-1 + An-2 + An-3 para cualquier n
≥ 4. Hacer un algoritmo que conteste la siguiente pregunta: ¿cuántos términos de la serie se pueden sumar sin que la
suma exceda a 10.000?

26. Hacer un algoritmo para calcular la función senh(x) usando la siguiente serie:

x3 x5 x7
senh( x ) = x + + + +...
3! 5 ! 7 !
para el cálculo de la serie haga uso de los N primeros términos.

4. Se tiene la siguiente sucesión: S = {An}: donde A1 = 0, A2 = 0, A3 = 2 y An = An-1 + An-2 + An-3 para cualquier n
≥ 4. Hacer un algoritmo que dados N valores de X calcule e imprima:

• ¿Cuántos valores de X están en la sucesión?


• Porcentaje de valores de X que no están en la sucesión.

27. En un curso de N estudiantes se realiza una prueba, la cual sólo puede tener como notas 1, 2, 4 ó 5. Hacer un
algoritmo que elabore una tabla de distribución de frecuencia de las notas. (En una tabla de distribución de frecuencias
lo que se hace es contabilizar el número de veces que se repite cada posible valor).

28. En la granja “Gato por liebre” se desea comenzar el negocio de la crianza de conejos. Inicialmente se compran N
conejos hembras y N machos (todos adultos).

Mediante un estudio estadístico previo se han obtenido los siguientes datos:

• De cada 10 conejos mueren mensualmente 2. (El índice de mortalidad es independiente de la edad y el sexo de los
conejos).
• Cada hembra adulta tiene 8 conejos bebés al mes.
• De todos los bebés que nacen el 50% son hembra.
• Cada conejo hembra que nace comienza a tener conejitos a los dos meses.

Hacer un algoritmo que permita a los dueños de la granja saber el número aproximado de conejos (adultos, jóvenes y
bebés) que se tendrán durante cada uno de los M primeros meses de su negocio.

Hacer un segundo algoritmo que calcule el número de meses que se necesitan para tener una población de
aproximadamente 500 conejos.

29. Elaborar un algoritmo que lea el nombre, la edad, el sexo (1. masculino y 2. femenino) y el estado civil (1. Soltero,
2. Casado, 3. Divorciado, 4. Viudo, 5. Otros) de N personas y calcule e imprima:

• Número de hombres solteros.


• Número de mujeres casadas.
• Promedio de edad de las mujeres solteras.
• Porcentaje de hombres viudos.
16
• Número de hombres divorciados menores de 30 años.
• Numero de mujeres solteras con edades entre 20 y 28 años.

30. En la empresa “El Camello” laboran N personas. Para cada empleado se tienen los siguientes datos:

• Nombre del empleado.


• Salario básico por hora.
• Horas ordinarias trabajadas.
• Horas extras trabajadas.

Elabore un algoritmo que calcule e imprima lo siguiente para cada trabajador:

⇒ Nombre del empleado.


⇒ Salario neto a pagar.
⇒ Valor de la retención en la fuente.

Teniendo en cuenta que las horas extras tienen un recargo del 40% y la retención en la fuente (10%) se aplica a las
horas extras trabajadas, si el total obtenido por este concepto es superior a $100.000.

El algoritmo también debe proveer lo siguiente:

• Salario promedio de los trabajadores.


• Total horas extras laboradas en la empresa.
• Valor total de la nómina.
• Total a pagar por concepto de horas extras.
• Total recaudado por retención en la fuente.

31. En un grupo de N estudiantes se tomaron las siguientes notas parciales que tienen, cada una, un valor en
porcentaje: examen escrito (50%), trabajos (20%), qüices (20%) y participación (10%). Elabore un algoritmo que lea el
código y las calificaciones parciales de los estudiantes y calcule e imprima:

• La nota definitiva de cada estudiante y un mensaje indicando si aprobó o no.


• Número de estudiantes con calificación inferior a 2.
• Número de estudiantes con calificación superior a 4.
• Nota promedio del grupo.
• Código del estudiante que obtuvo la nota definitiva más alta y su nota.

32. Existen números que leídos de izquierda a derecha y de derecha a izquierda tienen el mismo valor. Ejemplo: 404,
1045401. Elabore un algoritmo que lea un número entero y averigüe si tiene la característica aquí mencionada.

33. En una universidad se desea obtener algunas estadística de sus estudiantes. Por cada estudiante se tiene la
siguiente información:

• Código.
• Edad.
• Sexo (1. Masculino, 2. Femenino).
• Carrera (1. Ing. Industrial, 2. Ing. Eléctrica, 3. Ing. Mecánica, 4. Ing. Electrónica, 5. Ing. de sistemas, 19. Tecnología
en sistemas).

Elabore un algoritmo que calcule e imprima:

• Número de estudiantes que hay en cada carrera.


• Promedio de edad de los estudiantes.
• Porcentaje de hombres.
• Porcentaje de mujeres que estudian ingeniería industrial.

34. Dadas N ternas de valores, donde cada terna representa las longitudes de tres líneas rectas, elabore un algoritmo
que calcule e imprima.
17
• Número de triángulos que se pueden construir.
• Número de triángulos equiláteros que se pueden construir.
• Número de triángulos isósceles que se pueden construir.
• Número de triángulos escalenos que se pueden construir.
• Número de ternas con las cuales no se puedan construir triángulos.

Nota: Tres líneas rectas pueden formar un triángulo si la suma de las longitudes de dos líneas cualesquiera es mayor
que la longitud de la tercera.

35. La sucesión de Fibonacci, 0,1,1,2, etc. se genera empezando con los números 0 y 1 y calculando cada nuevo
miembro como la suma de los dos miembros que le preceden en la sucesión. Elabore un algoritmo que calcule e
imprima los primeros N términos de la sucesión y su suma.

36. Elabore un algoritmo que calcule la suma de los términos de la sucesión de Fibonacci cuyos valores están entre
100 y 3000.

37. Elabore un algoritmo que calcule el número máximo de términos de la sucesión de Fibonacci cuya suma no exceda
de 10000.

38. Elabore un algoritmo que lea un valor de X y averigüe si ese valor pertenece a la sucesión de Fibonacci, y de ser
así diga qué posición ocupa:

39. Elabore un algoritmo que lea N valores de X y calcule e imprima:

• Cantidad de valores de X que pertenecen a la sucesión de Fibonacci.


• Porcentaje de valores de X que no están en la sucesión.

40. Dada la siguiente sucesión:

S = {5,8,10,13,15,18,20,23, …}
Elabore un algoritmo que dé respuesta a los siguientes interrogantes:

• ¿Cuántos términos, contando desde el primero en adelante, se pueden sumar sin que la suma exceda a 10.000?
• Dado N valores de X, ¿Cuáles valores de X pertenecen a la sucesión y qué posición ocupan dentro de ella?
• ¿Cuál es el porcentaje de los valores de X que pertenecen a la sucesión?

40. Las permutaciones de x objetos tomados de entre n objetos está definida así:

nPx = n!/(n - x)!

Elabore un algoritmo que lea el valor de n y de x y calcule las permutaciones de x objetos tomados de entre n.

Nota: Para que el cálculo sea posible se debe cumplir que n >= x y x >= 0.

41. El número de combinaciones de n objetos tomando x al mismo tiempo se define:

nCx = n!/((n - x)! * x!)

Elabore un algoritmo que lea el valor de n y de un par de valores XMIN y XMAX e imprima una tabla de nCx para
valores de x comprendidos entre XMIN y XMAX inclusive.

Nota: Para que el cálculo sea posible se debe cumplir que n >= x y x >= 0.

42. El gerente de compras del almacén “Todo a 1000” desea reponer el inventario, para lo cual necesita un informe
sobre los artículos y las cantidades a ordenar a los proveedores.

Usted ha sido comisionado expresamente para elaborar un algoritmo que provea la información que el jefe necesita.
Se sabe que en el almacén hay muchos artículos, aunque no se sabe el número exacto de ellos. Para cada artículo se
tiene la siguiente información:
18

− Código del artículo.


− Nombre del artículo.
− Costo unitario.
− Existencias (unidades).
− Existencia mínima (unidades).
− Existencia máxima (unidades).

El informe que necesita el jefe debe contener, para cada artículo a ordenar, lo siguiente:

⇒ Código del artículo.


⇒ Cantidad a ordenar (unidades).
⇒ Costo unitario.
⇒ Costo total de la cantidad a ordenar.

El algoritmo debe calcular también el costo total de la mercancía a ordenar.

Nota: Se ordena (se hace un pedido a un proveedor) cuando las existencias están por debajo de la existencia mínima,
pero las existencias nunca deben estar por encima de la existencia máxima.

43. Elabore un algoritmo que lea los siguientes datos para un número desconocido de personas:

• Año de nacimiento.
• Sexo (1 si es masculino, 2 si es femenino).
• Estado civil (1 si es soltero, 2 si es casado).

Se desea saber:

∗ El número de hombres solteros que pueden votar.


∗ El número de hombres casados que pueden votar.
∗ El número de mujeres solteras que pueden votar.
∗ El número de mujeres casadas que pueden votar.
∗ El número total de personas solteras que pueden votar.
∗ El número total de personas casadas que pueden votar.
∗ El número que pueden votar.
∗ El número total de personas que no pueden votar.

Nota: Sólo pueden votar los que tengan 18 años cumplidos o más.

44. El valor de la función Seno se puede calcular para cualquier valor, real, de x usando la siguiente serie de Maclaurin:
3 5 7
SEN(X) = X - X /3! + X /5! - X /7! + …
Por otra parte, el valor de la función Coseno se puede calcular para cualquier valor, real, de x por medio de la siguiente
serie de Maclaurin:
2 4 6
COS(X) = 1 - X /2! + X /4! - X /6! + …
Elabore un algoritmo que para N valores de x calcule e imprima el valor del Seno, Coseno, Tangente, Secante y
Cosecante.

Tenga en cuenta que Tan(X) = Sen(X)/Cos(X), Sec(X) = 1/Cos(X), Cosc(X) = 1/Sen(X).

Para el cálculo de las funciones Seno y Coseno se pueden usar M términos de la serie.

45. Se ha efectuado una encuesta entre las familias de un determinado sector de la ciudad. Por cada familia
entrevistada se tienen los siguientes datos:

• Código.
19
• Ingreso anual.
• Número de miembros.

Elabore un algoritmo que calcule e imprima.

a. El promedio de ingresos familiares.


b. La familia con mayores ingresos y valor de su ingreso.
c. Porcentaje de familias con ingresos menores a un millón de pesos.
d. Porcentaje de familias con ingresos entre un millón y dos millones de pesos.
e. Porcentaje de familias con ingresos superiores a los dos millones de pesos.
f. Número de familias que tienen ingresos por debajo del nivel de pobreza, el cual se puede calcular con base en la
siguiente fórmula:

NP = $(30.000 + 25.000(m-2))

donde m es el número de miembros de la familia.

46. Elabore un algoritmo que calcule el promedio de una serie de observaciones (X) con base en sus respectivas
frecuencias (F). Este promedio se puede calcular por medio de la siguiente fórmula:

N
∑ X i Fi
i =1
Prom. = N
∑ Fi
i=1

47. Realice un algoritmo para calcular la suma de los primeros N términos de la siguiente serie:

S = (1 , 1/3!, 1/5!, 1/7!, . . .)


48. Realice un algoritmo para calcular la suma de los primeros N términos de la siguiente serie:

S = (1 , -1/3!, 1/5!, -1/7!, . . .)


49. En una empresa laboran N empleados fabricando tornillos. Por cada uno de ellos se tienen los siguientes datos:

• Nombre del trabajador.


• Horas ausencia.
• Tornillos defectuosos.
• Tornillos producidos.

Elabore un algoritmo que lea el valor de N y los datos de cada trabajador y calcule el grado de eficiencia para cada
uno.

Para el cálculo del grado de eficiencia se tendrán en cuenta las siguientes condiciones:

1. Ausencia al trabajo <= 3,5 horas


2. Tornillos defectuosos < 300
3. Tornillos producidos > 10.000

Los grados de eficiencia se asignan de la siguiente manera:

• Si no cumple ninguna condición: Grado = 5.


• Si solo cumple la primera condición: Grado = 7.
• Si solo cumple la segunda condición: Grado = 8.
• Si solo cumple la tercera condición: Grado = 9.
• Si cumple la primera y segunda condiciones: Grado = 12.
• Si cumple la primera y tercera condiciones: Grado = 13.
• Si cumple la segunda y tercera condiciones: Grado = 15.
20
• Si cumple las tres condiciones: Grado = 20.

El algoritmo también debe proveer la siguiente información.

• Número de trabajadores con grado de eficiencia 20.


• Porcentaje de trabajadores que tienen grado de eficiencia 5.

50. A los N estudiantes de un grupo de algoritmos se les dice que su nota definitiva será calculada a partir de cuatro
notas parciales que tendrán los siguientes valores: 25% cada una si todas son aprobadas; si la primera se pierde y las
otras se ganan, la primera valdrá 10% y las otras 30% c/u; si las dos primeras se pierden y las dos últimas se ganan,
las dos primeras valdrán 20% c/u y las dos últimas valdrán 30% c/u; en cualquier otro caso las dos primeras tendrán
un valor de 30% c/u y las otras dos 20% c/u.

A usted se le pide que elabore un algoritmo que permita calcular la nota definitiva de cada uno de los estudiantes del
grupo y provea además lo siguiente:

∗ Número de estudiantes con nota definitiva mayor que 4.


∗ Número de estudiantes que no aprobaron.
∗ Nota definitiva promedio del grupo
∗ Nota definitiva máxima.

51. Elaborar un algoritmo que lea la edad y el código de un grupo de estudiantes y calcule e imprima el promedio de
edad de los mayores de 21 años y el promedio de edad del resto.

52. Por cada habitante de Colombia se tienen los siguientes datos: número de identificación y número de
enfermedades graves que ha padecido. Elaborar un algoritmo que calcule: cuántos habitantes han tenido
enfermedades graves y el promedio de enfermedades graves que han padecido.
53. Elabore un algoritmo que lea un valor entero N y los valores de X e Y (N en total), calcule e imprima el valor de R
dado por:

N
∑ (X i * Yi ) − X * Y
i =1
R =
 1 N 2   1
N
2 
 ∑ (X i ) − X   ∑ (Yi ) − Y 
2 2
 N i =1   N i =1 
N N
∑ X i ∑ Y i
i=1 i=1
X = Y =
N N

54. Un administrador desea obtener los datos necesarios para elaborar una curva de salarios en una determinada
empresa, en función del puntaje asignado por valoración de méritos. Las fórmulas utilizadas para el cálculo son las
siguientes:


170.000 + 0.486P 2 ⇒ para P < 120

 18'000.000
S= ⇒ para P > 120
 P
 15'000.000
100.000 + P
⇒ para P = 120

Elaborar un algoritmo que calcule los valores de S para N valores de P. Donde S es el salario y P es el puntaje.

55. Elabore un algoritmo que calcule e imprima las primeras N filas de una tabla, de acuerdo con
las siguientes reglas.

• La tabla tendrá 4 columnas llamadas A,B,C,D.


• Los valores de la primera fila de le pedirán al usuario.
• El valor en A será uno mayor que en la fila anterior.
21
• El valor en B será dos unidades mayor que en la fila anterior.
• El valor de C será la suma de los valores de B hasta D de la fila anterior.
• El valor en D será la suma acumulada de los valores de B hasta la fila anterior.

56. De los hombres casados de Cartagena se desea saber cuántos tienen hijos y cuántos no; además se desea tener
el promedio del número de hijos. Por cada hombre casado se tienen los siguientes datos: Número de la cédula y
número de hijos. Elabore un algoritmo que provea la información que se necesita con base en la información que se
posee.

57. El dueño de un teatro desea hacer una investigación para cambiar la silletería de su teatro. Para ello necesita
saber cuántas sillas dobles y cuántas sencillas se deben colocar.

En el teatro caben N personas sentadas. El sábado se llenó el teatro y el portero anotó en un papel un uno por cada
persona sola que entraba y un dos si entraba una pareja. Elabore un algoritmo que basándose en el número de
personas que caben y los datos recogidos por el portero calcule cuántas sillas dobles y cuántas sencillas se necesitan.

58. En una encuesta telefónica se entrevistaron a N personas. A cada persona se les hicieron 5 preguntas, las cuales
podía responder de la siguiente manera: si está a favor oprimía 1, si está en contra oprimía 2, si no está ni a favor ni en
contra oprimía 3. Elaborar un algoritmo que muestre los resultados de la encuesta en porcentajes.

59. El encargado de un peaje deseaba obtener unas estadísticas sobre los autos que pasaron durante un día. Para ello
hizo las siguientes anotaciones: si pasaba un automóvil anotaba un uno, si pasaba un bus anotaba un dos, si pasaba
un camión anotaba un tres. En todos los casos anotaba el número de personas que iba en cada vehículo.

Elabore un algoritmo que procese la información que obtuvo el encargado del peaje y provea lo siguiente:

− Cuántos automóviles pasaron.


− Cuántos buses pasaron.
− Cuántos camiones pasaron.
− Número total de vehículos que pasaron.
− Promedio de personas por vehículo.

60. Elabore un algoritmo que lea un conjunto de N números enteros de 4 dígitos cada uno y averigüe cuántos de esos
números contienen un dígito d. Además calcule la suma de los números que no lo contienen.

61. Suponga la siguiente función:


3 2
f(x) = x + 5x + 2x +1

Elabore un algoritmo que evalúe la función en un intervalo cerrado [A,B], con incremento fijo L.

62. Un laboratorio se encuentra oculto en el sótano de una granja. Un terremoto produjo un derrumbe, lo que dejó
obstruida la entrada. Parte de los marcos al caer partieron unas probetas que contenían bacterias que al reproducirse
generan gas carbónico y consumen oxígeno.

En forma matemática el número de bacterias puede expresarse como:

2
Pt = P0(1 + (0.54t)/1! + (0.54t) /2! + …+ (0.54t) /n!)
n

donde: Pt : Número de bacterias en un tiempo t.


P0 : Número bacterias en un tiempo inicial.
t : Tiempo en horas, después del tiempo inicial.

La cantidad de oxígeno que consumen las bacterias para producir gas carbónico está dado por:
2
O = Pt (1/230 - 1/Pt )

En el momento del derrumbe había en el laboratorio un total de 25 personas, cada una de las cuales consume igual
cantidad de oxígeno.
22
De los equipos de computación disponibles en el laboratorio solo quedó servible una calculadora programable con
poca memoria. Un programador experto tomó la calculadora, hizo un programa, y formuló las siguientes preguntas a
los científicos presentes:

• ¿Qué cantidad de bacterias había en las probetas?


• ¿Qué cantidad de oxígeno hay aproximadamente en el laboratorio?
• ¿Qué cantidad de oxígeno consume una persona durante una hora?
• ¿Cuántos términos de la serie de la reproducción de las bacterias se pueden considerar?

Después oprimió unas teclas en la calculadora y dijo el tiempo aproximado de que disponían para que fuesen
rescatados antes de quedar sin oxígeno. ¿Cuál algoritmo cree usted que hizo el programador para obtener esta
respuesta?

63. Elaborar un algoritmo que lea un par de valores enteros J y K y calcule el valor de la siguiente sumatoria (haciendo
el cálculo de la potenciación por multiplicaciones sucesivas).
j
S=1 +2 +3 +
j j …+ Kj

64. Un número perfecto es aquel que es igual a la suma de los divisores menores que él. Por ejemplo: 6 = 1 + 2 +3.
Elabore un algoritmo que permita buscar dentro de los números naturales los primeros N números perfectos.

65. En la hacienda “La Vaca Gorda” el primer día del mes preparan 50.000 litros de una mezcla homogénea con agua
y Q gramos de un compuesto químico que purifica el agua. Diariamente se extraen 400 litros de la mezcla para dar de
beber al ganado. El último día de la semana, después de extraer los 400 litros de la mezcla, se agrega, a la misma,
suficiente agua para completar el volumen inicial.

Elabore un algoritmo que conteste la siguiente pregunta:

¿Cuál será la densidad de la mezcla (gramos/litros) al inicio de cada una de las N semanas de estudio?

Elabore un segundo algoritmo que permita determinar el tiempo, en días, que pasará antes que deba agregarse más
compuesto químico a la mezcla y qué cantidad de químico se debe agregar. Tenga en cuenta que se debe agregar
más compuesto químico cuando la cantidad de éste ha descendido por lo menos en un 70%.

66. Un proyectil se dispara con un ángulo θ grados con una velocidad inicial V en metros por segundo, viaja una
distancia horizontal de R metros y alcanza una altura de H metros. El vuelo dura T segundos. Con las fórmulas
0 0
siguientes elabore un algoritmo que calcule estos factores (R, H y T), usando ángulos desde 10 hasta 80 con un
incremento θI, con velocidad inicial desde 100 hasta 500 metros por segundo, con incrementos VI. Escriba los
resultados de manera que la velocidad inicial y los valores correspondientes a R, H y T se escriban para cada ángulo.
V 2 SENO(2θ ) V 2 SENO 2 (θ ) 2 VSENO(θ )
R= H= T=
g 2g g

67. Una zona del departamento de Bolívar tiene N Kilómetros cuadrados y es capaz de sostener 15 personas por
kilómetro cuadrado. En la actualidad hay 50 individuos.

La población anualmente varía así: al comienzo del año inmigran a la región 5 personas; a la mitad del año la
población se incrementa, por nacimientos, en un 10%; al final del año fallece el 5%. Elabore un algoritmo que
determine en cuántos años la población se excederá por primera vez a la capacidad de la región.

68. Elabore un algoritmo que tome como datos N valores de una lista que supuestamente está ordenados
ascendentemente y verifique si efectivamente esa lista está ordenada o no.

69. Considere todas las parejas ordenadas (I, J) que se pueden formar con los N primeros números naturales. Elabore
un algoritmo que genere dichas parejas.

70. Dos amigos juegan a los dados. En cada lance gana el que saca el número más alto, pero gana el juego el que
gane tres lances de seguido. Diseñe un algoritmo que determine quién es el ganador del juego.

71. Los botones de un teléfono están organizados según este patrón:


23
1 2 3
4 5 6
7 8 9
* 0

Elabore un algoritmo que lea los siete enteros, todos en la escala del 0 al 9 que represente un número telefónico, y que
muestre los números de fila y columna donde está ubicado cada dígito del número telefónico.

72. Dos personas apuestan a los dados con las siguientes reglas:

a. Cada uno arroja dos dados en cada jugada.


b. Si alguno saca doble se aumenta su puntaje acumulado en dos puntos.
c. El que saca mayor puntaje en la jugada aumenta su puntaje en la diferencia entre 15 y los que sacó, pero si hay
empate en la jugada no se anotan puntos.
d. El partido lo gana el que obtenga una ventaja de 25 puntos. (Las ventajas se comparan después de haber analizado
los resultados de ambas jugadas).

73. Elabore un algoritmo que dados los lados (A,B,C) de N triángulos, calcule el área de aquellos cuyo perímetro sea
mayor que 15. Asuma que A es la base y B es la altura del triángulo.

74. Elabore un algoritmo que dada una serie de N parejas (x,y) determine: cuáles puntos caen dentro de un
circunferencia de radio R con centro en el origen de coordenadas, y que también estén sobre una recta de ecuación Y
= AX + B; cuáles caen en la recta pero fuera de la circunferencia y cuáles caen fuera de la circunferencia y la recta.

75. Elabore un algoritmo que escriba todos los números de tres cifras menores que 600 que no tengan el dígito 5 ni
que tengan cifras repetidas.

76. Elabore un algoritmo que lea un lote de N números enteros y haga lo siguiente: si hay más números positivos que
negativos, calcule el promedio de los positivos; en caso contrario calcule el promedio de los negativos; y si son iguales
calcule el promedio de todos los números incluyendo los ceros.

77. Elabore un algoritmo que calcule cuántos y cuáles números de tres cifras (100-999) hay que sean iguales a la
suma de los cubos de los dígitos que lo forman.

78. Se tienen cuatro candidatos para elegirse uno como presidente de una junta directiva y se desea saber quién es el
que gana sabiendo que fueron N los votantes.

79. El propietario de un rancho ganadero tiene la oportunidad de comprar el rancho adyacente. No habrá oportunidad
de comprar tierras adicionales en N años. El rancho actual es capaz de mantener 13000 animales, y en la actualidad
hay 4500, pero el hato se incrementa en un 12% anual. Elabore un algoritmo que permita determinar al propietario si
debe comprar o esperar. (Todos los cálculos del tamaño del hato se deben redondear a la parte entera).

80. En una universidad todos los estudiantes ven 5 asignaturas, y en cada asignatura hay N estudiantes. Al llegar el
final del semestre se tienen las 5 notas definitivas de cada estudiante en cada asignatura.

Con el objetivo de hacer un estudio del rendimiento académico la universidad desea conocer la siguiente información:
nota promedio de cada alumno y nota promedio por materia.

Elabore un algoritmo que provea la información que la universidad requiere.

81. Elaborar un algoritmo que lea un conjunto de N números y calcule e imprima el porcentaje de ceros, el porcentaje
de negativos y cantidad de positivos.

82. Un móvil parte con velocidad V0 y aceleración constante A. Elaborar un algoritmo que calcule el espacio recorrido
cada 0.5 segundos durante los primeros N segundos.

83. Elabore un algoritmo para hallar cuántos números se debieron haber leído de un conjunto dado para que la suma
de los pares sea mayor que 3000.

84. Una entidad bancaria dispone de X pesos para sus clientes; pero tiene la regla de que cada vez que un cliente
solicita un préstamo, lo máximo que se le presta es el 10% de la plata que hay disponible. Elabore un algoritmo que
24
conteste la siguiente pregunta: ¿A cuántos clientes se les presta antes de tener disponible menos del 15% de la
cantidad de dinero con que comenzó?

Problemas De Lógica Y Algoritmos


(ARREGLOS)

1. Elaborar un algoritmo que lea un vector de N elementos (enteros) y que coloque en cero los elementos
del arreglo que tienen valor impar.

2. Elabore un algoritmo que lea tres vectores A, B, C de M elementos y genere un cuarto vector NUEVO de
M elementos, donde cada elemento contenga la suma de los elementos correspondientes en los arreglos
A, B, y C. Así NUEV(I) = A(I) + B(I) + C(I).

3. Elabore un algoritmo que lea dos vectores A, B de N elementos y genere otros tres vectores, uno que
contenga la suma de los elementos respectivos, otro con el producto y otro con la diferencia (si la
diferencia es negativa se debe colocar un cero como valor).

4. Elabore un algoritmo que genere e imprima un vector de N elementos asignando a cada elemento un
valor igual al inverso multiplicativo de la posición que ocupa.

5. Elabore un algoritmo que: lea un vector A de N elementos y una variable CLAVE, encuentre si el valor de
CLAVE se encuentra o no dentro del arreglo. En caso de encontrarse debe indicar cuántas veces aparece
dicho valor en el arreglo.

6. Elabore un algoritmo que lea un vector F de N elementos y encuentre:

N
∏ Fi
i =1
FEQ =
N  N 
2
 
∑  ∏ Fi  Fi 
i = 1  i = 1  

7. Elabore un algoritmo que lea dos vectores A y B de N elementos cada uno y calcule e imprima:

• Un vector C cuyos elementos resulten de sumar los valores de A(I) y B(I) para todo valor de I.
• Un vector D cuyos elementos tienen la forma general: D(K) = A(I) - B(I) para I par.
• Un vector E cuyos elementos tienen la forma general: E(K) = A(I) * B(I) para I impar.

8. Elaborar un algoritmo que lea un vector de N elementos y calcule e imprima el número mayor y el menor
del vector.

9. Elaborar un algoritmo que lea un vector de N elementos y calcule e imprima el número mayor y la
posición que ocupa en el vector.

10. Elaborar un algoritmo que lea un vector A de N elementos (enteros) y calcule:

◊ La suma de las diferencias entre un elemento y el siguiente.


◊ La suma de los números positivos.
◊ La cantidad de números entre cero y diez inclusive.

11. Elabore un algoritmo que lea un vector de N elementos (enteros) y calcule e imprima:

− El número de datos repetidos en el vector.


25
− El número de valores impares.
− El número de valores positivos.

12. Elabore un algoritmo que lea N números y los imprima ordenados descendentemente.

13. Elabore un algoritmo que lea dos vectores. El primero, de M elementos, contendrá los códigos de los
estudiantes que perdieron Cálculo integral. El segundo, de N elementos, contiene los códigos de los
estudiantes que perdieron Lógica y algoritmos. Se debe crear e imprimir otro arreglo que contendrá los
códigos de los estudiantes que perdieron tanto Cálculo integral como Lógica y algoritmos.

14. Se tiene dos vectores relacionados. El primero contiene los códigos de los N artículos que se venden
en un almacén. El segundo contiene las existencias (número de unidades existentes) de cada uno de los
artículos.

Durante el día se realiza un número desconocido de transacciones en el almacén, las cuales pueden ser
de despacho de mercancía a los clientes o de recibo de mercancía de los proveedores. Por cada
transacción de tienen los siguientes datos:

• Tipo de Transacción: 1 para proveedor (recibo) ó 2 para cliente (venta).


• Código del artículo transado.
• Número de unidades transadas (recibidas o vendidas).

Se pide elaborar un algoritmo que lea los dos vectores, que lea los datos de cada transacción, que
actualice el vector de existencias y que imprima los dos vectores después de procesar todas las
transacción.

Nota: Asuma que en ningún momento la cantidad vendida es mayor que las existencias.

15. Dos vectores contienen valores ordenados de menor a mayor, uno de M elementos y otro de N
elementos. Elabore un algoritmo que lea los dos vectores y genere otro vector de N + M elementos que
contendrá los elementos de los dos primeros ordenados de menor a mayor.

16. Un almacén tiene N departamentos numerados consecutivamente, los cuales venden artículos de
diferente naturaleza. Durante el día se hacen muchas ventas. Por cada venta que se realiza se tienen los
siguientes datos:

¯ Código del artículo.


¯ Precio de venta.
¯ Costo del artículo.
¯ Código del departamento donde se vendió.
¯ Cantidad vendida.
¯ Indicativo que dice si el producto es colombiano o importado.

El gerente del almacén necesita saber, para cada departamento, cuántos productos nacionales y cuántos
importados obtuvieron utilidades superiores a $20.000. Elabore un algoritmo que provea la información
que el gerente necesita.

17. N estudiantes toman un examen de escogencia múltiple que contiene M preguntas, cada una de las
cuales con 5 respuestas posibles. Por cada estudiante que presentó la prueba se tienen los siguientes
datos: código del estudiante y las respuestas a las M preguntas. Por otro lado se tienen las respuestas
correctas a las M preguntas.

Elabore un algoritmo que basándose en los datos anteriores provea la siguiente información:
26
⇒ Código y puntaje de cada estudiante.
⇒ Código y puntaje del estudiante que sacó el puntaje más alto.
⇒ Número de estudiantes que respondieron correctamente por lo menos el 50% de las preguntas.
⇒ Puntaje promedio del grupo.

18. Elabore un algoritmo que lea dos vectores A y B de M y N elementos respectivamente y genere un
vector V que contenga la unión de los conjuntos definidos por los vectores A y B. Por unión se entiende
que V contendrá una copia de cada valor distinto encontrado en todo A y en todo B.

19. El DANE ha recopilado información sobre la cantidad de trabajadores agrícolas y trabajadores no


agrícolas en Colombia durante los últimos N años. Para cada uno de los N años se tiene la siguiente
información:

⇒ Año.
⇒ Número de trabajadores agrícolas (millones).
⇒ Número de trabajadores no agrícolas (millones).

Los datos están ordenados en forma ascendente según el año. Elabore un algoritmo que lea la anterior
información y provea la siguiente:

• Año (s) en el cual hubo el menor número de trabajadores agrícolas.


• Año (s) en el cual hubo el mayor número de trabajadores no agrícolas.
• Año (s) en el cual hubo el mayor decrecimiento en el número de trabajadores agrícolas.
• Año (s) en el cual hubo un decrecimiento en el número de trabajadores no agrícolas mientras que el
número de trabajadores agrícolas se incremento con respecto al año anterior.
• Año (s) en el cual hubo el mayor número de trabajadores.
• Años en los cuales hubo el mismo número de trabajadores agrícolas.
• El porcentaje de trabajadores agrícolas con respecto al total de trabajadores.

20. El Instituto Colombiano Agropecuario ha recopilado información sobre la producción, en los últimos 20
años, de carne y leche en diversos municipios del departamento de Bolívar. La información se ha guardado
en carpetas, ordenadas por año en forma ascendente. Cada carpeta está rotulada con el código del
municipio y en ella está consignada la siguiente información por cada año de estudio:

⇒ Año.
⇒ Producción de carne (toneladas).
⇒ Producción de leche (millones de litros).

Su trabajo, si decide aceptarlo, consiste en elaborar un programa que, teniendo en cuenta los datos
anteriores, provea la siguiente información:

Para cada municipio:

♦ Año de mayor producción de carne y cuántas toneladas se produjeron.


♦ Año de menor producción de leche y cuántos millones de litros se produjeron.
♦ Año en que hubo la mayor disminución en la producción de carne con respecto al año anterior.
♦ Producción media de leche y carne.

Para todo el departamento:

◊ Código del municipio con mayor producción media de leche.


◊ Cantidad de municipios en los que la producción total de carne fue menor de 200 toneladas.
◊ Cantidad de municipios en los que la producción total de leche fue mayor de 50 millones de litros.
27

21. Un grupo de estudiantes presentó una prueba de aptitud matemática, por cada uno de los cuales de se
tiene el código y su calificación en la prueba (de 0 a 100). Elabore un algoritmo que permita clasificar las
calificaciones, determinando cuántas caen en cada uno de los intervalos 0 a 10, 11 a 20, 21 a 30, y así
sucesivamente hasta el intervalo 91 a 100. Imprima además los códigos y la calificación de los 20
estudiantes con calificación más alta.

22. Elabore un algoritmo que lea un vector A de N elementos que se encuentra ordenado en forma
ascendente, lea un valor X y lo inserte en el vector de tal forma que se mantenga el orden ascendente. Si
en el vector A ya hay un valor igual a X no haga la inserción. Imprima el vector actualizado.

23. En una universidad se efectúa un examen de admisión que consta de dos pruebas: Aptitud Matemática
y Aptitud Verbal. Cada prueba contiene N preguntas de escogencia múltiple y cada pregunta tiene 5
opciones. En un vector R de 2N elementos se graban las respuestas correctas de las dos pruebas. Las N
primeras posiciones de R contienen las respuestas correctas a la prueba de Aptitud Matemática y las
restantes N posiciones contienen las respuestas correctas a la prueba de Aptitud Verbal.

Se presentan M estudiantes a la prueba. Para cada uno de ellos se tienen los siguientes datos:

• Número de credencial.
• Respuestas a la prueba de Aptitud Matemática.
• Respuestas a la prueba de Aptitud Verbal.

Elabore un algoritmo que basándose en la información anterior provea la siguiente:

− El puntaje obtenido por cada estudiante en cada prueba.


− El puntaje total obtenido por cada estudiante.
− El puntaje promedio de cada examen.
− El puntaje promedio total.
− La credencial y el puntaje correspondiente a los estudiantes que obtuvieron un puntaje igual o superior
al promedio.
− El mayor puntaje (total) y la credencial del estudiante que lo obtuvo.

24. Elaborar un algoritmo que imprima las primeras N filas del triángulo de Pascal. El cual tiene la siguiente
forma:

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1

Cada uno de los elementos es la suma de dos elementos de la fila precedente, a excepción de los
elementos del contorno que son todos unos (1).

25. Elaborar un algoritmo que lea una matriz de N filas y M columnas. Luego lea un valor y chequee si ese
valor existe en alguno de los elementos de la matriz. Si existe se debe imprimir la posición que ocupa el
valor dentro de la matriz. Si no existe se debe un mensaje que diga: “No se encuentra dentro de la matriz”.
28
26. Elabore un algoritmo que lea una matriz de N*N. Calcule la suma de los elementos de la diagonal
principal de la matriz. Calcule la suma de los elementos de la última fila y la suma de los elementos de la
última columna.

27. Una compañía tiene N vendedores y lleva funcionando M años. Elabore un algoritmo que lea la venta
(en miles de pesos) de cada uno de los N vendedores en cada uno de los M años y almacene esos datos
en una matriz. Luego debe calcular e imprimir:

• Total de ventas de cada vendedor en los M años.


• Total de ventas en cada año.
• El total de ventas de la compañía en los M años.

28. La transpuesta de una matriz se define como la matriz cuya fila I es la columna I de la matriz original.
Elabore un algoritmo que lea la matriz A de M filas y N columnas y calcule la transpuesta de A.

29. Dada una matriz A de N filas y M. Elabore un algoritmo que lea la matriz y genere e imprima un vector
que contenga los números pares de la matriz.

30. Elabore un algoritmo que lea dos matrices A y B y calcule la matriz C resultante de multiplicar A y B.
donde:

N
C(i, j) = ∑ A (i, k ) * B (k , j) para todo i , j.
K =1

Con la condición de que el número de columnas de la matriz A debe ser igual al número de filas de la
matriz B.

Nota: Si no es posible la multiplicación se debe mostrar un mensaje indicando la razón por la cual no se
puede realizar la operación.

31. N trabajadores de una construcción laboran M días en cierta obra. Al final de la jornada a cada
trabajador se le anota en un registro el código y el número de horas trabajadas durante la jornada. Al
concluir la obra se tendrá la siguiente información:

Código trabajador Día 1 Día 2 . . . Día M


120 8:50 9:00 . . . 8:00
128 8:00 9:50 . . . 9:00
500 7:30 8:30 . . . 6:20
. . . . .
. . . . .
. . . . .

Elabore un algoritmo que lea los datos de los trabajadores teniendo en cuenta lo siguiente:

a. Los códigos de los trabajadores se almacenarán en un vector y las horas en una matriz, donde, en su
orden, a cada elemento del vector le corresponda a una fila en la matriz.

b. Por cada trabajador se leerán su código y las horas trabajadas en cada día del mes.

Se debe calcular e imprimir lo siguiente:

• El total de horas trabajadas por cada hombre.


• El total de horas trabajadas en cada jornada.
29
• El total de horas trabajadas por todos los hombres en toda la obra.
• El código del trabajador que más horas laboró.
• El número del día en que menos horas se laboró.

32. Elabore un algoritmo que lea tres matrices de N*N (A,B,C) y el valor de N y que produzca como salida
un valor lógico (verdadero o falso) que indique si la matriz C es o no el producto de A*B.

33. Elabore un algoritmo que lea un vector de N enteros positivos y posteriormente cambie los elementos
repetidos por el número -1, de tal forma que el vector resultante no tenga elementos repetidos (salvo el -1).

34. Elabore un algoritmo que lea un vector de N elementos e intercambie el primer elemento con el último,
el segundo con el penúltimo, etc., hasta llegar a la mitad.

35. Elabore un algoritmo que lea un vector A de N elementos y que luego rote el vector 2 posiciones
adelante, así: (2, -3, 1, 4, 9, 5, 0, 7) -----à (1, 4, 9, 5, 0, 7, 2, -3).

36. Elabore un algoritmo que lea dos vectores A y B de 2N elementos cada uno. Elabore un algoritmo que
intercambie los N primeros elementos de A con los N últimos elementos de B. así: El primero de A con el
N+1 de B, el segundo de A con el N+2 de B, etc. La lectura de los datos se debe hacer de dos en dos, es
decir, un elemento de A y uno de B.
fila 1 de orden 2N puede ser dividida en 4 submatrices como se muestra a
37. Una matriz cuadrada

I
fila 2

II
continuación:

fila N
fila N+1
fila N+2

fila 2N
III IV
Elabore un algoritmo que lea la matriz cuadrada de 2N por 2N (valores enteros) y el valor de N e
intercambie el primer cuadrante con el cuarto cuadrante cuando el mayor elemento del tercer cuadrante
sea menor que el producto de los elementos del segundo cuadrante.

38. Elabore un algoritmo que lea un vector de N elementos, lo ordene en forma ascendente y que luego lea
un valor X y averigüe si ese valor está o no está en el vector.

39. Elaborar un algoritmo que ordene una matriz de tamaño N*M de menor a mayor con el siguiente
proceso: guarde primero por filas de la 1 a la N la matriz en un vector de N*M elementos y luego ordene el
vector. Finalmente copie el vector ordenado en la matriz.

40. Una matriz cuadrada cuyos elementos de la diagonal principal tienen valor uno y los demás elementos
tienen valor cero se conoce como matriz identidad.

Cualquier matriz cuadrada de orden N puede aumentarse por medio de una matriz identidad, del mismo
orden, colocada a su derecha, por ejemplo:
30
Matriz dada Matriz identidad Matriz aumentada
1 3 1 0 1 3 1 0
5 8 0 1 5 8 0 1

Elabore un algoritmo que lea una matriz cuadrada, e imprima la matriz identidad del mismo orden y la
matriz aumentada.

41 Se dice que una matriz cuadrada es ortogonal si al multiplicarla por su transpuesta da como resultado la
matriz idéntica. Elabore algoritmo que lea una matriz A de N*N y averigüe si es ortogonal o no.

42. La empresa de aviación “Alas de Águila” desea computarizar los datos de sus vuelos. La empresa
realiza N vuelos diarios a diferentes destinos dentro y fuera del país. En un vector de N elementos se
graban los valores, enteros, correspondientes al cupo máximo para cada uno de los vuelos. La empresa
recibe todas las reservaciones el día anterior a la fecha prevista para el vuelo. Para cada pasajero que
solicita una reservación se tienen los siguientes datos:

− Número de identificación.
− Nombre del pasajero.
− Número del vuelo que desea tomar.
− Ciudad de destino.
− Tipo de destino. (1 Nacional, 2 extranjero).

Elabore un algoritmo que lea los valores correspondientes a los cupos máximo de los vuelos, los datos de
todas las personas que solicitan reservación y provea la siguiente información:

⇒ Número total de reservaciones para cada vuelo.


⇒ Cantidad de vuelos en los que se reservaron todos los cupos.
⇒ Cantidad de cupos que no se reservaron en cada vuelo.
⇒ Cantidad de personas que no pudieron hacer reservación porque los cupos estaban llenos.
⇒ Cuántas personas viajarán al extranjero y cuántas dentro del país.
⇒ Si al pasajero se le puede hacer la reservación, imprima toda su información y el mensaje: “Cupo
reservado”.
⇒ Si al pasajero No se le puede hacer la reservación, imprima toda su información y el mensaje: “Cupo
no reservado”.

43. Una matriz A se dice que es simétrica si A(i , J) = A(j , i) para todo i, j dentro de los límites de la matriz.
Elabore un algoritmo que lea una matriz de N*N y diga si es o no es simétrica.

44. En un departamento de N municipios se realizan elecciones para gobernador, para las cuales se
presentan M candidatos.

Elabore un algoritmo que haga lo siguiente:

− Almacene los nombres de los candidatos en un vector de M elementos.


− Almacene los nombres de los municipios en un vector de N elementos
− Almacene, en una matriz (VOTOS) de N*M, la cantidad de votos que cada candidato obtuvo en cada
municipio. Así: el elemento VOTOS(2,5) contendrá la cantidad de votos que el candidato 5 obtuvo en el
municipio 2.
− Calcule e imprima el número total de votos que recibió cada candidato y el porcentaje del total de votos
emitidos. Asimismo imprima el nombre del candidato ganador.
− Calcule e imprima el total de votos emitidos en cada municipio, y el nombre del municipio donde fue
mayor la votación.
− Imprima el nombre del municipio donde más personas votaron por el candidato ganador y el número de
votos que obtuvo ese candidato en ese municipio.

También podría gustarte