IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> ООП, Помогите с объектом
Александр
сообщение 26.05.2005 14:17
Сообщение #1





Группа: Пользователи
Сообщений: 4
Пол: Мужской

Репутация: -  0  +


Здравствуйте !!!!

Нужно построить объекты: круг, дуги элипса в круге, круг и квадрат!!!!

Первые два уже сделаны, помогите с третьим!!!

Спасибо!!!

uses Crt,Graph;
type
  TCircle = object
              X,Y,R: Integer;
              Color: Word;
              constructor Init(cX,cY,cR: Integer; cColor: Word);
              procedure Draw(cColor: Word);virtual;
              procedure Show;
            end;
 TEllipse = object(TCircle)
             X1,Y1: Integer;
             constructor Init(eX1,eY1,cX,cY,cR: Integer;cColor: Integer);
             procedure Draw(cColor: Word);virtual;
            end;
 
constructor TCircle.Init;
    begin
         X := cX;
         Y := cY;
         R := cR;
         Color := cColor;
    end;
 procedure TCircle.Draw;
   begin
       SetColor(cColor);
       Circle(X,Y,R);
       SetColor(14);
   end;
 procedure TCircle.Show;
   begin
       Draw(Color);
   end;
constructor TEllipse.Init;
  begin
       inherited Init(cX,cY,cR,cColor);
       X1 := eX1;
       Y1 := eY1;
       inherited Draw(Color);
  end;
 procedure TEllipse.Draw;
  var
     I: Integer;
  begin
        SetViewPort(450,100,550,150,ClipOn);
         for I := 1 to 50 do
          begin
               I := I + 1;
               SetColor(Random(14) + 1);
               Ellipse(X1+Random(50),Y1+Random(30),
                 Random(180),Random(180),Random(10),Random(20));
          end;
     SetColor(15);
  end;

var
   Ellipse: TEllipse;
   Circle: TCircle;
   Rect: TRec;
   Gd,Gm: Integer;
begin
     Randomize;
     InitGraph(Gd,Gm,'C:\TP7\BIN');
     Circle.Init(120,120,100,12);
     Circle.Show;
     Ellipse.Init(390,80,500,150,100,7);
     Ellipse.Show;
     
     repeat until KeyPressed;
end.


Тегами пользуемся ...

Сообщение отредактировано: volvo - 26.05.2005 14:33
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 24.07.2025 3:29
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"