Autor Tema: Revision y duda Ejercicio CU00644B potencia con bucle for java  (Leído 6444 veces)

Zikem10

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 26
    • Ver Perfil
Buen dia, basandome en el programa ejemplo pude  sacar el programa pero mi duda es que real mente no entendi la parte de como es que la variable "n" realiza la potencia usando la sentencia eta funcionando, se que i=1 es la inicializacion osea que apartir de ese numero es valido y que debe cumpir la funcion de que n debe de cumplir la condicion de que sea mayoro igual a 1, pero la parte de i++ no la entiendo.
Gracias
 
       
        for (int i=1; i<=n; i++) {

            resultado = (resultado *10);           

        }




Código: [Seleccionar]
//Programa Mutiplicador dices
//Hecho por Osvaldo Maciel Julio 24 2014

public class MultiplicadorDieces {

//Constructor

     public MultiplicadorDieces () {

        //Nada que declarar

    }

    //Método para calcular la potencia

    public double multiplicarPorDieces (double m, int n) {

        double resultado = 1;
       
       
        for (int i=1; i<=n; i++) {

            resultado = (resultado *10);           

        }

        return resultado*m;

    } //Cierre del método

 

} //Cierre de la clase
 

« Última modificación: 31 de Agosto 2014, 18:48 por Alex Rodríguez »

Jorge lopez

  • Sniper
  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 248
  • @SniperOfElite
    • Ver Perfil
Re:Revision y duda Ejercicio CU00644B
« Respuesta #1 en: 25 de Julio 2014, 04:17 »
 Los operadores  (++ y --) son operadores que nos permiten aumentar o reducir en una unidad el valor de una variable, se pueden declarar antes de la variable (++i) o después de esta (i++) pero esto afecta el comportamiento de incremento o reducción de la variable.

un ejemplo con una fracción de tu código seria el siguiente:
Código: [Seleccionar]
public double multiplicarPorDieces (double m, int n) {

        double resultado = 1;
       
       
        for (int i=1; i<=n; i++) {

            resultado = (resultado *10);           

        }

        return resultado*m;

Porque "n" realiza la potencia??  porque cuando dices i<=n le estas diciendo al bucle for,  que se mantenga realizando ciclos(dando vueltas, rondas, ext.) mientras que "i" sea menor o igual que "n" osea, que  lo que este dentro de las llaves{...} se dejara de realizar cuando "i" sea igual al valor de "n".

 Si "i" tiene un valor inicial de 1, como es que alcanza el valor de "n" que vale 2 ??    aquí es donde entra el ++, en el primer ciclo del bucle for "i" valdría 1 y con la sentencia i++ le decimos que a partir del próximo ciclo comience a sumarle 1 a "i" , si la sentencia fuera ++i se estaría indicando que se le sume 1 a "i" desde el primer ciclo, lo que seria conflictivo en esta situación porque el bucle solo completaría un ciclo y no los 2 ciclos que necesitamos. Si no se incluyera la sentencia i++ en el bucle, tendríamos lo que se conoce como un bucle sin salida o bucle infinito.

Cada ciclo afecta la instrucción que aya dentro de las llaves, en este caso como "i" igualo el valor de "n" que es 2, las instrucciones dentro de las llaves recibieron 2 ciclos.

En el primer ciclo: resultado = (resultado(1)*10) resultado = 10
(resultado toma el valor de 10 para el próximo ciclo).

 En el segundo ciclo: resultado = (resultado(10)*10) resultado = 100. Para la sentencia return resultado*m;  resultado tiene un valor de 100, por tanto 100*2.55 = 255.

en resumen: "i" seria un contador que detiene o da salida a el bucle for  al igualar el valor de "n" (exponente)  y resultado multiplicara por 10 su valor tantas veces como ciclos se realicen.

Espero que lo ayas captado.
Salu2!
while(estesVivo)
{
  aprende();
  ayuda();
  enseña();
}
if(mueres){teRecordaran();}

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".