我有这个代码。

 for(int j=0; j<=n; j++) {
     Xnew2 = j*(Y+R2)/n;
     Ynew2 = pow((((Y+R2)*(Y+R2)) - (Xnew2*Xnew2)), 0.5);
     cout<<"\n("<<Xnew2<<","<<Ynew2<<")";
 }

我希望显示所有值,但是我还想对显示的值创建一个限制,以确保Ynew2不能大于310或小于-310。半径为482.7mm,这是当前值将要到达的数字。

我该怎么做呢?我尝试在其中放置一个if循环,但是它没有用,并且我尝试的其他任何操作仅给了我一个值。有什么帮助吗?

最佳答案

尝试这个:

for(int j=0; j<=n; j++) {
    Xnew2 = j*(Y+R2)/n;
    Ynew2 = pow((((Y+R2)*(Y+R2)) - (Xnew2*Xnew2)), 0.5);

    if(abs(Ynew2) <= 310))
        cout<<"\n("<<Xnew2<<","<<Ynew2<<")";
}

我们使用abs函数获取Ynew2变量的绝对值,并将其与310进行比较。如果该值小于或等于310,则显示该点,否则不显示该点。

旁注:您应该避免使用\n并使用std::endl(如果您有适当的endl声明,则应仅使用using)。

10-06 04:11