Программирование >>  Дополнительные возможности наследования 

1 ... 56 57 58 [ 59 ] 60 61 62 ... 265


\Шш самостоятельно НвдвАя 1

Итоги пгрвоО пгдЕкп

2 3 4 5 6 7 8 9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33

ftinclude <iostream.h> intintboolfalset rue enum CHOICE { DrawRect = 1, GetArea, GetPerim, ChangeDimensions, Quit} ; Объявление класса Rectangle class Rectangle {

public:

constructors

Rectangle(int width, int height); RectangleO;

Методы доступа

int GetHeightO const { return itsHeight; }

int GetWidthO const { return itsWidth; }

int GetAreaO const { return itsHeight * itsWidth; }

int GetPerimO const { return 2.itsHeight + 2*itsWidth; }

void SetSize(int newWidth, int newHeight);

Прочие методы

private:

int itsWidth; int itsHeight;

Выполнение методов класса

void Rectangle::SetSize(int newWidth, int newHeight) {

itsWidth = newWidth; itsHeight = newHeight;

09�364



34; 35:

36: Rectangle::Rectangl6(lnt width, int height) 37: {

38: itsWiflth = width;

39: itsHelght = height; 40: > 41:

42: Rectangle:: Rectangle() { } 43:

44: int DoMenuO;

45: void DoDrawRect(Rectangle);

45: void DoGetArea(Rectangle);

47: void DoGetPerim(Rectangle);

49: int main () 50: {

51: Инициализация объекта rectangle значением 30,5

52: Rectangle theRect(30,5);

54: int choice = DrawRect;

55: int fOuit = false; 55:

57: while (IfQuit)

58: {

59: choice = DoMenuO;

60: if (choice < DrawRect choice > Quit)

61: {

62: cout \ ninvalid Choice, please try again.\ n\ n

63: continue;

64: }

65: switch (choice)

55: {

67; case DrawRect:

68: DoDrawRect(theRect);

69: break;

70; case GetArea:

71: DoGetArea(theRect);

72: break;

73: case GetPerim:

74: DoGetPerim(theRect);

75: break;

75: case ChangeDimensions;

77: int newLength, newWidth;

78: cout \ nNew width: ;

79: cin newWidth;

80: cout New height: ;

81: cin newLength;

82: theRect.SetSize(newWidth, newLength);

83: DoDrawRect(theRect);



break; case Quit;

fOuit = true;

cout \ nExiting,..\ n\ n ; break; default;

cout Error in choice!\ n ; fOuit = true; break; } end switch } end while return 0;

} end main

int DoMenuO {

int choice;

cout \ n\ n Menu ** \ n ;

cout (1) Draw Rectangle\ n ;

cout (2) Area\ n ;

cout (3) Perimeter\ n ;

cout (4) Resize\ n ;

cout (5) Quit\ n ;

cin choice; return choice;

void DoDrawRect(Rectangle theRect) {

int height = theRect.GetHeight(); int width = theRect.GetWidthO;

for (int 1 = 0; Kheight; i++) {

for (int j = 0; j< width; j++)

cout * ; cout << \ n ;

void DoGetArea(Rectangle theRect) {

cout Area: theRect.GetArea() endl;

void DoGetPerim(Rectangle theRect) {



1 ... 56 57 58 [ 59 ] 60 61 62 ... 265

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика