Differenze tra le versioni di "Elevamento a potenza"
Da Gambas-it.org - Wikipedia.
(9 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
− | Per effettuare l'<I>elevamento a potenza</i> di un numero, è possibile utilizzare | + | Per effettuare l'<I>elevamento a potenza</i> di un numero, è possibile utilizzare alcune modalità. |
− | + | ===Uso dell'operatore '''^''' === | |
− | ===Uso | + | Molto brevemente ed agevolmente si potrà utilizzare l'operatore '''^''' , come segue: |
− | Molto brevemente ed agevolmente si potrà utilizzare | + | Public Sub Main() |
− | |||
− | + | Dim i As Integer | |
− | i = 3 <FONT Color= | + | <FONT Color=gray>' ''Effettua l'elevamento a potenza: <B>3<SUP>4</sup></b>''</font> |
+ | i = 3 <FONT Color=red><B>^</b></font> 4 | ||
Print i | Print i | ||
− | + | End | |
− | + | ===Uso di specifici algoritmi=== | |
− | ===Uso di | + | Si potrà utilizzare del codice più complesso. |
− | Si potrà utilizzare del codice più complesso. Ad esempio: | + | <BR>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 | ||
− | = | + | ===Uso della funzione esterna "pow()"=== |
− | + | E' anche possibile utilizzare anche [[Pow()|la funzione "pow()"]] della libreria condivisa esterna ''libm.so'' |
Versione attuale delle 07:49, 1 nov 2024
Per effettuare l'elevamento a potenza di un numero, è possibile utilizzare alcune modalità.
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
Uso della funzione esterna "pow()"
E' anche possibile utilizzare anche la funzione "pow()" della libreria condivisa esterna libm.so