elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Temas
Páginas: [1]
1  Programación / Scripting / ayuda con estos ejercicios en: 30 Septiembre 2015, 06:01 am
Pregunta 1                                 Una persona tiene un dinero que ha heredado. Necesita tomar la decisión de dónde colocarlo para que le rinda una rentabilidad adecuada. Para esto, ha investigado que un banco le puede ofrecer por su dinero en modalidad a Plazo Fijo, una atractiva oferta.
La oferta consiste en tener tasas de interés escalonadas por el tiempo que su dinero estará sin moverlo a una tasa flat (es decir, el interés se calcula por el monto * tasa /100). La tasa inicial ofrecida, se le aumenta un punto porcentual por cada tres meses de permanencia y es con capitalización mensual.
Por ejemplo: con un capital de 1000, una tasa de 10% mensual en 3 meses. Capitalización mensual ganará lo siguiente.
1000 * 0.10 = 100
1100 * 0.10 = 110
1210 * 0.11 = 131.10
                343.10 es lo que ganará la persona al cabo de 3 meses
Desarrollar un subprograma que determine el interés total que ganará la persona.

Código
  1. def calcularInteresTotal(meses,monto,tasa)
  2.  
  3. end
  4.  
  5. #--- zona de test ----
  6.  
  7. def test_calcularInteresTotal
  8. print validate(343.10, calcularInteresTotal(3,1000.00,10.0))
  9.    print validate(85.13, calcularInteresTotal(5,130.00,10.0))
  10.    print validate(182.40, calcularInteresTotal(9,112.10,10.0))    
  11. end
  12.  
  13. def validate (expected, value)
  14. expected == value ? "." : "F"
  15. end
  16.  
  17. def test
  18.  
  19.  puts "Test de prueba del programa"
  20.  puts "---------------------------"
  21.  test_calcularInteresTotal
  22.  puts " "
  23. end
  24. test

Pregunta 2                               
Esta semana se viene desarrollando en Lima la feria gastronómica Mistura. Debido a que se prevé una mayor afluencia de público en el último fin de semana de la feria, los distintos stands que estarán participando han decidido realizar una serie de concursos con el fin de que el público pase la mayor cantidad de tiempo en sus stands. De esta manera han desarrollado un juego de tragamonedas de cinco filas para tablets (donde cada fila es un número del 0 al 9).

El resultado de la jugada es procesado por un servidor que maneja la cantidad de premios. Al servidor no se le envían los 5 números, sino que se envía un solo número de 5 dígitos que contiene cada una de las filas.

Si el número de cinco cifras contiene un cero (0), esta cifra debe eliminarse. Por ejemplo: 16802. El número resultante que entraría para el cálculo de los premios sería 1682.

Para la distribución de los premios se ha definido la siguiente lógica de juego:

•   Si la suma de los dígitos del número es mayor a 20, se le obsequia una “casaca”.
•   Si la suma de los dígitos del número está entre 10 y 20, se le obsequia una “polera”.
•   Si la suma de los dígitos del número está entre 1 y 9, se le obsequia una “taza”.

Se solicita lo siguiente:

1.   Desarrollar un subprograma que dado un número de 5 cifras, determine si el número contiene el dígito cero, si lo contiene, debe devolver el número sin ese dígito.
2.   Desarrollar un subprograma que dado un número, retorne la suma de sus dígitos.
3.   Desarrollar un subprograma que dado un número determine qué premio se debe de entregar (considerar que el número puede contener el dígito cero, por lo cual primero debe ser eliminado).

Código
  1. def numeroSinCero(numero)
  2.  
  3. end
  4.  
  5. def sumaDigitos(numero)
  6.  
  7. end
  8.  
  9. def determinarPremio(numero)
  10.  
  11. end
  12.  
  13. #--- zona de test ----
  14.  
  15.  
  16. def test_numeroSinCero
  17.    print validate(13258, numeroSinCero(13258))
  18.    print validate(1682, numeroSinCero(16802))
  19. print validate(1479, numeroSinCero(10479))
  20. print validate(14512, numeroSinCero(14512))
  21. end
  22.  
  23.  
  24. def test_sumaDigitos
  25.    print validate(19, sumaDigitos(13258))
  26.    print validate(17, sumaDigitos(1682))
  27. print validate(21, sumaDigitos(1479))
  28. print validate(13, sumaDigitos(14512))
  29. end
  30.  
  31. def test_determinarPremio
  32.    print validate("polera", determinarPremio(13258))
  33.    print validate("casaca", determinarPremio(10479))
  34. print validate("taza", determinarPremio(10231))
  35. print validate("casaca", determinarPremio(65472))
  36. end
  37.  
  38.  
  39. def validate (expected, value)
  40. expected == value ? "." : "F"
  41. end
  42.  
  43. def test
  44.  puts "Test de prueba del programa"
  45.  puts "---------------------------"
  46.  test_numeroSinCero
  47.  test_sumaDigitos
  48.  test_determinarPremio
  49.  puts " "
  50. end
  51.  
  52. test

P.D ES CON FOR, GRACIAS


Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines