Oggi scriveremo una funzione chiamata numberToPower
che accetterà due interi, number
e power
, come input. L’ennesima o l’esponente è power
. C’è una fregatura però, risolveremo questo problema senza l’aiuto di alcuna funzione Math integrata. Possiamo usare sia il ciclo while che il ciclo for per risolvere questo problema. Guardiamo prima il ciclo for.
La soluzione del ciclo for
Quando prendiamo un numero e lo eleviamo all’ennesima potenza, stiamo moltiplicando il numero per se stesso n volte.
Come facciamo a moltiplicare un numero per se stesso? Lasciando la variabile total
uguale a 1
, questa variabile ci aiuterà a moltiplicare number
per se stesso. Moltiplichiamo number * 1
un certo numero di volte (potenza) e moltiplicando il risultato per total
ogni volta.
function numberToPower(number, power){
let total = 1;
for (let i = 1; i <= power; i++) {
total = total * number;
}
return total;
}
Al termine del ciclo, restituiamo il totale.
La soluzione del ciclo while
La soluzione del ciclo while fa la stessa cosa con l’eccezione che terminiamo il ciclo quando decrementiamo power
fino a 0 dopo ogni ciclo.
function numberToPower(number, power){
let total = 1;
while(power > 0){
total *= number;
power--;
}
return total;
}
Anche se è probabilmente meglio usare le funzioni Math integrate per restituire la potenza di un numero specialmente se l’esponente è una frazione, lo scopo della funzione è di non dipendere dalle funzioni integrate. Potreste trovarvi ad imparare un altro linguaggio di programmazione che potrebbe non avere tutte le funzioni integrate che JavaScript ha. Dovrete aggirare il problema risolvendolo manualmente.