простой логический вопрос сравнения переменных - PullRequest
0 голосов
/ 17 декабря 2009

Если у меня есть переменные с числами, как определить, какие из трех имеют наибольшее значение?

Ответы [ 5 ]

7 голосов
/ 17 декабря 2009

Вы можете либо вручную пройтись по ним и извлечь первые 3 (сохраняя информацию, имеющуюся у вас до сих пор в той или иной форме), либо просто отсортировать их все и взять верхние 3

1 голос
/ 18 декабря 2009

Я не хочу говорить, что я новичок, потому что я так не думаю. Однако на этот вопрос было довольно сложно ответить. Я пишу PHP всего около 8 месяцев, и я думаю, что есть гораздо лучший способ добиться такого эффекта. Основываясь на моем наборе навыков, я решил использовать 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, добавлять один к $ i для каждой итерации
  • Эхо элемента массива

Удачи!

1 голос
/ 17 декабря 2009

Это действительно зависит от языка, который вы используете.

Я бы предложил поместить их все в массив, отсортировать их от наивысшего к низшему, и тогда первые три элемента будут самыми высокими.

0 голосов
/ 18 декабря 2009

Не забывайте, что здесь есть несколько странных случаев:

  1. Случай, когда наибольшее значение встречается более 3 раз, поэтому нет единственного правильного ответа. Например, если существует дюжина переменных со значением ноль.

  2. Если у вас есть менее 3 переменных для такой программы, может возникнуть проблема.

0 голосов
/ 17 декабря 2009

Вы можете отсортировать их в порядке убывания, и первые три будут теми, которые вам нужны.

...