1

我试图找到一个数学公式来避免计数器对任何循环(第一个元素、最后一个元素和增量的任何数字)逐步递增 1。

示例 1(一个 for 循环):

MIN=第一个元素,MAX=最后一个元素,HOP=增量(变量 i)

带计数器:

c = 1;
for i = MIN:HOP:MAX
    c = c + 1;
end

无计数器:

for i = MIN:HOP:MAX
    c = floor((i-MIN)/HOP) + 1;
end

示例 2(两个 for 循环):

MINI=第一个元素,MAXi=最后一个元素,HOPi=增量(变量 i)

MINj=第一个元素,MAXj=最后一个元素,HOPj=增量(变量 j)

带计数器:

c = 1;
for i = MINi:HOPi:MAXi
    for j = MINj:HOPj:MAXj
        c = c + 1;
    end
end

无计数器:

for i = MINi:HOPi:MAXi
    for j = MINj:HOPj:MAXj
        x = (floor((i-MINi)/HOPi)+1);
        y = (floor((j-MINj)/HOPj)+1);
        c = x*y+(x-(floor((MAXi-MINi)/HOPi)+1))*((floor((MAXj-MINj)/HOPj)+1)-y);
    end
end

有两个for循环的c公式有什么简化吗?

用 k for 循环 c(k) 找到 c 的任何公式?

4

0 回答 0