LENGUAJES DE PROGRAMACIÓN  
 
 
FreePascal

PASCAL CON FREE PASCAL

 
 

 

3.7. Potencia de números.

 

anterior :: indice :: siguiente

 

En los compiladores Pascal tradicionales, nunca existió un operador para realizar los cálculos de llevar un número dado a una potencia dada. En su defecto se usaban las funciones Exp y LN, la función Exp(valor), calcula la potencia del número neperiano, elevado al “valor” indicado; y la función LN(valor), el logaritmo neperiano de “valor”. Para hallar la potencia se hace uso de las funciones mencionadas de la siguiente manera:

 

            4-----> Exponente

          2------> Base

 

          r:=Exp(LN(Base)*Exponente);

 

En donde la variable r debe ser de un tipo de dato real. Se pueden usar, en el exponente y la base, tipos de datos enteros, pero las funciones Exp y LN, siempre devolverán un tipo de dato real. A continuación un ejemplo:

 

 
{$codepage UTF8}

VAR
  r,expp,n:Double;
  base,exponente:integer;

BEGIN
  Write('Ingrese un exponente para potenciar el numero neperiano :');Readln(expp);
  r:=Exp(expp);
  Writeln('La potencia del numero Neperiano elevado a ',expp:5:3,' es : ',r:5:3);
  Write('Ingrese un numero para calcular su logaritmmo neperiano : ');Readln(n);
  r:=LN(n);
  Writeln('Su logaritmo Neperiano es : ',r:5:3);
  Write('Ingrese Base : ');Readln(base);
  Write('Ingrese Exponente : ');Readln(exponente);
  r:=Exp(LN(base)*exponente);
  Writeln(base,'elevado a ',exponente,' es ',r:5:3);
  Readln
END.
 

Código fuente 11: Ejemplo del uso de las funciones Exp y LN.

 

Lo explicado anteriormente sería el método tradicional, pero a cambio de ese método, se puede hacer usó del operador **, que se encuentra en la unidad llamada math. Para usar el operador **, necesitamos usar la palabra reservada uses, en nuestro programa, del siguiente modo: Uses math;. La palabra reservada uses, nos sirve para indicarle al programa que unidades se están usando, a continuación un ejemplo del uso del operador **.

 

 
{$codepage UTF8}

USES math;

VAR
  base,exponente : double;
  r : double;

BEGIN
  Writeln('Usando unidad math');
  Write('Ingrese Base : ');Readln(base);
  Write('Ingrese Exponente : ');Readln(exponente);
  r:=base ** exponente;
  Writeln(base:2:2,'elevado a ',exponente:2:2,' es ',r:5:3);
END.
 

Código fuente 12: Ejemplo del uso de los operadores **.

 

El operador ** opera con dos variables o datos, que pueden ser real o entero, que serían la base y el exponente, el primer dato o variable, es la base y el segundo el exponente.

 

anterior :: indice :: siguiente

 

 
 

  SUGERENCIAS