Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 14.02.2016
Сообщений: 34
1

Класс "Треугольник"

01.11.2016, 21:59. Показов 1031. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Создала класс Треугольник, обсчитываю высоту, при выводе сторон и высоты у меня высота =0. Где ошибка?
и потом помогите разобраться с bool isValid(), стороны ж не должны быть отрицательные, то почему не срабатывает этот метод?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#ifndef TRIANGLE_H
#define TRIANGLE_H
 
class Triangle {
public:
    Triangle();
    Triangle(double a, double b, double c);
    virtual ~Triangle();
    
    bool isValid();
    void height();
private:
    double a, b, c, h;
    friend void printTriangle(Triangle &tri);
   
};
 
#endif /* TRIANGLE_H */
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
#include "Triangle.h"
#include <iostream>
 
using namespace std;
 
Triangle::Triangle() 
{
}
 
Triangle::Triangle(double a, double b, double c)
: a(a), b(b), c(c)
{
}
 
Triangle::~Triangle()
{
}
 
bool Triangle::isValid()
{
    if ((a>0)&(b>0)&(c>0)) 
        cout << " The coord is negative";
}
 
void Triangle::height()
{
    h = (a*b) / c;
}
 
void printTriangle(Triangle &tri)
{
    cout << "h=" << tri.h << " a=" << tri.a << " b=" << tri.b << " c=" << tri.c << endl;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <cstdlib>
#include<iostream>
#include"Triangle.h"
 
using namespace std;
 
void playCase(Triangle *tri1, Triangle *tri2)
{
    cout << "Triangle 1: ";
    printTriangle(*tri1);
    cout << "Triangle 2: ";
    printTriangle(*tri2);
}
int main(int argc, char** argv) {
    
    
    Triangle *tri1 = new Triangle(3, 4, 5);
    Triangle *tri2 = new Triangle(3, -4, 5);
    cout << "Case 1:" << endl;
    playCase(tri1, tri2);
    cout << endl;
    return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.11.2016, 21:59
Ответы с готовыми решениями:

Создать базовый класс Треугольник с 2 наследниками: Равносторонний треугольник, Прямоугольный треугольник
Задание звучит так: Нужно создать базовый класс Треугольник с двумя наследующими его классами - ...

Класс треугольник с произвольным классом - равнобедренный треугольник
Создать класс треугольник, члены класса - длины 3-х сторон. Предусмотреть в классе методы проверки...

Класс треугольник, найти треугольник максимальной площади
Реализовать класс треугольников. Для некоторого множества заданных координатами своих вершин...

Создать абстрактный класс "Треугольник" и производный - "Равнобедренный треугольник"
Задание Создать абстрактный класс треугольник. Предусмотреть в классе методы проверки...

Класс треугольник
Вечер добрый! Помогите пожалуйста реализовать задачу. Класс треугольник. Проверка введённых...

0
01.11.2016, 21:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.11.2016, 21:59
Помогаю со студенческими работами здесь

Класс треугольник
Здравствуйте, уважаемые форумчане, очень нужна ваша помощь. Задача. Описать указанный в варианте...

Класс Треугольник на С++
Помогите пожалуйста написать три конструктора для класса &quot;треугольник&quot; : 1)класс задаётся либо...

С++ Класс треугольник
Добрый вечер! Я вновь со своей задачей, извините что снова беспокою. (Разработать класс на языке...

класс треугольник
Составить схему программы и программу на языке С ++, выполняющего такие действия а) объявление...

класс треугольник
добрый вечер) мне нужно было создать класс треугольник и реализовать операции нахождения площади,...

Класс Треугольник
Здравствуйте, нужна ваша помощь. В институте задали задание, но не дав при этом теорию. Помогите...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru