Guest User

Untitled

a guest
Jan 23rd, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.05 KB | None | 0 0
  1. program FindSmallestUnusedCardinalTest;
  2.  
  3. {$APPTYPE CONSOLE}
  4.  
  5. var
  6.     Numbers1: array [0 .. 6] of cardinal = (
  7.         9,
  8.         0,
  9.         8,
  10.         2,
  11.         7,
  12.         1,
  13.         6
  14.     ); // Smallest unused cardinal in this list is 3
  15.  
  16.     Numbers2: array [0 .. 9] of cardinal = (
  17.         9,
  18.         0,
  19.         8,
  20.         1,
  21.         7,
  22.         2,
  23.         6,
  24.         3,
  25.         5,
  26.         4
  27.     ); // Smallest unused cardinal in this list is 10
  28.  
  29. function FindSmallestUnusedCardinal(const aArray: array of cardinal): cardinal;
  30. var
  31.     i: integer;
  32. begin
  33.     Result := 0;
  34.  
  35.     while (True) do
  36.     begin
  37.         for i := 0 to Length(aArray) - 1 do
  38.         begin
  39.             if (aArray[i] = Result) then
  40.             begin
  41.                 Inc(Result);
  42.                 Break;
  43.             end;
  44.         end;
  45.         if (i = Length(aArray)) then
  46.             Break;
  47.     end;
  48. end;
  49.  
  50. begin
  51.     WriteLn('Found: ', FindSmallestUnusedCardinal(Numbers1));
  52.     WriteLn('Found: ', FindSmallestUnusedCardinal(Numbers2));
  53.     ReadLn;
  54. end.
Add Comment
Please, Sign In to add comment