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

Задача на Классы. Создать класс треугольник - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дано натуральные числа от 1 до 50. Найти сумму тех из них, которые делятся на 5 или на 7 http://www.cyberforum.ru/cpp-beginners/thread758170.html
Дано натуральные числа от 1 до 50. Найти сумму тех из них, которые делятся на 5 или на 7.
C++ Написать класс сверхбольших целых чисел, использовать массив типа char Задача: написать класс сверхбольших чисел ( нет ограничений на количество цифр ) использовать массив типа char, реализовать основные математические операции. Буду благодарен за любые подсказки и любую помощь. Заранее вам спасибо, очень нужно для зачета http://www.cyberforum.ru/cpp-beginners/thread758168.html
C++ перегрузка []
Есть класс, и почему компилятор выдает ошибку на функции int &operator(int); #ifndef ARRAY1_H #define ARRAY1_H #include <iostream.h> class Array{ friend ostream &operator<<(ostream &, Array &); friend istream &operator>>(istream &, Array &);
C++ Сравнить два массива, заданных классами
Имеется class array и class array2. В них описаны массивы. И два метода, заполняющие их. Нужно сравнить два этих массива (Вывести одинаковые элементы) В силу неопытности, не могу разобраться как сравнить их. Помогите разобраться пожалуйста. :) А ещё надо разработать метод слияния этих массивов(но без решения предыдущей задачи, я не справлюсь :cry:) Пытался как-то так, но не получилось:...
C++ Используя функции, сформировать одномерный массив и вывести его на печать... http://www.cyberforum.ru/cpp-beginners/thread758149.html
Используя функции, сформировать одномерный массив и вывести его на печать (с помощью датчика случайных чисел). Определить порядковые номера и значения первого положительного и последнего отрицательного элементов целочисленного массива X(n). Определить среднее арифметическое элементов массива, позиционно расположенных между найденными элементами. Предусмотреть случай, что массив может не...
C++ Строки в с++. После строки выводятся не понятные символы Помогите плиз найти ошибку в задачке, работает правильно, но выводит в конце "левые" символы. как их убрать? Функции передаёться исходная строка, строка приёмник, начальная позиция, и количество символов, возвращаеться указатель на строку - приёмник в которой содержаться часть исходной строки, начиная с начальной позиции и заданной длиной. #include <iostream> #include <stdio.h>... подробнее

Показать сообщение отдельно
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,911
10.01.2013, 23:57     Задача на Классы. Создать класс треугольник
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
#include <iostream>
#include <cmath>
 
const double pi = 3.14159265358979323846;
 
double radToDeg(double x) {
    
    return x * (180 / pi);
}
 
double sqr(double x) {
    
    return pow(x, 2);
}
 
//------------
class Triangle {
    
public:
    Triangle(double a, double b, double c);
    
    double GetA() const;
    double GetB() const;
    double GetC() const;
    
    void SetA(double a);
    void SetB(double v);
    void SetC(double c);
    
    double Area() const;
    double AngleAlpha() const;
    double AngleBeta() const;
    double AngleGamma() const;
    double Perimeter() const;    
    
    bool IsValid() const;
    
private:
    double a_;
    double b_;
    double c_;
};
 
Triangle::Triangle(double a, double b, double c) {
 
    a_ = a;
    b_ = b;
    c_ = c;
}
 
double Triangle::GetA() const {
 
    return a_;
}
 
double Triangle::GetB() const {
        
    return b_;
}
 
double Triangle::GetC() const {
        
    return c_;
}
 
void Triangle::SetA(double a) {
        
    a_ = a;
}
 
void Triangle::SetB(double b) {
        
    b_ = b;
}
 
void Triangle::SetC(double c) {
        
    c_ = c;
}
 
double Triangle::AngleAlpha() const {
        
   return radToDeg(acos((sqr(b_) + sqr(c_) - sqr(a_)) / (2 * b_ * c_)));
}
 
double Triangle::AngleBeta() const {
        
   return radToDeg(acos((sqr(a_) + sqr(c_) - sqr(b_)) / (2 * a_ * c_)));
}
 
double Triangle::AngleGamma() const {
        
   return radToDeg(acos((sqr(a_) + sqr(b_) - sqr(c_)) / (2 * a_ * b_)));
}
 
double Triangle::Area() const {
        
    const double p = Perimeter() / 2;    
    return sqrt(p * (p - a_) * (p - b_) * (p - c_));
}
 
double Triangle::Perimeter() const {
       
    return a_ + b_ + c_;
}
 
bool Triangle::IsValid() const {
        
    return (a_ < b_ + c_) && (b_ < c_ + a_) && (c_ < a_ + b_);
}
 
int main() {
    
    double a, b, c;
    
    std::cout << "a: ";
    std::cin >> a;
    
    std::cout << "b: ";
    std::cin >> b;
 
    std::cout << "c: ";
    std::cin >> c;
    
    Triangle triangle(a, b, c);
    
    if(!triangle.IsValid()) {
        
        std::cout << "error" << std::endl;        
        return 1;
    }
        
    std::cout << "--------------\n"
        "a = " << triangle.GetA() << "\n"
        "b = " << triangle.GetB() << "\n"
        "c = " << triangle.GetC() << "\n"
        "alpha angle = " << triangle.AngleAlpha() << "\n"
        "beta angle = " << triangle.AngleBeta() << "\n"
        "gamma angle = " << triangle.AngleGamma() << "\n"
        "area = " << triangle.Area() << "\n"
        "perimeter = " << triangle.Perimeter() << std::endl;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru