Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program p25;
- uses crt;
- function isThreeNonTrivialDivision( x : integer ):boolean;
- var count_div : integer;
- division : integer;
- begin
- count_div := 0;
- if( trunc(sqrt(x)) = sqrt(x) ) then
- begin
- count_div := 1;
- for division := 2 to trunc(sqrt(x)) - 1 do
- if ( x mod division = 0 ) then count_div := count_div + 2;
- if count_div = 3 then
- result := true
- else
- result := false;
- end
- else
- result := false;
- end;
- function getMaxDiv(x : integer) : integer;
- var division, max_div : integer;
- begin
- for division := 2 to x - 1 do
- if ( x mod division = 0 ) then
- begin
- max_div := x div division;
- break;
- end;
- result := max_div;
- end;
- procedure solution(x_start, x_end : integer);
- var x : integer;
- begin
- for x := x_start to x_end do begin
- if isThreeNonTrivialDivision(x) then
- writeln('x = ', x,' : макс. делитель = ', getMaxDiv(x));
- end;
- end;
- var a : integer;
- b : integer;
- begin
- a := 3;
- b := 30;
- solution(a, b);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement