【发布时间】:2011-12-01 10:03:02
【问题描述】:
向量将点指向一个矩形。我希望能够取最低和最高的复数并将其分配给 2 个不同的复数。我只尝试了下面的最低值,但它似乎没有找到最低值,只返回第一个元素。
vector < complex<double>* > xs;
typedef typename vector < complex<double>* >::iterator Iter;
xs.push_back(&pointa);
xs.push_back(&pointb);
xs.push_back(&pointc);
xs.push_back(&pointd);
for (Iter p = xs.begin(); p != xs.end(); ++p)
{
if((*p)->real()<(*p+1)->real() && (*p)->imag()<(*p+1)->imag())
{
double a = (*p)->real();
double b = (*p)->imag();
complex <double> botleft_1(a,b);
}
else
{
}
}
有什么建议吗?
【问题讨论】:
-
格式化你的代码怎么样?
-
我认为您需要澄清“最低复数”的含义。您希望如何比较两个复数? |你|
-
为了在数学上正确,没有最低复数之类的东西(它们没有可比性)。你到底在找什么?也许您想要的是模数最低的数字?