Форум программистов, компьютерный форум CyberForum.ru

Написать программу, которая будет использовать класс Rectangular с данными прямоугольника - C++

Восстановить пароль Регистрация
 
MariaUst
0 / 0 / 0
Регистрация: 16.03.2014
Сообщений: 15
16.03.2014, 16:58     Написать программу, которая будет использовать класс Rectangular с данными прямоугольника #1
Добрый день!

Есть задача, которую надо решить через классы. Не смогла разобраться толком с ними, с созданием файла .h и в общем. Решила как смогла, ибо завтра сдавать дз, код рабочий, но можно ли как-то исправить его чтобы были соблюдены описанные требования к классам? Описание задачи может быть неточным (в переводе).

α) Написать программу, которая будет использовать класс Rectangular с данными прямоугольника. Переменные width и height содержат данные сторон прямоугольника и принадлежат классу.

Написать
α) constructor который не принимает аргументов
β) constructorкоторый принимает 2 аргумента
γ) setWidth, setHeight которые принимают две стороны прямоугольника
δ) getWidth, getHeight которые возвращают две стороны прямоугольника
ε) getArea которое считает площадь
στ) getPerimeter которое считает периметр

Далее написать код, который работает на два прямоугольника (10,7) и (10,12). Данные первого заданы изначально, второго – задаются setWidth и setHeight. Результат – вывод на экран их площадей

β) Написать класс квадрат Square, является расширением класса rectangle. Написать constructor который будет получать значение стороны квадрата.

Далее программа должна работать для квадратов со сторонами 10 и 7. Также выводить их площадь и периметр.

γ) Добавить класс Box- куб и constructor, который будет получать три параметра куба (длину, высоту, ширину)
getVolume и getArea используются из родительского класса. scale(double f) умножает параметры (размеры) куба на f.
В программе – 2 куба (10,10,10) и (7,8,3).
На экран выводится объем куба, площади его поверхностей. Затем вызывается scale – коэффициенты 0,5 и 2. На экран выводятся новые данные.

Итог: 1 программа с 1 main, 3 .cpp и 3 .h (1 на каждый класс (rectangle, squre, box))

А вот и сам код:
C++
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#include <iostream>
#include <conio.h>
#include <cstdlib>
 
using namespace std;
 
class percalc
{
  public:
  void per(int a);
  void per(int a,int b);
};
 
void percalc::per(int a)
{
    cout<<"\n  Perimetr of Square ="<<(4*a);
}
 
void percalc::per(int a, int b)
{
     cout<<"\n  Perimetr of Rectangle="<<((a+b)*2);
}
 
class areacalc
{
  public:
  void area(int a);
  void area(int a,int b);
  void area(int a,int b,int d);
};
 
void areacalc::area(int a)
{
    cout<<"\n  Area of Square="<<(a*a);
}
 
void areacalc::area(int a,int b)
{
    cout<<"\n  Area of Rectangle="<<(a*b);
}
 
void volume (int a,int b,int c)
{
    cout<<"\n  Volume of box="<<a*b*c;
}
 
void area (int a, int b, int c)
{
    cout<<"\n  Area of the first side of box="<<a*b;
    cout<<"\n  Area of the second side of box="<<a*c;
    cout<<"\n  Area of the third side of box="<<c*b;
    cout<<"\n  Area of all sides of box="<<2*a*b+2*a*c+2*b*c;
}
 
void scale (int a,int b, int c, float sc)
{
    area (a*sc, b*sc, c*sc);
    volume (a*sc, b*sc, c*sc);
}
main()
{
areacalc ac;
percalc pc;
   cout<<"Rectangle with sides 10 and 7"<<endl;
   ac.area(10,7);
   pc.per (10,7);
   cout<<"\n\n\nRectangle with sides 10 and 12"<<endl;
   ac.area(10,12);
   pc.per (10,12);
   cout<<"\n\n\n\nSquare with side 10"<<endl;
   ac.area(10);
   pc.per (10);
   cout<<"\n\n\nSquare with side 7"<<endl;
   ac.area(7);
   pc.per (7);
   cout<<"\n\n\n\nCube with side 10"<<endl;
   area (10,10,10);
   volume(10,10,10);
   cout<<"\n\n\n\nScale 0,5"<<endl;
   scale (10,10,10,0.5);
   cout<<"\n\n\n\nScale 2"<<endl;
   scale (10,10,10,2);
   cout<<"\n\n\nBox with sides 7, 8 and 3"<<endl;
   area (7,8,3);
   volume(7,8,3);
   cout<<"\n\n\nScale 0,5"<<endl;
   scale (7,8,3,0.5);
   cout<<"\n\n\nScale 2"<<endl;
   scale (7,8,3,2);
getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2014, 16:58     Написать программу, которая будет использовать класс Rectangular с данными прямоугольника
Посмотрите здесь:

Написать программу которая будет разделять число C++
C++ Написать программу, которая будет изменять элементы массива
Написать программу определения знака введенных чисел до тех пор, пока не будет введён 0. Использовать do.while + if C++
C++ Написать программу, которая будет склеивать два введеных строки
разработать программу, которая будет использовать структуру в С C++
написать программу, которая будет переворачивать введенное предложение C++
Написать программу, которая будет из набора изображений создавать видеоролик C++
Написать программу, которая будет считать двойные интегралы C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 03:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru