2. Uses GraphABC;
Procedure Paint1;
Var
i,j:integer;
begin
for i:=1 to 4 do
for j:=1 to 4 do
Floodfill(41*i,21+40*(j-1),clBrown);
end;
Procedure Paint2 ;
Var
i,j:integer;
begin
for i:=1 to 4 do
for j:=1 to 4 do
FloodFill(41*i-20,41+40*(j-1),clBrown);
end;
Var
i:integer;
Begin
for i:=1 to 9 do
begin
Line(20,20*i,180,20*i);
Line(20*i,20,20*i,180);
end;
Paint1;
Paint2;
end.
Вначале в цикле проводим все необходимые
линии, затем с помощью процедур закрашиваем
необходимые клетки
3. uses GraphABC;
Var
i,j,k:integer;
begin
for i:=0 to 640 do
for j:=1 to 400 do
begin
k:=i+j;
case k of
0..100: setpixel(i,j,clRed);
101..200: setpixel(i,j,clOrange);
201..300: setpixel(i,j,clYellow);
301..400: setpixel(i,j,clGreen);
401..500: setpixel(i,j,clSkyBlue);
501..600: setpixel(i,j,clBlue);
601..700: setpixel(i,j,clViolet);
end;
end;
end.
Просто в зависимости от значения переменной k
закрашиваем пиксели в определенные цвета. Т.к. i и j
– целые числа, то и k – целое число, и его не надо
округлять
4. uses GraphABC;
Var
i,j,k:integer;
begin
for i:=0 to 640 do
for j:=1 to 400 do
begin
k:=trunc((sqr(i)+sqr(j))/20);
case k of
0..100: setpixel(i,j,clRed);
101..200: setpixel(i,j,clOrange);
201..300: setpixel(i,j,clYellow);
301..400: setpixel(i,j,clGreen);
401..500: setpixel(i,j,clSkyBlue);
501..600: setpixel(i,j,clBlue);
601..700: setpixel(i,j,clViolet);
end;
end;
end.
В зависимости от значения переменной k закрашиваем
пиксели в определенные цвета. i и j – целые числа, но
значение k – не целое число, т.к. при делении в Pascal мы
получаем не целые числа. Поэтому его надо округлить, ведь
оператор множественного выбора case работает только с
переменными порядкового типа,
5. uses GraphABC;
Var
i,j,K:integer;
begin
for i:=0 to 640 do
for j:=1 to 400 do
begin
k:=i*j;
case k of
0..200: setpixel(i,j,clRed);
201..400: setpixel(i,j,clOrange);
401..600: setpixel(i,j,clYellow);
601..800: setpixel(i,j,clGreen);
801..1000: setpixel(i,j,clSkyBlue);
1001..1200: setpixel(i,j,clBlue);
1201..1400: setpixel(i,j,clViolet);
end;
end;
for i:=0 to 640 do
for j:=1 to 400 do
begin
k:=i*j;
case k of
0..200: setpixel(640-i,400-j,clRed);
201..400: setpixel(640-i,400-j,clOrange);
401..600: setpixel(640-i,400-j,clYellow);
601..800: setpixel(640-i,400-j,clGreen);
801..1000: setpixel(640-i,400-j,clSkyBlue);
1001..1200: setpixel(640-i,400-j,clBlue);
1201..1400: setpixel(640-i,400-j,clViolet);
end;
end;
end.
Просто закрашиваем пиксели в зависимости от
значения k
6. uses GraphABC;
Var
i,j:integer;
begin
for i:=1 to 640 do
for j:=1 to 400 do
setpixel(i,j,i*j*10000000);
end.
Просто закрашиваем по очереди каждый пиксель рабочего поля. В каждом пикселе с координатами
(i,j) цвет пикселя задается как i*j*10000000(ВАЖНО: эта программа работает только в тех версиях
PascalABC.Net, в которых цвет можно задавать ЧИСЛОМ. Иначе ничего не работает). При
различных значениях коэффициента( в данном случае коэффициент – 10000000) рисунок будет
разным.