Код:
procedure TForm1.FormPaint(Sender: TObject);
var
x,y: Integer; // для двух циклов
w,h: integer; // количество интераций по ширине и высоте.
begin
//Высчитываем количество интераций
w:=Form1.ClientWidth div 5 + 1; // Ширина / 5 + 1 (чтоб запас был)
h:=Form1.ClientHeight div 5 + 1; // Высота
for y := 0 to h do
for x := 0 to w do
Form1.Canvas.Pixels[x*5, y*5] := clBlack;
end;
Идеальный вариант, который можно осуществить через канву:
1. Минимальное количество интераций - минимальное кол-во тактов - минимальное время
2. Кол-во интераций вычислено до начала цикла - более быстро, опять же.