Ya logré resolverlo, gracias. :)
Si un moderador ve este, por favor cierre el tema. n.n
n2 es siempre una potencia de 10?
Si es asi esto sugiero:
- Sumar la mitad de n2 a n1
- Calcular el resto de la division entre n1 y n2 usando el modulo
- Restarle ese resto a n1
1424, 10:
- 1424 + 5 = 1429
- 1429 % 10 = 9
- 1429 - 9 = 1420
2636, 100:
- 2636 + 50 = 2686
- 2686 % 100 = 86
- 2686 - 86 = 2600
Cita de: CalgaryCorpus en 22 Julio 2014, 20:57 PM
n2 es siempre una potencia de 10?
Si es asi esto sugiero:
- Sumar la mitad de n2 a n1
- Calcular el resto de la division entre n1 y n2 usando el modulo
- Restarle ese resto a n1
1424, 10:
- 1424 + 5 = 1429
- 1429 % 10 = 9
- 1429 - 9 = 1420
2636, 100:
- 2636 + 50 = 2686
- 2686 % 100 = 86
- 2686 - 86 = 2600
Hehe no, error mío. En el segundo ejemplo es 100, no 10.
Cita de: Zodiak98 en 22 Julio 2014, 21:18 PM
Hehe no, error mío. En el segundo ejemplo es 100, no 10.
Yo creo que con la solución que propuso
CalgaryCorpus es mas que suficiente si asumimos que
n2 siempre es potencia de 10 cosa que aun no has aclarado.
Ojo que Redondeo != Truncado, por lo que la suma de n2 / 2 es importante
Para que no se diga :rolleyes: que no hay más opciones :o mi propuesta :silbar: :
n1 = ( n1 % 100 ) < 50 ? 100 * ( n1 / 100 ) : 100 + 100 * ( n1 / 100 ) ;
donde 100 se puede sustituir por n2 supuesta potencia de 10:
n1 = ( n1 % n2 ) < n2 / 2 ? n2 * ( n1 / n2 ) : n2 + n2 * ( n1 / n2 ) ;
¡¡¡¡ Saluditos! ..... !!!!
(http://st.forocoches.com/foro/images/smilies/simba1.gif)
Cita de: Zodiak98 en 22 Julio 2014, 20:26 PM
Ya logré resolverlo, gracias. :)
Si un moderador ve este, por favor cierre el tema. n.n
no destruyas el tema, deja la pregunta como estaba en lugar de que alguien más se interese en algo similar y usa el boton para marcar el tema como resuelto
Cita de: engel lex en 23 Julio 2014, 08:08 AM
no destruyas el tema, deja la pregunta como estaba en lugar de que alguien más se interese en algo similar y usa el boton para marcar el tema como resuelto
Totalmente de acuerdo y además no dice cómo logro resolverlo por si a otros usuarios le puede resultar útil.
Ante tanto desdén respondo con otra opción:
n1 = ( ( n1 + n2 / 2 ) / n2 > ( n1 / n2 ) ) ? ( n1 / n2 ) * n2 + n2 : ( n1 / n2 ) * n2 ;
¡¡¡¡ Saluditos! ..... !!!!
(http://st.forocoches.com/foro/images/smilies/simba2.gif)