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


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  calcular potencia en java?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: calcular potencia en java?  (Leído 89,428 veces)
cracken422

Desconectado Desconectado

Mensajes: 8


Ver Perfil
calcular potencia en java?
« en: 9 Julio 2012, 01:02 am »

necesito hacer un algoritmo que calcule una potencia, pidiendo al usuario que ingrese la base y luego el exponente

por ej la multiplicacion es

case 3: IOConsole.println("Ingrese el primer multipilcando");
                            a=IOConsole.readInt();
                            IOConsole.println("Ingrese el segundo multiplicando");
                            b=IOConsole.readInt();
                            resultado=op=a*b;
             IOConsole.println(a+"*"+b+"="+resultado);
                            break;

alguien tiene una idea? gracias


En línea

Ferno


Desconectado Desconectado

Mensajes: 375


Ver Perfil
Re: calcular potencia en java?
« Respuesta #1 en: 9 Julio 2012, 01:26 am »

Pensemos.

¿Qué es estrictamente la potencia de un número?
Es multiplicar ese mismo número por si mismo, cuantas veces diga el exponente.
Si vos tenes la base y el exponente que te pasan por consola, podes realizar un bucle for desde el 1 al valor correspondiente al exponente, e ir acumulando las multiplicaciones de la base.

Fuera del bucle, imprimir el acumulador.


En línea

cracken422

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: calcular potencia en java?
« Respuesta #2 en: 9 Julio 2012, 05:50 am »

lo hice de dos formas


      for(int i=1;i<n;i++)
      {
      base=base*base;
      }

      IOConsole.println("El resultado es "+base+"");

siendo n el exponente me da 2^3=16



      for(int i=1;i<=potencia;i++)
      {
      acumulador=base*base;
      IOConsole.println("El resultado es "+acumulador+"");
      }

2^3 me da 4

no veo la forma de hacer repetir la multiplicacion igual veces el numero del exponente :-/
En línea

konarr

Desconectado Desconectado

Mensajes: 65


. . .


Ver Perfil
Re: calcular potencia en java?
« Respuesta #3 en: 9 Julio 2012, 07:20 am »

:P
« Última modificación: 10 Julio 2012, 22:03 pm por konarr » En línea

  • como la heroína a través de las venas de un adicto, se envía un pulso electrónico.
Mi sitio -> The Bunker Øf konarr
IRC NO OFICIAL elhacker.net  ##elhacker
http://webchat.freenode.net/?channels=%23%23elhacker
rommel89

Desconectado Desconectado

Mensajes: 22


Ver Perfil
Re: calcular potencia en java?
« Respuesta #4 en: 9 Julio 2012, 07:36 am »

primero incluye la libreria math

import java.math;

y con la funcion de math.pow() para elevar a n potencia cualquier numero y su sintaxis es asi

math.pow(numeroAElevar,potenciaAelevar), si quiero elevar 3 al cuadrado lo aria asi

math.pow(3,2);

o

import java.math;
import java.Scanner;

Scanner leer=new Scanner(System.in);

system,.out.println("Digite el numero a elevar a n potencia");

int numero=leer.nextInt();

system.out.println("Digite la potenia");

int potencia=leer.nextInt();

int total=math.pow(numero,potencia);

System.out.println("El numero: "+numero+" elevado a la potencia: "+potencia+" es: "+total+);

nota si escribes math en minuscula el editor despues del punto te pondra en mayuscula la primera letra math=Math
En línea

cracken422

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: calcular potencia en java?
« Respuesta #5 en: 9 Julio 2012, 07:42 am »

@konnar usé tu codigo con java IOConsole y me dio 4^2=64

@rommel habia visto lo de la libreria math, pero tengo que hacerlo con ciclo for y encontre muy poco en internet
En línea

Ferno


Desconectado Desconectado

Mensajes: 375


Ver Perfil
Re: calcular potencia en java?
« Respuesta #6 en: 9 Julio 2012, 07:57 am »

Te recomiendo que agarres lápiz y papel y hagas el seguimiento del programa.
En tu primer code, supongamos que tu base es "2" y tu exponente "3" (por ende, el resultado debería ser 8).

En tu primer code, entra al for (n == 1) --> base = base*base --> 2 = 2*2 --> base == 4.
sigue en el bucle for (n == 2) --> 4 = 4*4 --> base == 16
sigue en el bucle for (n == 3) Aquí ya no entra puesto que 3 < 3 es falso.

Esto obviamente está mal.

Veamos, vos tenés tu base, tu exponente, y podés utilizar un acumulador.
Entonces, podemos inicializar nuestro acumulador antes de entrar al bucle for:

acumulador = base

Recuerda que no se debería de perder la información ni de la base, ni del exponente en ningún momento del programa (ese es tu fallo en tu primer code, sobreescribís la variable base).

Al haber inicializado, podés entrar en el bucle for sin problemas.

entra al for (n == 1) --> acumulador = acumulador*base --> 2 = 2*2 --> acumulador == 4.
sigue en el bucle for (n == 2) --> 4 = 4*2 --> acumulador == 8
sigue en el bucle for (n == 3) Aquí ya no entra puesto que 3 < 3 es falso.
Nuestro acumulador nos da el resultado correcto.

Código
  1. acumulador = base;
  2. for(int i=1;i<potencia;i++)
  3. {
  4.      acumulador=acumulador*base;
  5. }
  6.  
  7. IOConsole.println("El resultado es "+acumulador+"");
En línea

konarr

Desconectado Desconectado

Mensajes: 65


. . .


Ver Perfil
Re: calcular potencia en java?
« Respuesta #7 en: 9 Julio 2012, 08:13 am »

jejej sorry, me pasa por hacerlo a la rápida, ahora si

Código
  1. import java.io.BufferedReader;
  2. import java.io.InputStreamReader;
  3.  
  4. public class potencia{
  5.  
  6. public static void main(String[] args) throws Exception{
  7.  
  8. int resul = 1, base, exponente;
  9. short i;
  10.  
  11. System.out.print("Ingrese base: ");
  12.                base = Integer.parseInt(bf.readLine());
  13.  
  14.                System.out.print("Ingrese exponente: ");
  15.                exponente = Integer.parseInt(bf.readLine());
  16.  
  17.        for(i=1; i<=exponente; i++){
  18.  
  19.         resul = resul * base;
  20.        }
  21.  
  22.        System.out.println("resultado: " +resul);
  23. }
  24. }
  25.  
« Última modificación: 9 Julio 2012, 08:18 am por konarr » En línea

  • como la heroína a través de las venas de un adicto, se envía un pulso electrónico.
Mi sitio -> The Bunker Øf konarr
IRC NO OFICIAL elhacker.net  ##elhacker
http://webchat.freenode.net/?channels=%23%23elhacker
cracken422

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: calcular potencia en java?
« Respuesta #8 en: 10 Julio 2012, 21:27 pm »

gracias ahora calcula bien, el problema de la variable acumulador es que si quiero hacer otro calculo con potencia en el menu me da otro resultado por el mismo acumulador, pense hacer algo como
private static int funcPot(int n, int p) {
int numero = n
for(int i = 0; i < p; i++)

resultado = funcMul(numero, n), pero no entiendo bien la variable private static
En línea

konarr

Desconectado Desconectado

Mensajes: 65


. . .


Ver Perfil
Re: calcular potencia en java?
« Respuesta #9 en: 10 Julio 2012, 22:08 pm »

gracias ahora calcula bien, el problema de la variable acumulador es que si quiero hacer otro calculo con potencia en el menu me da otro resultado por el mismo acumulador, pense hacer algo como
private static int funcPot(int n, int p) {
int numero = n
for(int i = 0; i < p; i++)

resultado = funcMul(numero, n), pero no entiendo bien la variable private static

uhmm, quieres emplear metodos ?
lo que quieres hacer es que una ves ingresado la primerapotencia el programa te pregunte si deceas continuar ?
En línea

  • como la heroína a través de las venas de un adicto, se envía un pulso electrónico.
Mi sitio -> The Bunker Øf konarr
IRC NO OFICIAL elhacker.net  ##elhacker
http://webchat.freenode.net/?channels=%23%23elhacker
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Calcular potencia con una función recursiva
Programación C/C++
DickGumshoe 4 20,565 Último mensaje 8 Abril 2012, 18:24 pm
por DickGumshoe
Calcular potencia de los binarios
Unix/Unix-Like
xv0 0 2,477 Último mensaje 28 Enero 2013, 11:50 am
por xv0
programa en c++ calcular potencia
Programación C/C++
eduluis 4 6,794 Último mensaje 26 Marzo 2013, 23:57 pm
por Puntoinfinito
Calcular potencia con recursividad « 1 2 »
Programación C/C++
sora_ori 10 11,251 Último mensaje 9 Junio 2015, 00:10 am
por Regexp
(Ayuda) Calcular potencia de base x y exponente n
.NET (C#, VB.NET, ASP)
stealkiller06 5 4,626 Último mensaje 3 Noviembre 2015, 20:12 pm
por Lekim
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines