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

Определить начальную скорость и угол - C++

Восстановить пароль Регистрация
 
isaak
101 / 38 / 9
Регистрация: 17.10.2010
Сообщений: 634
27.08.2012, 15:23     Определить начальную скорость и угол #1
Доброго время суток. Написать программу, в которой по максимальной высоте подъема H и дальности полета L определяется начальная скорость тела V и угол http://www.cyberforum.ru/cgi-bin/latex.cgi?\alpha, под которым тело брошено к горизонту. Воспользоваться соотношениями:
http://www.cyberforum.ru/cgi-bin/latex.cgi?\tan (\alpha )=\frac{4*H}{L} и http://www.cyberforum.ru/cgi-bin/latex.cgi?V = \sqrt{\frac{g*L}{\sin (2*\alpha )}}
Используя свойства тригонометрии получил следующее:
http://www.cyberforum.ru/cgi-bin/latex.cgi?\sin (2*\alpha )=\frac{2*\tan (\alpha )}{1+({\tan (\alpha )})^{2}}=\frac{8*\frac{H}{L}}{\frac{{L}^{2}+ 16*{H}^{2}}{{L}^{2}}}=\frac{8*H*L}{{L}^{2}+16*{H}^{2}}
http://www.cyberforum.ru/cgi-bin/latex.cgi?V = \sqrt{\frac{g*L}{\sin (2\alpha )}}=\sqrt{\frac{({L}^{2} + 16*{H}^{2})*g}{8*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
#include <iostream>
#include <cmath>
#include <locale>
using namespace std;
int main ()
{
double  L,  H;
double V, alpha;
const double g = 9.81;
const double Pi = 3.1416;
setlocale( LC_ALL,"Russian" );
cout<<"L = ";cin>>L;
cout<<"H = ";cin>>H;
alpha = atan (4*H/L) * 180 / Pi;
V = sqrt (((g*((L*L) +  (16*H*H))/(8*H))));
 if (L = 0,  H = 0)
 {
cout << "Такого угла не существует!" << endl;
cout << "Такой скорости не существует!" << endl;
  }
  else 
  {
cout << "Угол равен " << alpha <<endl;
cout << "Значение скорости равно: " << V <<endl;
   }
system("pause");
return 0;
}
Помогите пожалуйста правильно записать условие для http://www.cyberforum.ru/cgi-bin/latex.cgi?L\neq 0 и
http://www.cyberforum.ru/cgi-bin/latex.cgi?H\neq 0???? Заранее огромное спасибо.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Deviaphan
Делаю внезапно и красиво
Эксперт C++
 Аватар для Deviaphan
1283 / 1217 / 50
Регистрация: 22.03.2011
Сообщений: 3,744
27.08.2012, 15:27     Определить начальную скорость и угол #2
C++
1
if (L = 0,  H = 0)
заменина
C++
1
if( L != 0 && H != 0 )
Если нужно не И, а ИЛИ, то вместо && напиши ||
Andsteadur
152 / 136 / 3
Регистрация: 23.05.2009
Сообщений: 275
27.08.2012, 15:29     Определить начальную скорость и угол #3
C++
1
2
3
4
5
if (L && H)
{
cout << "Такого угла не существует!" << endl;
cout << "Такой скорости не существует!" << endl;
}
isaak
101 / 38 / 9
Регистрация: 17.10.2010
Сообщений: 634
27.08.2012, 16:53  [ТС]     Определить начальную скорость и угол #4
Не много не правильно задал условия так как арктангенс бесконечности равен http://www.cyberforum.ru/cgi-bin/latex.cgi?\frac{\pi*n }{2}, где n только целые числа, то требуется выполнения только одного условия
http://www.cyberforum.ru/cgi-bin/latex.cgi?H\neq 0 то есть
C++
1
if( H != 0 )
Andsteadur при вашем условие
и:
C++
1
2
3
4
5
if (L && H)
{
cout << "Такого угла не существует!" << endl;
cout << "Такой скорости не существует!" << endl;
}
программа не корректно работает.
Andsteadur
152 / 136 / 3
Регистрация: 23.05.2009
Сообщений: 275
27.08.2012, 17:14     Определить начальную скорость и угол #5
Пардоньте
C++
1
if (!L || !H)
Yandex
Объявления
27.08.2012, 17:14     Определить начальную скорость и угол
Ответ Создать тему
Опции темы

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