Obliczanie wartości potęgi

Specyfikacja problemu:

Dane:

  • a – liczba naturalna; podstawa

  • b – liczba naturalna; wykładnik

Wynik:

  • aIndeks górny b – liczba naturalna; wynik potęgowania

Sposób iteracyjny

Linia 1. public static int iteracja otwórz nawias okrągły int a przecinek int b zamknij nawias okrągły otwórz nawias klamrowy. Linia 2. int iteracja znak równości 1 średnik. Linia 4. for otwórz nawias okrągły int i znak równości 0 średnik i otwórz nawias ostrokątny b średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy. Linia 5. iteracja asterysk znak równości a średnik. Linia 6. zamknij nawias klamrowy. Linia 8. return iteracja średnik. Linia 9. zamknij nawias klamrowy.

Sposób rekurencyjny

Linia 1. public static int rekurencja otwórz nawias okrągły int a przecinek int b zamknij nawias okrągły otwórz nawias klamrowy. Linia 2. if otwórz nawias okrągły b znak równości znak równości 0 zamknij nawias okrągły. Linia 3. return 1 średnik. Linia 4. return rekurencja otwórz nawias okrągły a przecinek b minus 1 zamknij nawias okrągły średnik. Linia 5. zamknij nawias klamrowy.

Obliczanie silni

Porównajmy również algorytmy wykorzystywane do obliczania silni podanej liczby n.

Obliczamy zatem n!.

Specyfikacja problemu:

Dane:

  • n – liczba naturalna dodatnia

Wynik:

  • silnia – liczba naturalna dodatnia;  iloczyn wszystkich liczb naturalnych od 1 do n

Sposób iteracyjny

Linia 1. public static int silnia podkreślnik iteracyjnie otwórz nawias okrągły int n zamknij nawias okrągły otwórz nawias klamrowy. Linia 2. int silnia znak równości 1 średnik. Linia 3. for otwórz nawias okrągły int i znak równości 1 średnik i otwórz nawias ostrokątny znak równości n średnik i plus plus zamknij nawias okrągły otwórz nawias klamrowy. Linia 4. silnia asterysk znak równości i średnik. Linia 5. zamknij nawias klamrowy. Linia 6. return silnia średnik. Linia 7. zamknij nawias klamrowy.

Sposób rekurencyjny

Linia 1. public static int silnia podkreślnik rekurencyjnie otwórz nawias okrągły int n zamknij nawias okrągły otwórz nawias klamrowy. Linia 2. if otwórz nawias okrągły n znak równości znak równości 0 zamknij nawias okrągły. Linia 3. return 1 średnik. Linia 4. else. Linia 5. return n asterysk silnia podkreślnik rekurencyjnie otwórz nawias okrągły n minus 1 zamknij nawias okrągły średnik. Linia 6. zamknij nawias klamrowy.

Słownik

argument funkcji
argument funkcji

element składni w określonym języku programowania, który w wyniku wywołania podprogramu zostaje utożsamiony (skojarzony) z określonym parametrem podprogramu; wartość przekazana do parametru funkcji;

przykład:

Linia 1. public class Main otwórz nawias klamrowy. Linia 2. static double potega otwórz nawias okrągły double podstawa przecinek int wykladnik zamknij nawias okrągły otwórz nawias klamrowy. Linia 3. if otwórz nawias okrągły wykladnik znak równości znak równości 0 zamknij nawias okrągły otwórz nawias klamrowy. Linia 4. return 1 średnik. Linia 5. zamknij nawias klamrowy else otwórz nawias klamrowy. Linia 6. return podstawa asterysk potega otwórz nawias okrągły podstawa przecinek wykladnik minus 1 zamknij nawias okrągły średnik. Linia 7. zamknij nawias klamrowy. Linia 8. zamknij nawias klamrowy. Linia 10. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy. Linia 11. System kropka out kropka print otwórz nawias okrągły potega otwórz nawias okrągły 2 kropka 5 przecinek 2 zamknij nawias okrągły zamknij nawias okrągły średnik. Linia 12. zamknij nawias klamrowy. Linia 13. zamknij nawias klamrowy.

argumentem funkcji są wartości 2.5 oraz 2 (wiersz 11)

iteracja
iteracja

powtarzanie tej samej operacji określoną liczbę razy lub do momentu, w którym zadany warunek zostanie spełniony

parametr funkcji
parametr funkcji

element składni w określonym języku programowania; umożliwia komunikację  między podprogramem (funkcją) wywołanym a programem wywołującym; parametry określa się w nagłówku podprogramu (przy jego definicji) przykład:

Linia 1. public class Main otwórz nawias klamrowy. Linia 2. static double potega otwórz nawias okrągły double podstawa przecinek int wykladnik zamknij nawias okrągły otwórz nawias klamrowy. Linia 3. if otwórz nawias okrągły wykladnik znak równości znak równości 0 zamknij nawias okrągły otwórz nawias klamrowy. Linia 4. return 1 średnik. Linia 5. zamknij nawias klamrowy else otwórz nawias klamrowy. Linia 6. return podstawa asterysk potega otwórz nawias okrągły podstawa przecinek wykladnik minus 1 zamknij nawias okrągły średnik. Linia 7. zamknij nawias klamrowy. Linia 8. zamknij nawias klamrowy. Linia 10. public static void main otwórz nawias okrągły String otwórz nawias kwadratowy zamknij nawias kwadratowy args zamknij nawias okrągły otwórz nawias klamrowy. Linia 11. System kropka out kropka print otwórz nawias okrągły potega otwórz nawias okrągły 2 kropka 5 przecinek 2 zamknij nawias okrągły zamknij nawias okrągły średnik. Linia 12. zamknij nawias klamrowy. Linia 13. zamknij nawias klamrowy.

parametrem funkcji są podstawa oraz wykladnik (wiersz 2)

rekurencja
rekurencja

proces polegający na wywoływaniu funkcji przez siebie samą do momentu rozwiązania określonego zadania

stos
stos

liniowa struktura danych, której dane są pobierane zgodnie z zasadą LIFO (dane dołączone jako ostatnie są pobierane jako pierwsze)