Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Как с помощью циклов...?


Автор: Гость 339 15.4.2005, 17:29
Народ, помогите, как с помощью циклов написать программу, которая бы при введенном значении рисовала бы соответствующий ромб?

Автор: СПАРТАК 15.4.2005, 18:51
Рисовать в данном случае в цикле - портить себе здоровье smile ,
но если вам так задали, вот цикл

int x=200, y=200, a=100, b=50;

int znak1=0, znak2=0;

for (int g=1; g<=4; g++)
{
if (znak1==0)
x=x+a/2;
else
x=x-a/2;

if (znak2==0)
y=y+b/2;
else
y=y-b/2;

znak2=-znak2;
if (g=2)
znak1=-znak1;

LineTo(x, y); //Кажется эта ф-ция рисует прямую из текущей точки в заданную, хотя ка // кажется это в Pascal'e
}

Уточни насчет ф-ции LineTo, ну и отладь, я набирал прямо тута...


Автор: СПАРТАК 15.4.2005, 19:23
Тьфу ты, допиши

if (g==2)
{
znak1=-znak1;
znak2=-znak2;
}

Автор: Бегемот 15.4.2005, 21:11
Код

  Canvas->Pen->Width = 2;          //толщина линии (в пикселах)
  Canvas->Pen->Color = clRed;      //цвет линии 
  Canvas->MoveTo(x1,y1);           //устанавливаем текущую точку с координатами x1,y1
  Canvas->LineTo(x2,y2);           //рисуем линию из текущей точки в точку с координатами x2,y2
smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)