2016-11-11 76 views
1
i = 0 
while i < 84 do 
    something.Position(vectorPosInit()+Vector(0,i,20+(i%12)*12)) 
end 

我的問題是這樣的: 我怎樣才能使變量i爲1,每12圈增加而不進行新的變量,但使用的數學?需要通過1數學增加變量每x循環

凡說這應該只使用變種i和數學

矢量僅1每12圈增加(0,(在這裏),20 +(I%12)* 12)

+0

你使用什麼編程語言? – Martheen

+0

我正在使用lua。 –

+0

您將需要一個計數器來計算循環次數,但是沒有辦法繞過它。 – LutzL

回答

1
local i = 0 
for n = 1,84 do 
    if n%12==0 then 
     i = i + 1 
    end 
end 

你是指那樣的事情?

+0

等等,不,這不是我所需要的,對不起。 –

+0

我需要(這裏)每12個循環增加1而不改變變量。這裏有一個可能的數學解決方案。 –

+0

@janemcplain我每增加12個循環就會增加1。 – warspyking

0

我發現一種解決方法

i = 0 
while i < 84 do 
    something.Position(vectorPosInit()+Vector(0,math.floor(i/12),20+(i%12)*12)) 
end 

通過添加math.floor(I/12),這是一個可行的解決方案?

+0

是的,這是非常直接和最常見的解決方案。 –

+0

'對於i = 0,83做'有點短 –

+0

'對於y = 0,6對於z = 20,152,12做do ... + Vector(0,y,z)end end'是相同的,但是更多容易明白。 –