ayuda con visual basic.net

Bueno la cosas es esta nesesito sacar la potencia de un numero sin usar el operador ^ lo estoy intentando con un FOR y no e podido mañana tengo examen y esa fue una de los programas que nos pucieron a hacer en el examen final aver si me pueden aydar Saludos.

Dim num1 As Integer
Dim num2 as Integer
Dim resp As Integer
Dim con As Integer
Dim resp2 As Integer
write("Ingrese un numero")
num2 = Readline()
write("Dime que potencia quieres")
num1 = Readline()

For con = num1 To 0 Step -1
resp=num1*num1
resp=resp*num1
If con = 0 Then
write(resp)
End If
Next con
End Sub

Esto es lo que ago con el for, pero no entiendo como hacerle para que el valor que se salve en la RESP se multiplique por el NUM1 hasta que termine el ciclo y al final me de el valor que quiero supongo que el chiste esta en crear otro FOR pero no tengo idea.
No me he parado a analizarlo mucho pero...
te has fijado q la variable NUM2 no la usas? La num1 me parece bien q la uses para el contador del FOR, pero dentro de este, quiza q uses la NUM2 q es el numero q hay q elevar, no?

Por otra parte, dentro del for, haces una doble elevacion, pq haces
resp=num1*num1
resp=resp*num1
y aparte siempre te cargas el valor anterior de resp.

Espero q me entiendas :p

EDIT: Me acabo de fijar en la hora de tu post, asi q supongo q llego tarde, sorry :p
eduardoacc escribió:Bueno la cosas es esta nesesito sacar la potencia de un numero sin usar el operador ^ lo estoy intentando con un FOR y no e podido mañana tengo examen y esa fue una de los programas que nos pucieron a hacer en el examen final aver si me pueden aydar Saludos.

Dim num1 As Integer
Dim num2 as Integer
Dim resp As Integer
Dim con As Integer
Dim resp2 As Integer
write("Ingrese un numero")
num2 = Readline()
write("Dime que potencia quieres")
num1 = Readline()

For con = num1 To 0 Step -1
resp=num1*num1
resp=resp*num1
If con = 0 Then
write(resp)
End If
Next con
End Sub

Esto es lo que ago con el for, pero no entiendo como hacerle para que el valor que se salve en la RESP se multiplique por el NUM1 hasta que termine el ciclo y al final me de el valor que quiero supongo que el chiste esta en crear otro FOR pero no tengo idea.


te fusilo el codigo, ok?

Dim num1 As Integer
Dim num2 as Integer
Dim resp As Integer
Dim i As Integer
Dim resp2 As Integer
write("Ingrese un numero")
num2 = Readline()
write("Dime que potencia quieres")
num1 = Readline()
resp=num2
For i = 1 To num1
resp=resp*num2
Next i
write(resp)


no, si al final va a ser verdad eso que el visual basic destroza las mentes... diox, que batiburrillo de codigo...
te fusilo el codigo, ok?
Dim num1 As Integer
Dim num2 as Integer
Dim resp As Integer
Dim i As Integer
Dim resp2 As Integer
write("Ingrese un numero")
num2 = Readline()
write("Dime que potencia quieres")
num1 = Readline()
resp=num2
For i = 1 To num1
resp=resp*num2
Next i
write(resp)


Ese codigo no obtiene la potencia de un numero para sacar la potencia de un numero se hace esto:
Por ejemplo la potencia de 5^5
5*5*5*5*5 donde el resultado es: 3125
si ago lo mismo con el codigo que me diste el resultado es:15625

Por lo tanto veo que el error se corrige cambiando la linea del conteo del FOR
e cambiado este For i = 1 To num1
por este For i = num1 To 1 step-1

De todos modos muchas gracias a los dos [ok]
Y ya pueden cerrar el hilo .
numero = numero.pow(2, 2)(2 elevado a 2) y ya esta, eso usando la clase math,xD

Que perro soy
Para hacer potencias lo mejor ke se puede hacer es usar la combinación de la exponencial con el logaritmo neperaino:

x=exp(n*log(y)) y asi se calcularia y elevado a n.
Recomendado por los profes de mates.
5 respuestas