Autor
|
Tema: Ejercicio elevar una potencia (Leído 22,240 veces)
|
SXF
|
Buenas se propone un ejercicio que utilizando el ciclo do while, nos pida un numero y luego la potencia , y obtener el resultado.
OjO el ejercicio a de estar hecho en c++.
|
|
« Última modificación: 19 Abril 2011, 15:08 pm por SXF »
|
En línea
|
|
|
|
criskapunk
Desconectado
Mensajes: 277
|
Te doy una idea, despues te toca traducirlo a C++ Sabemos que una potenciacion es un conjunto de multiplicaciones. Ejemplo: 2 ** 3 = 2 x 2 x 2. Usando algun contador, planteamos la condicion del bucle, el cual debe repetirse n veces (El valor que se le asigno al exponente). Ya dentro del bucle, usando un acumulador multiplicamos al valor de la base por el exponente. Espero que me hayas entendido Un saludo
|
|
|
En línea
|
|
|
|
SXF
|
Cierto aqui esta traducido a c++, claro esta antes de que contestaras .Por cierto la idea que has planteado esta bien pero no has tenido en cuenta los erros, como si alguien decidiera poner 0^-1 = 1/0...Asi que la respuesta no esta del todo bien. #include<iostream> #include<stdio.h> #include<conio.h> //Ejemplo de elevar potencia sin utilizar Funciones Recurcivas using namespace std; int calculadora( int n, int m) { int i=0,result=1; if (m==1 || m==-1) {return n;} else { do { i=i+1; result=result*n; }while(i!=m); return result; } } int main() { int n,m; cout<<"Dime un numero: "<<" "<<endl; cin>>n; cout<<"Dime su potencia: "<<" "<<endl; cin>>m; if(m==0) cout<<"El resultado es: 1"<<endl; else{ if (m==-1 && n==0) {cout<<"Error 1/0 es un indeterminacion y no tiene solucion"<<endl;} else{ if (m==-1) {cout<<"El resultado es: 1/"<<calculadora(n,m)<<endl;} else{ cout<<"El resultado es: "<<" "<<calculadora(n,m)<<endl;} } } system("PAUSE"); return 0; }
|
|
« Última modificación: 19 Abril 2011, 17:17 pm por SXF »
|
En línea
|
|
|
|
Lx
Desconectado
Mensajes: 12
|
#include <stdlib.h> #include <stdio.h> int potencia( int n, int e); int main() { float res; printf("\nIngrese un n%cmero: ", 163); printf("\nIngrese el exponente (entero): "); res = (float)potencia ( num , abs(exp)); res = 1./res; printf("\n\nEl resultado de %d a la %d, es: ", num , exp); if( num == 0 && exp <= 0) else printf("\n\nPresione ENTER para salir . . ."); return EXIT_SUCCESS; } int potencia( int n, int e) { int r = 1; for( int i = 1; i <= e; i++){ r *= n; } return r; }
|
|
|
En línea
|
|
|
|
.mokk.
Desconectado
Mensajes: 177
|
Aqui esta el mio usando solo sumas #include <cstdlib> #include <iostream> using namespace std; int potencia(int n, int p) { int v = 1,t = 0; for(int i = 0; i < p; i++) { for(int x = 0; x < v; x++) { t += n; } v = t; t = 0; } return v; } int main(int argc, char *argv[]) { int n = 0,p = 0; cout << "Ingresa Numero: "; cin >> n; cout << "Potencia: "; cin >> p; cout << potencia(n, p) << endl; cin; return EXIT_SUCCESS; }
|
|
|
En línea
|
|
|
|
landerzx
Desconectado
Mensajes: 56
|
hola amigo.......yo a los tiempos que vuelvo al foro..... bueno aqui esta el codigo espero que sea muy sencillo de analizar
#include<iostream.h> #include<conio.h> int matematico(int B,int P) { int retorna=1; for(int c;c<P;c++) retorna*=B; return retorna; } main() { unsigned int b,p; cout<<"Ingrese la base: "; cin>>b; cout<<"Ingrese la potencia: "; cin>>p; cout<<"La respuesta es: "<<matematico(b,p); getch(); }
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Elevar a cualquier potencia. [Batch]
Scripting
|
leogtz
|
2
|
11,088
|
9 Abril 2009, 23:34 pm
por leogtz
|
|
|
[Python][Ejercicio (por y para novatos)] Función para elevar potencia
Python
|
kerith
|
7
|
19,731
|
2 Enero 2011, 14:10 pm
por kerith
|
|
|
Elevar un número a una potencia en C
« 1 2 »
Programación C/C++
|
eaguel
|
13
|
62,240
|
13 Mayo 2019, 23:58 pm
por aramis
|
|
|
Como elevar una potencia en C
Programación C/C++
|
ERIK546
|
4
|
4,196
|
6 Febrero 2014, 00:29 am
por Yoel Alejandro
|
|
|
duda sobre elevar la potencia sin usar la multiplicación?
Programación C/C++
|
jorge.esquibel
|
1
|
2,016
|
18 Septiembre 2018, 23:14 pm
por MAFUS
|
|