|
|
|
Помоги с задачей на Turbo Pascal
|
|||
|---|---|---|---|
|
#18+
Уменя не закрашиваются Окружности. Составьте программу, которая рисует сначала две окружности белого цвета на чёрном фоне справа и слева, а при каждом нажатии на клавишу "ENTER" появлялись бы ещё две окружности справа и слева, но уже ближе к центру до тех пор, пока они не совпадут. После чего центральная окружность должна будет окраситься в зелёный цвет. Может что то неправильно записал помогите пожалуйста. program Load; uses graph,crt; var gd,gm:integer; err:integer; begin gd:=detect; initgraph(gd,gm,''); err:=graphResult; if err<>grOk then begin writeln('Oshibka'); readln; halt(1); end; begin readln; setfillstyle(1,black); floodfill(80,240,white); circle(80,240,60); floodfill(560,240,white); circle(560,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(100,240,60); floodfill(560,240,white); circle(540,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(120,240,60); floodfill(560,240,white); circle(520,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(140,240,60); floodfill(560,240,white); circle(500,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(160,240,60); floodfill(560,240,white); circle(480,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(180,240,60); floodfill(560,240,white); circle(460,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(200,240,60); floodfill(560,240,white); circle(440,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(220,240,60); floodfill(560,240,white); circle(420,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(240,240,60); floodfill(560,240,white); circle(400,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(260,240,60); floodfill(560,240,white); circle(380,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(280,240,60); floodfill(560,240,white); circle(360,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(300,240,60); floodfill(560,240,white); circle(340,240,60); readln; end; begin clrscr; setfillstyle(1,black); floodfill(75,240,14); circle(320,240,60); readln; closegraph; end; end. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2007, 13:37 |
|
||
|
Помоги с задачей на Turbo Pascal
|
|||
|---|---|---|---|
|
#18+
ArtikjanУменя не закрашиваются Окружности. Составьте программу, которая рисует сначала две окружности белого цвета на чёрном фоне справа и слева, а при каждом нажатии на клавишу "ENTER" появлялись бы ещё две окружности справа и слева, но уже ближе к центру до тех пор, пока они не совпадут. После чего центральная окружность должна будет окраситься в зелёный цвет. Может что то неправильно записал помогите пожалуйста. В первую очередь - есть такая замечательная штука, называется оператор цикла. В Турбо-Паскале их целых три варианта, и их определенно стоит здесь применить. Во-вторых, я не вижу у тебя попытки "окраситься в зеленый цвет", что указано в задании. В-третьих, убирать окружности методом стирания всего экрана не очень хорошо. В данном случае проще всего вызвать еще раз отрисовку ровно такой же окружности, но черным цветом. В-четвертых, 14-й цвет называется Yellow, использовать для него числовое значение совершенно не обязательно. В-пятых, ты весьма странно применяешь floodfill. По условию задачи он здесь вообще не нужен, а так как ты действуешь, если не ошибаюсь, будет просто разливать цвет на весь или почти весь экран. В-шестых, перед тем, как рисовать линию (окружность) имхо стоило бы установить параметры этой линии, например цвет. В-седьмых, если ты хочешь рисовать закрашенные окружности, для этого в Турбо-Паскале был сооветствующий метод, что-то типа FillEllipse. В-восьмых, я бы посоветовал прежде всего написать программу, которая просто рисует две окружности требуемого вида, ждет Enter и закрывается. Затем добавить в нее оператор цикла, который сдвигал бы окружности пока они не сойдутся. Потом добавить смену цвета на зеленый при схождении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.01.2007, 13:52 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=34234985&tid=1346347]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
161ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 252ms |
| total: | 491ms |

| 0 / 0 |
