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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  ayuda con estos ejercicios
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ayuda con estos ejercicios  (Leído 2,113 veces)
gvsaxl

Desconectado Desconectado

Mensajes: 2


Ver Perfil
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




« Última modificación: 30 Septiembre 2015, 12:57 pm por Eleкtro » En línea

gvsaxl

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: ayuda con estos ejercicios
« Respuesta #1 en: 30 Septiembre 2015, 06:05 am »

me falto, es con ruby, gracias


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ayuda con estos dos ejercicios!!!Son mu simples...
Ejercicios
robe22 6 5,892 Último mensaje 13 Noviembre 2005, 03:23 am
por Hadess_inf
ayuda con estos ejercicios
Ingeniería Inversa
jgilberto 2 4,305 Último mensaje 2 Agosto 2009, 00:23 am
por tena
Ayuda con estos ejercicios
Programación C/C++
shibu 0 3,186 Último mensaje 8 Abril 2012, 03:55 am
por shibu
MOVIDO: ayuda con estos ejercicios
Programación General
Eleкtro 0 1,786 Último mensaje 30 Septiembre 2015, 09:57 am
por Eleкtro
Necesito ayuda con estos ejercicios de batch
Scripting
cesar1712 1 2,155 Último mensaje 12 Mayo 2016, 09:05 am
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines