>> Home >> Algoritmy >> Java: Sigma (n)

 

Java: Sigma (n)

 

Sigma(n) je funkce, u které se výsledek rovná součtu všech kladných dělitelů, včetně čísla jedna a čísla samotného. V tomto článku si ukážeme, jak je snadné zapsat v Javě algoritmus pro vypočítání funkce Sigma(n) - jedná se o opravdu primitivní algoritmus.

Funkce Sigma(n) má kolem sebe několik pozoruhodných věcí. Mezi nejzajímavější patří asi její vztah k Riemannově funkci zeta, která je v dnešní době jedním z nejdůležitějších matematických problémů tisíciletí.

Tato funkce je opravdu velice snadná. Napsání algoritmu je asi tak složité, jako naprogramování aplikace "Hallo World!". Následující obrázek z wikipedie ukazuje, jak vypadá vzorec funkce Sigma(n).

funkce Sigma

Zde je také nějaký příklad:

Sigma(15) = 4

Sigma(15) se rovná čtyřem, protože číslo 15 má 4 kladné dělitele, které jsou celými čísly a jsou větší než nula. U čísla 15 konkrétně 1, 3, 5 a 15.

Implementace do Javy:

 

    public static int sigma(int cislo) {
        int pocet = 0;
        for(int i = 1;i <= cislo;i++) {
            if((cislo % i) == 0)
                pocet++;
        }
        return pocet;
    }

 

Vytvořili jsme si statickou metodu, která vrací celé číslo datového typu int. Dále máme v naší metodě cyklus, který běží od jedné až do hodnoty našeho vstupního čísla. V cyklu testujeme, jestli je zbytek po dělení vstupního čísla a dané hodnoty i roven nule. Pokud ano, tak se přičte do proměnné pocet a na konci cyklu proměnnou pocet vracíme.

 

pridej.cz Přidat.eu záložku

 

Diskuze k článku


 

Zatím žádné komentáže k tomuto článku.

 

Přidat nový komentář