2009-12-17 27 views
0

如果我有變量與數字如何找出哪些是最高值的三個?比較變量的簡單邏輯問題

+0

對它們進行排序並取前三位。 – 2009-12-17 20:20:17

+1

這是如何標記爲與編程無關的? – 2009-12-17 20:28:15

+0

[不要標記](http://meta.stackexchange.com/questions/43879/anti-tags-valid-use-or-not)[與編程無關。](http://meta.stackexchange .COM /問題/ 10216 /可以-WE-禁止最的用的,屬於上-XXXXXXX-和不編程有關的標籤) – 2010-04-08 19:42:00

回答

1

我不想說我是新生兒,因爲我不認爲我是。然而這個問題很難回答。我只用了大約8個月的PHP編碼,而且我認爲有更好的方法來實現這樣的效果。根據我的技能我選擇使用PHP以及與此想出了:

<?php 

$variable = array(); 
$variable[1] = 15; 
$variable[2] = 30; 
$variable[3] = 9; 
$variable[4] = 86; 
$variable[5] = 46; 
$variable[6] = 12; 
$variable[7] = 86; 

## Clean the array of duplicates 
$variable = array_unique($variable); 

## Sort array from greatest to lease in DESC order 
rsort($variable); 


for ($i = 0; $i < 3; $i++): 
    echo $variable[$i]."<br />"; 
endfor; 

?> 

擊穿

  • 首先聲明你的陣列
  • 那麼你的數組項
  • 清潔與陣列「 array_unique「刪除重複值
  • 使用」rsort「從最大到最小排序數組
  • 啓動for循環其中$ i等於0,執行,而$ i是小於3,添加一個$我每次迭代
  • 回聲數組項

祝你好運!

7

你可以通過它們可以手動進行迭代,前3名(保持你至今以某種形式的信息),或只是排序所有這些,取前3

1

這真的取決於語言,你」重新使用。

我會建議把它們全部放在一個數組中,按照從高到低的順序排列它們,然後前三個元素將會是最高的。

0

您可以按降序對它們進行排序,前三項將是您想要的。

0

不要忘了,這裏有幾個奇怪的情況:

  1. 其中最高值出現3次以上,這樣不僅僅有一個正確答案的情況。例如,如果有十幾個變量的值都爲零。

  2. 如果你有這樣一個程序少於3個變量可能有問題。