X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Не понимаю я этого :’(
Banderas
Banderas
Topic Starter сообщение 8.5.2009, 21:50; Ответить: Banderas
Сообщение #1


Вот учусь дальше, но вот фигня, уже второй код с книги переписал, не понимаю что я там на карякал :P Думаю смысл с этого что я перепечатываю книгу, решил тут спросить, ато типа истерика-депрессия, аж слезы на глаза накатываются :P
Вообщем, что это за фигня, что это я перепечатал?
<?php
function array_param($Arr)
{
$max=$min=$Arr[0];
$max_ind=$min_ind=0;
$avg=0;

foreach($Arr as $k=>$v)
  {
if ($max < $v) {$max=$v; $max_ind=$k;}
if ($min > $v) {$min=$v; $min_ind=$k;}
$avg = $avg + $v;
  }

$avg = $avg / count($Arr);

$Res[]=$max_ind;
$Res[]=$min_ind;
$Res[]=$avg;
return $Res;
}

for ($i=0; $i<10; $i++)
$Arr[]=$i;

foreach (array_param($Arr) as $v) echo "$v";
?>
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 9.5.2009, 0:23; Ответить: ZiTosS
Сообщение #2


<?php

// функция отыскания в заданном одномерном массиве цифр (минимум, максимум, среднее значение всех величин)
function array_param($Arr)
{
$max = $min = $Arr[0]; // создаём переменные min и max и заносим в них значения 0-го элемента массива
$max_ind=$min_ind=0; // индексы тоже нулевые
$avg=0; // это что-то пока не известное мне

/* цикл обходит весь массив, который передан в функцию. $k - текущий ключ, $v - текущее значение */
foreach($Arr as $k=>$v)
{
   if ($max < $v) {$max=$v; $max_ind=$k;} // если последнее максимальное < текущего, заносим текущее как max
   if ($min > $v) {$min=$v; $min_ind=$k;}  // если последнее минимальное > текущего, заносим текущее как min
   $avg = $avg + $v; // суммируем в переменную $avg все значения массива
}

$avg = $avg / count($Arr); //среднее значение(сумма/число_элементов)

   $Res[]=$max_ind; // заносим в конец массива(в данном случае в $Res[0]) индекс максимального
   $Res[]=$min_ind; // заносим в конец массива(в данном случае в $Res[1]) индекс минимального
   $Res[]=$avg; // заносим в конец массива(в данном случае в $Res[2]) среднее значение
   return $Res; //Возвращаем массив $Res = array(индекс_максимального, индекс_минимального, среднее_значение)
}

/* ТЕСТОВАЯ ПРОГРАММА */

for ($i=0; $i<10; $i++)
   $Arr[]=$i; // заносим в массив $Arr по очереди значения с 0 по 9

/* array_param($Arr) возвращает массив из 3 элементов (max, min, avg) */
foreach (array_param($Arr) as $v) // обходим  по очереди в цикле все 3 значения
   echo $v; // печатаем текущее значение
?>


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


Поблагодарили: (0)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


 



RSS Текстовая версия Сейчас: 28.3.2024, 19:06
Дизайн