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

Вычислить угол под которым брошено тело - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.85
isaak
101 / 38 / 9
Регистрация: 17.10.2010
Сообщений: 634
23.08.2012, 21:29     Вычислить угол под которым брошено тело #1
Всем доброго время суток. Написать программу, в которой по известной начальной скорости V и времени полета T определяется угол http://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha под которым тело брошено по отношению к горизонту (воспользоваться следующим соотношением
http://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha =\arcsin(\frac{g*T}{2*V})). Вот сама программа:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<cmath>
#include<iostream>
using namespace std;
int main()
{
setlocale( LC_ALL,"Russian" );
 const  double PI = 3.1415;
 const  double g = 9.8;
 double V, T, result, alpha;
   cout<<" Введите скорость:  ";
   cin>>V;
cout<<" Введите время:  ";
   cin>>T;
result = (g*T)/(2*V);
 ( result < -1  ||  result  > 1 )? (cout<<" Не верное значение:  "<<endl, exit(0)):cout<<" Такого угла не существует!  ";
  alpha = asin (result) * 180.0 / PI;
   cout<<"Значение угла равно: "<<alpha;
   system("pause");
   return 0;
}
Но она работает не правильно. Как сделать при значениях отношения http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{g*T}{2*V} меньших -1 или больших 1 выскакивало сообщение: " Не верное значение! Такого угла не существует! Введите верные значения " и только после значений удовлетворяющих данному условию, выводилось значение угла в градусах программа завершалась бы. У меня работает с точностью наоборот. При значениях V=98 и T=10 значения отношение получается 0.5 что соответствует 30 градусам у меня выскакивает ошибка внизу. Не знаю почему???? Помогите пожалуйста???? Заранее огромное спасибо за помощь.
Миниатюры
Вычислить угол под которым брошено тело  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.08.2012, 21:29     Вычислить угол под которым брошено тело
Посмотрите здесь:

C++ Вычислить угол φ (в градусах) между положениями часовой стрелки в заданное время
Вывести полное имя программы, под которым она была запущена. C++
C++ Нада вычислить угол если есть косинус этого угла
Задача по физике. С некоторой высоты под углом к горизонту брошено тело. C++
C++ Тело падает под действием силы тяжести
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
25.08.2012, 23:47     Вычислить угол под которым брошено тело #21
Можно я за него? acos возвращает в радианах. Но это значение тут же переводится в градусы (* 180.0 / PI). Перевод, естессно, делает не math.h. И по приведённой вами ссылке чёрным по белому написано: «Return Value: Principal arc cosine of x, in the interval [0,pi] radians».
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,040
25.08.2012, 23:50     Вычислить угол под которым брошено тело #22
Цитата Сообщение от isaak Посмотреть сообщение
бъясни пожалуйста же как тогда здесь math.h вычисляет значение в градусах:
а вот эта строчка ни о чем не говорит?
Цитата Сообщение от isaak Посмотреть сообщение
result = acos (param) * 180.0 / PI;
ручками приводят
Цитата Сообщение от isaak Посмотреть сообщение
180.0 / PI
можешь сделать так
C++
1
result = acos (param) * 57,29578049;
Добавлено через 1 минуту
57,29578049; это
Цитата Сообщение от ValeryS Посмотреть сообщение
в одном радиане 57,295780490442968321226628812406 градусов
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.08.2012, 23:51     Вычислить угол под которым брошено тело
Еще ссылки по теме:

C++ Вычислить угол между прямыми
Лежат ли точки на одной прямой и вычислить угол C++
Вычислить площадь четырехугольника, если угол между сторонами длиной X и Y - прямой C++

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

Или воспользуйтесь поиском по форуму:
-=ЮрА=-
Заблокирован
Автор FAQ
25.08.2012, 23:51     Вычислить угол под которым брошено тело #23
Цитата Сообщение от isaak Посмотреть сообщение
-=ЮрА=- насколько я понял наиболее верная формула по которой считает встроенная библиотека math.h есть:
ГРАДУСЫ = РАДИАНЫ*(180/acos(-1))= РАДИАНЫ*(180/PI) = РАДИАНЫ*(180/3.1416);
Да верно????
- да абсолютно, но я предпочитаю asin(1.0) который имеет значение Пи/2 (просто мне так проще).

Цитата Сообщение от isaak Посмотреть сообщение
acos (param)
- это возврат радиан на основе значение param (по памяти косинус 0,5 это Пи/3)

Цитата Сообщение от isaak Посмотреть сообщение
* 180.0 / PI
- это перевод в градусы
Имеем в итоге Пи/3*(180 / Пи) = (1/3)*180 = 60 градусов
Yandex
Объявления
25.08.2012, 23:51     Вычислить угол под которым брошено тело
Ответ Создать тему
Опции темы

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