首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将for循环转换为数学函数/表达式?

如何将for循环转换为数学函数/表达式?
EN

Stack Overflow用户
提问于 2019-08-05 18:13:38
回答 1查看 135关注 0票数 1

我有一些for循环形式的代码,这对于编程来说很好,但如果我想在论文或文章中发布该算法,就不是这样了。因此,我想以数学表达式的形式来编写该算法。

该算法本质上在于返回验证for循环内部条件的迭代

代码语言:javascript
复制
for(i=0; i<n; i++){
  if(min_x + i*db <= theta <= min_x + (i+1)*db)
    break;
  else if(min_x > theta)
    break;
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-05 18:36:55

下面是一个表达式,如果第二行中的第二个不等式是<而不是<=。换句话说,如果你的代码行是

代码语言:javascript
复制
if(min_x + i*db <= theta < min_x + (i+1)*db)

我的表达式还假设db是正的。如果允许它为零(产生除以零的错误)或负数,事情就会变得更加奇怪。

代码语言:javascript
复制
i = min(n, int(max(theta - min_x, 0) / db))

int可以由最大整数函数的常规符号之一来表示,例如常规方括号或没有上部水平线的方括号。

注意:对于处理for循环正常退出而不是break退出的情况,我要向@aka.nice致敬。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57356481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档