program ideone;
{$MODE OBJFPC}{$LONGSTRINGS ON}
function IsPrimeNumber(ANumber: Integer): Boolean;
var
LDivider: Integer = 2;
begin
while (ANumber > LDivider) and (ANumber mod LDivider <> 0) do
LDivider += 1;
Result := ANumber = LDivider;
end;
function PrimeNumberByIndex(AIndex: Integer): Integer;
begin
Result := 1;
while AIndex >= 0 do
begin
Result += 1;
while not IsPrimeNumber(Result) do
Result += 1;
AIndex -= 1;
end;
end;
var
LIndex: Integer = 0;
begin
while LIndex < 20 do
begin
WriteLn(LIndex:2, ' - ', PrimeNumberByIndex(LIndex));
LIndex += 1;
end;
end.
cHJvZ3JhbSBpZGVvbmU7Cgp7JE1PREUgT0JKRlBDfXskTE9OR1NUUklOR1MgT059CgogIGZ1bmN0aW9uIElzUHJpbWVOdW1iZXIoQU51bWJlcjogSW50ZWdlcik6IEJvb2xlYW47CiAgdmFyCiAgICBMRGl2aWRlcjogSW50ZWdlciA9IDI7CiAgYmVnaW4KICAgIHdoaWxlIChBTnVtYmVyID4gTERpdmlkZXIpIGFuZCAoQU51bWJlciBtb2QgTERpdmlkZXIgPD4gMCkgZG8KICAgICAgTERpdmlkZXIgKz0gMTsKCiAgICBSZXN1bHQgOj0gQU51bWJlciA9IExEaXZpZGVyOwogIGVuZDsKCiAgZnVuY3Rpb24gUHJpbWVOdW1iZXJCeUluZGV4KEFJbmRleDogSW50ZWdlcik6IEludGVnZXI7CiAgYmVnaW4KICAgIFJlc3VsdCA6PSAxOwoKICAgIHdoaWxlIEFJbmRleCA+PSAwIGRvCiAgICBiZWdpbgogICAgICBSZXN1bHQgKz0gMTsKCiAgICAgIHdoaWxlIG5vdCBJc1ByaW1lTnVtYmVyKFJlc3VsdCkgZG8KICAgICAgICBSZXN1bHQgKz0gMTsKCiAgICAgIEFJbmRleCAtPSAxOwogICAgZW5kOwogIGVuZDsKCnZhcgogIExJbmRleDogSW50ZWdlciA9IDA7CmJlZ2luCiAgd2hpbGUgTEluZGV4IDwgMjAgZG8KICBiZWdpbgogICAgV3JpdGVMbihMSW5kZXg6MiwgJyAtICcsIFByaW1lTnVtYmVyQnlJbmRleChMSW5kZXgpKTsKICAgIExJbmRleCArPSAxOwogIGVuZDsKZW5kLgo=