2012-05-19 121 views
-1

此:如何輸出英尺和英寸?

for($i = 5.0; $i < 7.0; $i++) { 
    echo $i.'<br />'; 
} 

輸出:

5 
6 

我想輸出:

5.0 
5.1 
5.2 
5.3 
5.4 
5.5 
5.6 
5.7 
5.8 
5.9 
5.10 
5.11 
6.0 
6.1 
6.2 
6.3 
6.4 
6.5 
6.6 
6.7 
6.8 
6.9 
6.10 
6.11 

如何做到這一點?

+0

我只是用一個循環中循環。 – jeroen

+0

5.12之後爲什麼會變爲6.0?這與小數有什麼關係? – Gordon

+0

@Gordon這實際上是用戶選擇高度的下拉列表,有一個拼寫錯誤,我打算在5.11之後寫入6.0,因爲小數表示英寸。 – TK123

回答

2

你基本上有兩個循環:一個從5到6,一個從1到12(在第一個裏面)。這意味着

for($i = 5; $i < 7; ++$i) { 
    for($j = 0; $j < 13; ++$i) { 
     echo $i.'.'.$j.'<br>'; 
    } 
} 

以上是希望容易理解。您可以採取的下一步是將其視爲真正的一個循環,該循環重複26次,並且其值會以不同方式影響兩個變量 - 就像一天中有1440分鐘一樣,而此循環有1440次迭代以不同方式影響掛鐘的分鐘和小時針。因此,這是相當於上面:

for($i = 0; $i < 26; ++$i) { 
    $x = 5 + floor($i/13); // starts from 5, increases by 1 every 13 iterations 
    $y = $i % 13; // starts from 0, increases to 12 then loops back to 0 etc. 
    echo $x.'.'.$y.'<br>'; 
} 

最後,您可以只需添加5 * 13 = 65到循環的開始和結束值移動5 +外循環:

for($i = 65; $i < 91; ++$i) { 
    $x = floor($i/13); 
    $y = $i % 13; 
    echo $x.'.'.$y.'<br>'; 
} 
1

使用的外環5至6個計數,並且從0到12

1
for ($i = 65; $i<91; $i++) 
{ 
    printf('%d.%d<br />', $i/13, $i % 13); 
} 
+0

這個'%d'技巧的分區結果讓我有一段時間了。很好的解決方案,但不容易消化。 – Jon

0

內環計數試試:

for($i = 5.0; $i < 7.0; $i++) { 
    for ($j = 0; $j < 12; $j++) { 
     echo $i.".".$j.'<br />'; 
    } 
} 
0

也許這將幫助

for($i = 5; $i < 7; $i++) { 
    for($j = 0; $i < 13; $j++) { 
     echo $i.'.'.$j.'<br />'; 
    } 
} 
0
for((float)$i = 0; $i < 1 ;){ 
    $i = $i+ 0.01; 
    echo $i; 
    echo "<br />"; 

} 

你可以使用..

相關問題