Нужна помощь по pascalABC Задача нарисовать эллипс(вертикальный и горизонтальный) внутри...

0 голосов
64 просмотров

Нужна помощь по pascalABC
Задача нарисовать эллипс(вертикальный и горизонтальный) внутри круга
Моя проблема в том, что вместо эллипса рисуется линия. Вот код:
program ellipse;
uses GraphABC;
var xc,yc,x,y,r: integer;
begin
Brush.Style:= bsClear;
writeln('введи центр окружности');
readln(xc,yc);
writeln('введи радиус окружности');
readln(r);
x:= xc;
y:= yc;
circle(x,y,r);
ellipse(x,y+r,x,y-r);
ellipse(x-r,y,x+r,y);
end.
Помогите исправить ошибку


Информатика (93 баллов) | 64 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

После circle(x,y,r);   добавьте строки     xc:=r div 2;  yc:=xc;
Строки   ellipse(x,y+r,x,y-r);   ellipse(x-r,y,x+r,y);    замените на следующие:
  ellipse(x-r,y-yc,x+r,y+yc);  ellipse(x-xc,y-r,x+xc,y+r);


(9.7k баллов)
0

большое спасибо!

0

Пожалуйста.