Member 14348682 Ответов: 3

Как сделать непрерывную полярность и радиальную полярность с помощью C++


1.Я ХОЧУ ЗНАТЬ, КАК СДЕЛАТЬ НЕПРЕРЫВНУЮ ПОЛЯРНОСТЬ, КОТОРАЯ ИМЕЕТ БОЛЬШЕ ТОЧЕК СТАНЦИИ ДО БЕСКОНЕЧНОСТИ.
2. Я НЕ ЗНАЮ, КАК СДЕЛАТЬ РАДИАЛЬНУЮ ПОЛЯРНОСТЬ С ТРЕМЯ ТОЧКАМИ.

Что я уже пробовал:

//Program to compute continuous polar 
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
float direction,distance(d),y,x,Delta_y,Delta_X,T1,T2,T3,Bm1,Bm2;
std::cout<<"Enter the coordinates x,y and press Enter"<<endl;
cin>>x,y;
std::cout<<"Enter the direction and press Enter"<<endl;
cin>>direction;
std::cout<<"Enter the distance(d) and Press Enter"<<endl;
cin>>distance(d);
Delta_Y= Y1 + distance(d)*sin(direction);
Delta_x=x1 + distance(d)*cos(direction);

y2 = y1 + distance(d)*sin(direction);
x2 = x1 + distance(d)*cos(direction);

Display (y2,x2)

Rick York

Во - первых, ключ CapsLock-это ваш друг. Кричать невежливо, а писать заглавными буквами-значит кричать.

Что именно вы спрашиваете : непрерывное полярное что? радиально-полярное что?

Rick York

Мой предыдущий вопрос-это реальный вопрос. Мы не сможем вам помочь, если не поймем, о чем вы просите. Прилагательное "полярный" без существительного не дает четкого указания, а "радиальный полярный" и "непрерывный полярный" - это скорее прилагательные, которые ничего не значат.

Я могу сказать вам три вещи - я вижу две идентичные последовательности кода, которые должны быть превращены в функцию. Я также вижу объявление, которое не имеет никакого смысла, что так всегда : float distance(d). Это выглядит как объявление функции, но d нигде не определен. Другое дело : строка "cin >> x,y" не собирается компилироваться правильно. Если вы не хотите анализировать строки текста, вам нужно ввести значения отдельно.

3 Ответов

Рейтинг:
14

Member 14348682

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

#include<iostream>
#включить<cmath>
использование пространства имен std;
тап_п()
{
направление поплавка,расстояние,y,x,Delta_y,Delta_X;
std::cout<<"введите координаты x и нажмите Enter"<<endl;
cin>>x;
std::cout<<"введите координату y и нажмите Enter"<<endl;
cin>>y;
std::cout<<"введите направление и нажмите Enter"<<endl;
cin>>направление;
std::cout<<"введите расстояние и нажмите Enter"<<endl;
cin>>расстояние;
Delta_Y= Y1 + расстояние*sin(направление*(0.01475));
Delta_x=x1 + расстояние*cos(направление*(0,01475));

У2 = У1 + Delta_Y;
Х2 = Х1 + Delta_x ;

std::cout<<"координаты Y2,X2 = "<


Rick York

Считается дурным тоном публиковать свое собственное решение подобным образом, особенно дважды.

Итак, что такое 0.01475? Казалось бы, это коэффициент преобразования градусов в радианы, но это неверное значение. Лучше всего объявить "магические" значения константами с описательным именем. Если предполагается, что это коэффициент градуса к радианам, вы должны объявить его примерно так : const double DegToRad = M_PI / 180.0; M_PI-это константа, определенная в стандартном заголовке, обычно math.h. дело в том, что вы никогда не должны использовать магические числа буквально, особенно когда их значение не очевидно.

Рейтинг:
1

Member 14348682

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

#include<iostream>
#включить<cmath>
использование пространства имен std;
тап_п()
{
направление поплавка,расстояние,y,x,Delta_y,Delta_X;
std::cout<<"введите координаты x и нажмите Enter"<<endl;
cin>>x;
std::cout<<"введите координату y и нажмите Enter"<<endl;
cin>>y;
std::cout<<"введите направление и нажмите Enter"<<endl;
cin>>направление;
std::cout<<"введите расстояние и нажмите Enter"<<endl;
cin>>расстояние;
Delta_Y= Y1 + расстояние*sin(направление*(0.01475));
Delta_x=x1 + расстояние*cos(направление*(0,01475));

У2 = У1 + Delta_Y;
Х2 = Х1 + Delta_x ;

std::cout<<"координаты Y2,X2 = "<


Рейтинг:
0

Richard MacCutchan

Учитывая, что почти ни одна из ваших переменных не определена, это даже не будет компилироваться. И что должна делать следующая строка?

cin>>distance(d);


Rick York

это идет рука об руку с объявлением : float distance(d) и всеми ссылками на него.

Richard MacCutchan

Что ж d нигде не определен, и даже если он есть, то все равно не будет компилироваться.