1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Занесение в массив и сравнение значений с ним.

Тема в разделе "Web - программирование", создана пользователем spzrk, 19 сен 2008.

  1. spzrk

    spzrk Гость

    Репутация:
    0
    Всем доброго времени суток...
    Мне нужно сделать выборку нескольких случайных элементов, так, чтобы они не повторялись.
    Не могу разобраться с массивом.
    Код:
    <html>
    <body>
    <?php
    $i = 0;
    $imax = 14;
    $max = 30;
    $array = array();
    #$rnd = rand (1,$max);
    #$array[$i]= $rnd;
    while ($i <= $imax) {
    $rnd = rand (1,$max);
    if $rnd != $array[$i] {
    $array[$i]= $rnd;
    echo "<br>".$rnd;
    $i=$i+1;
    }
    }
    #echo $array[$i];
    ?>
    </body>
    </html>
     
  2. spzrk

    spzrk Гость

    Репутация:
    0
    Ещё новичок в пхп, не знаю как правильнее сделать.

    Я хочу вывести 15 рандомных чисел так, чтобы они не пвторялись.
    Для этого решил создать массив и вводить туда каждое выбранное число.
    В дальнейшем проверяю выбранное число с элементами массива. При совпадении выбираю число заного, а при совпадении зановсим его в массив и выбираем следующее.

    На выходе получается белый экран.
    То ли где-то знак упустил, то ли с массивами перемудрил.
     
  3. spzrk

    spzrk Гость

    Репутация:
    0
    Я задумал сделать проверку вот так, но видно ступил. Ведь проверит только одно значение:
    if $rnd != $array[$i] { $array[$i]= $rnd; echo "<br>".$rnd; $i=$i+1; }

    Подскажите как луче оранизовать проверку. Через циклы for или while?
     
  4. Vovochka

    Vovochka Гость

    Репутация:
    0
    Тут не нужны форы. Тут нужно использовать ассоциативные массивы.
    Код:
    while (count($temp) !== 15) {
    $temp[ rand() ] = 1;
    }
    $my_numbers = array_keys($temp);
    Красиво и легко.
     
  5. Vovochka

    Vovochka Гость

    Репутация:
    0
    Ну повториться и повториться... Нового элемента в массив не добавиться. Будет крутиться в цикле пока не наберет 15 уникальных ключей.
    Какие нужны ошибки? Зачем?
     
Загрузка...
Похожие Темы - Занесение массив сравнение
  1. Karatist
    Ответов:
    0
    Просмотров:
    25
  2. Karatist
    Ответов:
    4
    Просмотров:
    74
  3. D3ad ARbuZzz
    Ответов:
    0
    Просмотров:
    122
  4. никитан10
    Ответов:
    8
    Просмотров:
    109
  5. Faradei
    Ответов:
    0
    Просмотров:
    394

Поделиться этой страницей