function aprox_pi = ukol3_reseni(n)
% aprox_pi = ukol3_reseni(n)
%
% funkce vypocte obsah plochy ohranicene grafem funkce sqrt(1 - x^2), kladnym smerem osy x a osou y 
% a pomoci tohoto obsahu aproximuje cislo pi
%
% n ... pocet pokusu

body = rand(n,2); % n nahodnych bodu ve ctverci <0,1> x <0,1>

suma = 0;

for i = 1 : n
    if body(i,2) <= sqrt(1 - body(i,1)^2)
        suma = suma + 1; % bod lezi v plose ohranicene grafem funkce sqrt(1 - x^2), kladnym smerem osy x a osou y
    end
end

obsah = suma / n;

%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%% Alternativni implementace (misto radku 11-19):
%%%%%%%%%%%
%%%%%%%%%%% obsah = mean( sum(body.^2,2) <= 1 );
%%%%%%%%%%%%%%%%%%%%%%%%

aprox_pi = 4 * obsah;

% vypis vysledku
disp(['Aproximace pi: ', num2str(aprox_pi, '%.15f')])
disp(['Absolutni chyba: ', num2str(abs(aprox_pi - pi), '%.15f')])
disp(['Relativni chyba: ', num2str(100*abs(aprox_pi - pi)/pi, '%.3f'),'%'])

% konec
