Eugeniusz Jakubas
programy źródłowe w Pascalu

Stąd można pobrać teksty źródłowe poniższych 57 programów w Pascalu pr-pascal.zip - 34 kB

4. Dywan Ulama

program Dywan_Ulama;
uses graph;
var karta,tryb,pozX,pozY,D:integer;
    liczba,i:longInt;
procedure sprawdzenie;
var k,spr:longInt;
begin
  k:=1;
  spr:=1;
  repeat
    k:=k+1;
    if liczba mod k=0 then spr:=0;
   until (liczba mod k=0) or (k>sqrt(liczba));
   if spr=1 then putPixel(pozX,pozY,white);
end;
begin
   karta:=detect; initGraph(karta,tryb,'');
   liczba:=1; pozX:=320; pozY:=240; D:=0;
   repeat
      D:=D+2;
      for i:=1 to D do
      begin
        liczba:=liczba+1; pozY:=pozY-1; sprawdzenie;
      end;
      for i:=1 to D do
      begin
        liczba:=liczba+1; pozX:=pozX-1; sprawdzenie;
      end;
      for i:=1 to D do
      begin
        liczba:=liczba+1; pozY:=pozY+1; sprawdzenie;
      end;
      for i:=1 to D do
      begin
        liczba:=liczba+1; pozX:=pozX+1; sprawdzenie;
      end;
      pozX:=pozX+1; pozY:=pozY+1;
   until liczba>576000;
   readLn; closeGraph;
end.