C++ Fortran 或 Python 中的 If 条件含义
C++ code If condition meaning in Fortran or Python
我一直在尝试通读C++代码,想知道是否有人可以提供帮助。所以,是片段:
bool res;
if(res=(D<0)) {u2_=u2= C>0 ? atan2(A,B) : atan2(-A,-B); D=0;}
else
{
D = sqrt(D);
const realfp err = M*y1_+N*x1_-data.K*y1_*x1_;
const realfp err_= M*y2_+N*x2_-data.K*y2_*x2_;
if(fabs(err)<fabs(err_)) {
u2 = atan2(y1_, x1_);
u2_= atan2(y2_, x2_);}
else {
u2_= atan2(y1_, x1_);
u2 = atan2(y2_, x2_);}
}
相当于:
res = D < 0;
if (res) {
if (C > 0) {
u2_ = u2 = atan(A, B);
} else {
u2_ = u2 = atan2(-A, -B);
}
D = 0;
} else {
D = sqrt(D);
const realfp err = M*y1_+N*x1_-data.K*y1_*x1_;
const realfp err_ = M*y2_+N*x2_-data.K*y2_*x2_;
if (fabs(err) < fabs(err_)) {
u2 = atan2(y1_, x1_);
u2_= atan2(y2_, x2_);
} else {
u2_= atan2(y1_, x1_);
u2 = atan2(y2_, x2_);
}
}
我问的原因是因为我对病情感到困惑if(res=(D<0)) {u2_=u2= C>0 ? atan2(A,B) : atan2(-A,-B); D=0;}
我知道它会检查 D<0 但无法遵循后记,尤其是部分{u2_=u2= C>0 ? atan2(A,B) : atan2(-A,-B); D=0;}
.事实上,如果你能把这个if condition
翻译成python或Fortran,那就太好了。任何帮助将不胜感激!
行
{u2_=u2= C>0 ? atan2(A,B) : atan2(-A,-B); D=0;}
可以翻译成这个:
if (C >0) {
u2_ = u2 = atan2(A,B);
}
else {
u2_ = u2 = atan2(-A,-B);
}
D=0;
相关文章:
- 无论条件是否为true,if总是在c++中执行
- 多个If语句与使用逻辑运算符计算条件的单个语句的比较
- 将按位if条件转换为普通if条件
- 为什么简单的算术减法在"if"条件下不起作用?
- 如果条件不相关,我应该更喜欢两个 if 语句而不是 if-else 语句吗?
- 为什么这个if(s[j]==s[i] && i>0)条件不适用于这个[{()}]
- 在 if 语句中使用 GetKeyState 时,它会跳过条件
- 如何改进一堆在已知值范围内评估变量的 else-if 条件?
- C++ 中的"if"语句不会从左到右计算条件
- 当我的 if 条件计算结果为 false 时,我的 else 块将不会执行
- C++ GUI 条件 if 语句始终为真
- 条件if中类成员的作用域
- 将数组成员与嵌套循环进行比较,计算满足条件(if)的次数
- 子句内多个条件"if"求值顺序
- 如何在c++中循环遍历多个条件IF语句
- 紧凑的多条件if语句
- 智能指针作为条件:if (p)和if (p.get())是等价的
- 哪一个更快?函数调用或条件if语句
- 优化条件"if (m == 0 || n == 0)"的方法
- C/C++多条件If语句