Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Система класів для опису плоских геометричних фігур

Реферат Система класів для опису плоских геометричних фігур





gle);=CenterY + (KLTX-CenterX) * sin (angle) + (KLTY-CenterY ) * cos (angle); =CenterX + (KRTX-CenterX) * cos (angle) - (KRTY-CenterY) * sin (angle);=CenterY + (KRTX-CenterX) * sin (angle) + (KRTY-CenterY) * cos (angle);

=CenterX + (KLDX-CenterX) * cos (angle) - (KLDY-CenterY) * sin (angle);=CenterY + (KLDX-CenterX) * sin (angle) + (KLDY-CenterY) * cos (angle); =CenterX + (KRDX-CenterX) * cos (angle) - (KRDY-CenterY) * sin (angle);=CenterY + (KRDX-CenterX) * sin (angle) + (KRDY-CenterY) * cos (angle); =angle;

} FindSquare ()

{= side * side;

} FindPerimeter ()

{= side * 4;

}

}; Circle: public Shape//коло

{: Radius;// радіус (float KRadius, float KCenterX, float KCenterY)//конструктор

{= 1;// задаємо тип=KRadius;// копіюємо параметри=KCenterX; =KCenterY;

} Move (float X, float Y)//зрушити коло=зрушити центр

{+=X; +=Y;

} Rotate (float Kangle) {};// обертання кола не впливає на параметри Resize (float X, float Y)//збільшити радіус; другий параметр записаний у віртуальній функції - значить він повинен бути і тут, тому це не перевантаження функції

{+=X;

} FindSquare ()

{= M_PI * Radius * Radius;

} FindPerimeter ()

{= M_PI * Radius * 2;

}

}; main ()

{( chcp тисячі двісті п'ятьдесят-одна ); lt; Shape * gt; Shapes;// масив фігур (1)//виконувати меню до виходу з програми

{

cout lt; lt; Введіть номер команди і натисніть Enter. lt; lt; endl lt; lt; 1. Вибрати фігуру lt; lt; endl lt; lt; 2. Створити фігуру lt; lt; endl lt; lt; 3. Знайти мінімальний коло, що описує всі наявні фігури lt; lt; endl lt; lt; 4. Вихід lt; lt; endl;

int task; gt; gt; task; (task == 4)

{;

} if (task == 1)

{(Shapes.size () gt; 0)

{(1)

{(int i=0; i lt; Shapes.size (); i ++)

{ lt; lt; (i + 1) lt; lt; laquo ;. raquo ;; (Shapes [i] - gt; type == 1)

{* Temp=dynamic_cast lt; Circle * gt; (Shapes [i]);// приведення до типу кола lt; lt; Круг - Радіус= lt; lt; Temp- gt; Radius lt; lt; Центр lt; lt; Temp- gt; CenterX lt; lt; laquo ;; lt; lt; Temp- gt; CenterY lt; lt; laquo ;; lt; lt; endl;

} if (Shapes [i] - gt; type == 2)

{* Temp=dynamic_cast lt; Rectangle * gt; (Shapes [i]);// приведення до типу прямокутника lt; lt; Прямокутник - Лівий Верхній Кут lt; lt; Temp- gt; LTX lt; lt; laquo ;; lt; lt; Temp- gt; LTY lt; lt; laquo ;; Правий нижній кут lt; lt; Temp- gt; RDX lt; lt; laquo ;; lt; lt; Temp- gt; RDY lt; lt; laquo ;; lt; lt; endl;

} if (Shapes [i] - gt; type == 3)

{* Temp=dynamic_cast lt; Quadrate * gt; (Shapes [i]);// приведення до типу квадрата lt; lt; Квадрат - Лівий Верхній Кут lt; lt; Temp- gt; LTX lt; lt; laquo ;; lt; lt; Temp- gt; LTY lt; lt; laquo ;; Сторона lt; lt; Temp- gt; side lt; lt; laquo ;; lt; lt; endl;

}

} lt; lt; (Shapes.size () + 1) lt; lt; laquo ;. У головне меню lt; lt; endl; lt; lt; Введіть номер фігури lt; lt; endl;

int fnum; gt; gt; fnum; fnum -; (fnum gt; Shapes.size () - 1) break;

if (Shapes [fnum] - gt; type == 1)

{*Temp=dynamic_castlt;Circle*gt;(Shapes[fnum]);gt;FindSquare();gt;FindPerimeter();lt;lt;laquo;Круг:Информацияraquo;lt;lt;endllt;lt;laquo;Радиус=raquo;lt;lt;Temp-gt;Radiuslt;lt;laquo;;raquo;lt;lt;endllt;lt;laquo;Центр: lt; lt; Temp- gt; CenterX lt; lt; laquo ;; lt; lt; Temp- gt; CenterY lt; lt; laquo ;; raquo;lt;lt;endllt;lt;laquo;Площадь=raquo;lt;lt;Temp-gt;Squarelt;lt;laquo;;raquo;lt;lt;endllt;lt;laquo;Периметр=raquo;lt;lt;Temp-gt;Perimeterlt;lt;laquo;;raquo;lt;lt;endl;

} if (Shapes [fnum] - gt; type == 2)

{*Temp=dynamic_castlt;Rectangle*gt;(Shapes[fnum]);gt;FindSquare();gt;FindPerimeter();lt;lt;laquo;Прямоугольник:Информацияraquo;lt;lt;endllt;lt;laquo;Левый Верхній Кут: lt; lt; Temp- gt; LTX lt; lt; laquo ;; lt; lt; Temp- gt; LTY lt; lt; laquo ;; lt; lt; endl lt; lt; Правий верхній кут lt; lt; Temp- gt; RTX lt; lt; laquo ;; lt; lt; Temp- gt; RTY...


Назад | сторінка 5 з 9 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Просування бутіка розміру plus size на прикладі ТОВ &Атлант&, бутік &Elena ...
  • Реферат на тему: Аналіз соціально-економічного становища м. Верхній Уфалей
  • Реферат на тему: Аналіз техніки та методика навчання верхній прямій подачі
  • Реферат на тему: Створити меню без файла опису ресурсів за допомогою функцій CreateMenu і Cr ...
  • Реферат на тему: Створення меню без файлу опису ресурсів на основі функції LoadMenuIndirect ...