Elevamento a potenza

Da Gambas-it.org - Wikipedia.

Per effettuare l'elevamento a potenza di un numero, è possibile utilizzare alcune modalità. [nota 1]


Uso dell'operatore ^

Molto brevemente ed agevolmente si potrà utilizzare l'operatore ^ , come segue:

Public Sub Main()

  Dim i As Integer

' Effettua l'elevamento a potenza: 34
  i = 3 ^ 4

  Print i

End


Uso di specifici algoritmi

Si potrà utilizzare del codice più complesso. Ad esempio:

Public Sub Main()

  Dim b, e As Integer
  Dim ris As Integer = 1
 
  b = 3
  e = 4
 
  While (e)
    If e And 1 Then
      ris = ris * b
      e = e - 1
    Endif
    b = b * b
    e = e / 2
  Wend
   
  Print "Risultato = "; ris

End

oppure il seguente capace di operare su valori in virgola mobile:

Public Sub Main()
 
  Dim f As Float
 
  f = Potenza(3.75, 3)
  
  Print f
  
End


Private Function Potenza(base As Float, esponente As Byte) As Float
 
  Dim pot As Float
  
  If esponente = 0 Then Return 1
   
  pot = base
  
  While esponente > 1
    Dec esponente
    pot *= base
  Wend
    
  Return pot
   
End


Note

[1] In vero, è possibile utilizzare anche la funzione pow() della libreria condivisa esterna libm.so