Naredna: Testiranje programa Gore: Faktorijel Prethodna: Specifikacija   Sadržaj


Pseudokod programa

Na osnovu definicije faktorijela, važi da je

 faktorijel(0) = 1.
 faktorijel(x) = 1 * 2 *...* (x-1) * x , x > 0. 

Pored promenljive x za koju računamo faktorijel i promenljive y u kojoj ćemo smeštati međurezultate i konačan rezultat našeg programa, potrebno je da imamo i jednu pomoćnu promenljivu, nazovimo je z, u kojoj ćemo čuvati informaciju dokle smo sa izračunavanjem faktorijela stigli. Program treba da prođe sledeće korake tokom izvršavanja:

{x ≥ 0}
Korak 1: Pomoćnu promenljivu z inicijalno postaviti na 0, a y na 1.
Korak 2: Promenljivu z uvećati za jedan.
Korak 3: Promenljivu y pomnožiti sa vrednošću promenljive z.
Korak 4: Ukoliko je z različito od x, onda se vratiti na korak 2 
	   a inače završiti program.
{y = faktorijel(x)}

Na paskalolikom jeziku program može da se napiše na sledeći način:

{x ≥ 0} 
    y = 1;
    z = 0;
    while (z ≠ x)  
        begin 
            z = z + 1;
            y = y * z;
        end 
{y = faktorijel(x)}

Pitanje koje se sada postavlja je da li je ovaj program ispravan? Da li on zaista računa faktorijel prirodnog broja?





Naredna: Testiranje programa Gore: Faktorijel Prethodna: Specifikacija   Sadržaj