Advertisement
Guest User

Untitled

a guest
Jul 28th, 2013
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.19 KB | None | 0 0
  1. function calculate(n:Integer): Integer;
  2. var
  3.   square:Extended;
  4.   isquare,candidate: Integer;
  5. begin
  6.   square := Sqrt(n);
  7.   isquare := Floor(square);
  8.   if (isquare = square) then
  9.     Result := -1
  10.   else
  11.     Result := 0;
  12.  
  13.   for candidate := 1 to isquare do
  14.   begin
  15.     if (n mod candidate) = 0 then
  16.         Result := Result + 2;
  17.   end;
  18. end;
  19.  
  20. var
  21.   triangle, index,t: Integer;
  22. begin
  23.   t := GetSystemTime();
  24.   triangle := 1;
  25.   index := 1;
  26.   while calculate(triangle) < 1001 do
  27.   begin
  28.     Inc(index);
  29.     triangle := triangle + index;
  30.   end;
  31.   WriteLn((GetSystemTime()-t)/1000);
  32.   WriteLn(triangle);
  33. end.  
  34.  
  35.  
  36. #------------------------ Subset thingy: ------------------------------#
  37. function calculate(n)
  38. begin
  39.   square := Sqrt(n);
  40.   isquare := floor(square);
  41.   if (isquare == square) then
  42.     Result := -1  
  43.   else do
  44.     Result := 0;
  45.   end
  46.  
  47.   for candidate := 1 to isquare do
  48.     if (n % candidate) == 0 then
  49.         Result += 2;
  50.     end;
  51.   end;
  52. end;
  53.  
  54.  
  55. begin
  56.   t := GetSystemTime();
  57.   triangle := 1;
  58.   index := 1;
  59.   while calculate(triangle) < 1001 do
  60.     Inc(index);
  61.     triangle += index;
  62.   end;
  63.   WriteLn((GetSystemTime()-t)/1000);
  64.   WriteLn(triangle);
  65. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement