|
|
|
|
|
для: hammet
(22.10.2007 в 22:56)
| | Хотя Drago уже "помог", всё же: что тут сложного? Напишите функцию, определяющую особый элемент или нет. (передать в нее одномерный массив и номер проверяемого элемента. Если он - "особый" вернуть true, иначе false). Затем применить эту функцию к каждому элементу матрицы. Если функция вернет true - увеличить счетчик. | |
|
|
|
|
|
|
|
для: hammet
(22.10.2007 в 22:56)
| | Наверное, что-то вроде этого. Потестируйте.
<?php
//генерируем случайную матрицу и выводим ее на экран
$matrix = array();
$n = rand(3, 9);
$m = rand(3, 9);
for($i=0; $i <= $m; $i++)
for($j=0; $j <= $n; $j++)
echo "<b>".($matrix[$i][$j] = rand(1, 9))."</b><sub>[$i,$j]</sub>".(($j > 0 and $j % $n == 0) ? "<br>" : " ");
echo "<br><br>";
//считаем кол-во "особых" элементов
$count = 0;
$result = "";
for($i=0; $i < count($matrix); $i++)
{
for($j=1; $j < count($matrix[$i])-1; $j++)
{
$l = false;
$r = false;
for($k=$j-1; $k >= 0; $k--)
if ($matrix[$i][$k] >= $matrix[$i][$j])
{
$l = true;
break;
}
for($k=$j+1; $k <= count($matrix[$i])-1; $k++)
if ($matrix[$i][$k] <= $matrix[$i][$j])
{
$r = true;
break;
}
if (!$l and !$r)
{
$result .= "<b>{$matrix[$i][$j]}</b><sub>[$i,$j]</sub> ";
$count++;
}
}
}
//выводим результат
echo "k = $count, ($result)";
?>
|
| |
|
|
|
|
|
|
|
для: fxsektor
(22.10.2007 в 22:55)
| | да, имеется ввиду двумерный массив. | |
|
|
|
|
|
|
|
для: bronenos
(22.10.2007 в 22:51)
| | конечно же ВСЕ элементы в строке.
Например строка матрицы:
1 2 3 4 5 - тут элементы 2, 3, 4 являются особыми
или еще
1 2 3 3 4 - тут только элемент 2 является особым. | |
|
|
|
|
|
|
|
для: bronenos
(22.10.2007 в 22:51)
| | интересно, приведенная матрица это двумерный массив? | |
|
|
|
|
|
|
|
для: hammet
(22.10.2007 в 22:34)
| | все должны быть больше этого элемента или только самый соседний? | |
|
|
|
|
|
|
| Столкнулся с тем что не помню протых основ работы с матрицами, передо мной тоит задача приблизительно такого плана: дана целочисленная матрица размером NxM. Определить k–количество “особых” элементов матрицы, считая элемент “особым”, если в его строке слева от него находятся элементы, меньшие его, а справа – большие.
Вобщем если кто-то натолкнет на мысль - буду очень принателен....
PS во всем виноват вечер понедельника :) | |
|
|
|
|