Zenbaki jakin bat lehena ote den erabakitzen duen funtzioa hau litzateke:
FUNCTION fnboLehenaDa(iZenbakia: Integer): Boolean ;
VAR
boLehenaDa : Boolean ;
k : Integer ;
BEGIN
boLehenaDa := TRUE ;
k := 2 ; (* 1 eta iZenbakia kopuruak ez ditugu aintzat hartuko *)
WHILE (k <= iZenbakia-1) AND boLehenaDa DO
BEGIN
IF iZenbakia MOD k = 0 THEN
BEGIN
WriteLn(' ZATIGARRIA iZenbakia MOD k = 0', ' k = ', k) ;
boLehenaDa := FALSE (* iZenbakia kopurua zatigarria dela *)
END (* jakitean WHILE-DO begiztatik irten, *)
ELSE (* bestela jarraitu k inkrementatuz. *)
BEGIN
WriteLn('MOMENTUZ LEHENA iZenbakia MOD k <> 0', ' k = ', k) ;
k := k + 1 ; (* Hurrengoa aztertu edo WHILE amaitu. *)
END ;
END ;
fnboLehenaDa := boLehenaDa ;
END ;
iruzkinik ez:
Argitaratu iruzkina