Форум программистов, компьютерный форум, киберфорум
Наши страницы

Класс Треугольник на С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нарисовать прямоугольник в рамке http://www.cyberforum.ru/cpp-beginners/thread671751.html
Необходимо написать функцию void draw(), которая выводила бы прямоугольник внутри рамки 25 на 25. Я еле-еле додумал как нарисовать прямоугольник без рамки и заполнить его указанным символом(и то...
C++ Отрицательные массивы Помогите пожалуйста. В одномерном массиве, состоящим из n элементов Найти сумму отрицательных элементов массива. Заранее благодарен http://www.cyberforum.ru/cpp-beginners/thread671735.html
Непонятная формула C++
Всем привет, помогите сделать задание, необходимо рассчитать х по следующей формуле, не могу понять что делать после того, когда я вычла минимальный элемент из максимального?
C++ Хеширование,вычисление ключа методом вычисления адреса
Всем Привет! не могу реализовать последний пункт. Если кто-то поможет,буду благодарен! Задание : Поиск заданного ключа в исходном отсортированном массиве: необходимо расположить элементы...
C++ Нужно отсортировать массив от *start до *finish http://www.cyberforum.ru/cpp-beginners/thread671692.html
нужно отсортировать массив от *start до *finish template<class elm> void sorting(elm *st,elm *fn) { for(;st!=fn;st++) { for(elm *next=st;next!=fn;next++) { ...
C++ Выяснить, образуют ли цифры данного числа возрастающую последовательность Здраствуйте, помогите сделать лабораторную, программирование мне не понадобиться так что не хочу забивать этим голову, зарание спасибо. Вот условие задач. 3) Выяснить, образуют ли цифры данного... подробнее

Показать сообщение отдельно
skaa
Хочу в Исландию
1030 / 829 / 75
Регистрация: 10.11.2010
Сообщений: 1,626
15.10.2012, 21:18
Я бы сделал так:
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
#include    <math.h>
 
typedef struct {double s1;double s2;double s3;} trsss;
typedef struct {double a1;double s2;double a3;} trasa;
typedef struct {double s1;double a2;double s3;} trsas;
class   Triangle3
{
private:
  double    s1,s2,s3;
  double    a1,a2,a3;
  double    ad1,ad2,ad3;
public:
  Triangle3(trsss rsss)
  {
    s1=rsss.s1;
    s2=rsss.s2;
    s3=rsss.s3;
 
    a3=acos((s1*s1+s2*s2-s3*s3)/(2*s1*s2));
    a2=acos((s1*s1+s3*s3-s2*s2)/(2*s1*s3));
    a1=M_PI-a2-a3;
 
    ad1=a1/M_PI*180;
    ad2=a2/M_PI*180;
    ad3=a3/M_PI*180;
  }
  Triangle3(trasa rasa)
  {
    a1=rasa.a1;
    s2=rasa.s2;
    a3=rasa.a3;
    a2=M_PI-a1-a3;
 
    s1=s2*sin(a1)/sin(a2);
    s3=s2*sin(a3)/sin(a2);
 
    ad1=a1/M_PI*180;
    ad2=a2/M_PI*180;
    ad3=a3/M_PI*180;
  }
  Triangle3(trsas rsas)
  {
    s1=rsas.s1;
    a2=rsas.a2;
    s3=rsas.s3;
 
    s2=sqrt(s1*s1+s3*s3-2*s1*s3*cos(a2));
    a3=acos((s1*s1+s2*s2-s3*s3)/(2*s1*s2));
    a1=M_PI-a2-a3;
 
    ad1=a1/M_PI*180;
    ad2=a2/M_PI*180;
    ad3=a3/M_PI*180;
  }
};
void    main()
{
  trsss rsss={6.,4.,3.};
  trasa rasa={30./180.*M_PI,4.,50./180.*M_PI};
  trsas rsas={3.,90./180.*M_PI,4.};
 
  Triangle3 *t3sss=new Triangle3(rsss);
  Triangle3 *t3asa=new Triangle3(rasa);
  Triangle3 *t3sas=new Triangle3(rsas);
 
  delete t3sss;
  delete t3asa;
  delete t3sas;
}
, только надо бы добавить всякие проверки, например чтобы не были заданы стороны 1, 2 и 10 - такого треугольника не существует.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru