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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
REALIST07
Автор FAQ
Автор FAQ
176 / 176 / 13
Регистрация: 11.06.2010
Сообщений: 932
#1

Вычислить сторону треугольника ABC, зная две другие стороны и угол между ними - C++

15.09.2010, 00:09. Просмотров 1820. Ответов 31
Метки нет (Все метки)

есть код
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{float a,b,c,x;
 
    setlocale(LC_ALL,"Russian");
    cout<<"Вычислить сторону треугольника ABC, зная две другие стороны и угол между ними;"<<endl;
    cout<<"Введите длину A:";
    cin>>a;
    cout<<"Введите длину B:";
    cin>>b;
    cout<<"Введите величину угла в градусах:";
    cin>>x;
    c=pow(a,2)+pow(b,2)-2*a*b*cos(x);
cout<<"Сторона С="<<c<<endl;
    system("pause");
 
 
}
вроде норм компилируется и запускается но при проверке выдает неправильные рез-ты почему?
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.09.2010, 00:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычислить сторону треугольника ABC, зная две другие стороны и угол между ними (C++):

Найти заданный угол треугольника, зная две его стороны и периметр - C++
Всем привет. Что то я совсем туплю с этой тригонометрией, хотя школу всего 5 лет назад закончил. В общем даны две стороны треугольника a,...

Зная площадь прямоугольного треугольника и угол при основании, найти все стороны треугольника - C++
Требования к программе: - Входные данные ввести с помощью стандартных процедур ввода; - На печать вывести значение входной переменной и...

Заданы длины двух сторон треугольника и угол между ними. найти площадь треугольника? - C++
Заданы длины двух сторон треугольника и угол между ними. найти площадь треугольника?

По длинам двух сторон некоторого треугольника и углу между ними найти длину третьей стороны и площадь этого треугольника - C++
Привет всем. Помогите исправить программу. Вот задача: По длинам двух сторон некоторого треугольника и углу между ними найти длину...

Вычислить углы треугольника зная его стороны. - C++
Задание написать прогу но вместо переменной использовать ссылку на неё.Вычислить углы треугольника зная его стороны.Решил писать через...

В треугольнике заданы две стороны a, b ,c. Вычислить и вывести на экран остальные элементы треугольника. - C++
помогите пожалуйста дописать программу,по блок-схеме углы вроде написал,но правильно ли? #include &lt;iostream&gt; #include &lt;iomanip&gt; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
15.09.2010, 20:54 #16
При дефайне не отводится память под переменную, компилятор заменяет все вхождения M_PI на соответствующее число.
1
asics
Freelance
Эксперт С++
2847 / 1784 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
15.09.2010, 21:24 #17
Я всегда думал что
C
1
#define M_PI 3.14
ето Си а
C++
1
const float M_PI = 3.14
ето С++
0
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.09.2010, 04:42 #18
Цитата Сообщение от dihlofos Посмотреть сообщение
REALIST07
M_PI - константа, чтобы задать значение числа пи. Правда зачем она здесь, когда M_PI уже определено в библиотеке math. Так что можно удалить.
не, эта штука не стандартная
1
dihlofos
Бродяга
303 / 257 / 17
Регистрация: 27.08.2010
Сообщений: 553
16.09.2010, 06:13 #19
Цитата Сообщение от accept Посмотреть сообщение
не, эта штука не стандартная
Видно зависит от компилятора? В билдере нормально пашет. В студии заработало после:

C++
1
2
#define _USE_MATH_DEFINES
#include <cmath>
Цитата Сообщение от REALIST07 Посмотреть сообщение
А там хоть бери хоть не бери корень все равно получается 1.41421 при а=1 в=1 х=90
корень из 2 = 1.41421, всё правильно.
Почитайте
1
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.09.2010, 07:23 #20
Цитата Сообщение от dihlofos
Видно зависит от компилятора?
это значит, что она вообще может отсутствовать
math.h есть в стандарте и всё, что в нём есть, тоже есть в стандарте, а вот если в стандарте чего-нибудь нет, а в компиляторе есть, то это - расширение компилятора
в gcc нету
а не, есть
Код
/* Some useful constants.  */
#if defined __USE_BSD || defined __USE_XOPEN
# define M_E            2.7182818284590452354   /* e */
# define M_LOG2E        1.4426950408889634074   /* log_2 e */
# define M_LOG10E       0.43429448190325182765  /* log_10 e */
# define M_LN2          0.69314718055994530942  /* log_e 2 */
# define M_LN10         2.30258509299404568402  /* log_e 10 */
# define M_PI           3.14159265358979323846  /* pi */
# define M_PI_2         1.57079632679489661923  /* pi/2 */
# define M_PI_4         0.78539816339744830962  /* pi/4 */
# define M_1_PI         0.31830988618379067154  /* 1/pi */
# define M_2_PI         0.63661977236758134308  /* 2/pi */
# define M_2_SQRTPI     1.12837916709551257390  /* 2/sqrt(pi) */
# define M_SQRT2        1.41421356237309504880  /* sqrt(2) */
# define M_SQRT1_2      0.70710678118654752440  /* 1/sqrt(2) */
#endif
C
1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
 
#define __USE_BSD
#include <math.h>
 
int main(void)
{
    printf("%f" "\n", M_PI);
    return 0;
}
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
16.09.2010, 12:44 #21
accept,
При компиляции в gcc можно ещё использовать ключ -m, тогда константы будут работать.
0
accept
4822 / 3243 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.09.2010, 12:55 #22
не, чтобы привязать библиотеку, нужно юзать -lm
но сами константы находятся в math.h (они просто чуть-чуть заблокированы)
0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
16.09.2010, 12:57 #23
accept,
А, да, -lm... Но мне никогда не приходилось никаких дополнительных манипуляций совершать... #include <math.h> в исходнике, -lm при компиляции и всё окей...
0
accept
16.09.2010, 13:13
  #24

Не по теме:

а какой у тебя компилятор ?

0
silent_1991
Эксперт С++
4964 / 3040 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
16.09.2010, 13:16 #25
accept,
Давно это было, когда я в последний раз в лине работал, сейчас версию не вспомню... Но это было,когда вышла федора 11, вот какой в ней по дефолту стоял, тем я и пользовался...
0
accept
16.09.2010, 13:17
  #26

Не по теме:


у меня последняя федора была восьмая, там всё то же самое (нужно определять константу, иначе gcc не видит все эти M_ )
а -lm везде

0
REALIST07
Автор FAQ
Автор FAQ
176 / 176 / 13
Регистрация: 11.06.2010
Сообщений: 932
16.09.2010, 17:56  [ТС] #27
так что с задачей моей делать?надо чтобы в углах был соs
0
asics
Freelance
Эксперт С++
2847 / 1784 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
16.09.2010, 18:03 #28
Цитата Сообщение от REALIST07 Посмотреть сообщение
так что с задачей моей делать?надо чтобы в углах был соs
Твоя задача решына,и все там правильно керень з 2 = 1,4...
0
REALIST07
Автор FAQ
Автор FAQ
176 / 176 / 13
Регистрация: 11.06.2010
Сообщений: 932
16.09.2010, 18:11  [ТС] #29
У меня visual studio 2010 стоит к сведению
0
asics
Freelance
Эксперт С++
2847 / 1784 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
16.09.2010, 18:15 #30
REALIST07, и ?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.09.2010, 18:15
Привет! Вот еще темы с ответами:

В треугольнике заданы две стороны a, b и площадь S. Вычислить и вывести на экран остальные элементы треугольника. - C++
В треугольнике заданы две стороны a, b и площадь S. Вычислить и вывести на экран остальные элементы треугольника. Помогите...

Найти стороны треугольника, зная его углы и радиус описанной окружности - C++
2)Треугольник задан величинами своих углов и радиусом описанной окружности. Найти стороны треугольника.

Найти площадь прямоугольного треугольника, зная гипотенузу и прилежащий угол - C++
Подскажите, пожалуйста, что нужно изменить, чтобы заработало? #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; using...

Зная три стороны, определить, являются ли они сторонами треугольника и является ли он прямоугольным - C++
Есть три длины сторон треугольника (например 5,4,3) Нужно выяснить, существует ли такой треугольник, и прямоугольный он или нет. Прогу...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
16.09.2010, 18:15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru