Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Проверка чисел в массиве
Покинул форум
Сообщений всего: 116
Дата рег-ции: Нояб. 2009
Помог: 0 раз(а)
Имеется массив с числами.
При проходе по массиву нужно проверять каждую цифру и цифру которая следует за ней по определенным правилам.
2 правила:
1. След цифра не может быть, например:
за каждой цифрой от 1 до 9 не может быть такая же цифра , а так же цифры 15-20;
2. След цифра может быть, например:
за каждой из цифр 15-20 может быть только 10-14 а так же цифра 22;
Таких видов может быть довольно много , но все они подчиняются этим 2м правилам.
Вариант со вложенными переключателями(switch) либо if-else , я знаю , но код получается на 300-400 строк...
Так же вариант , предварительно создать массивы с цифрами которые могут идти след. и не могут и проверять с помощью in_array();
Интересуют варианты отличные от этих)
OrmaJever
Отправлено: 03 Февраля, 2011 - 23:39:07
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Загнать масив в цыкл, посколько php не умеет видеть будущее то работать будем с этим значение и преведущим (а не следуйщим). И переписывая в новый масив проверять эти 2 условия, если проходят то заисывать в новый масив если нет то ити на следуйщий цыкл.
А что вообще делает данный код?) Я чето суть не могу уловить...)))))
LEONeso
Отправлено: 05 Февраля, 2011 - 11:00:18
Посетитель
Покинул форум
Сообщений всего: 499
Дата рег-ции: Янв. 2010 Откуда: Россия, Москва
Помог: 1 раз(а)
annihilus, делает проверку данных массива $array.
Проверяет, чтоб не было соответствий среди ключей массива и их значений, и соотвествий среди массива$array_s и его ключей ... если условие не выполняется, происходит прерывание цикла for, но не foreach - цикл работает, проверяя значения массива $array с значениями массива $array_s и далее первые строки объяснения (выше-выше)
----- Для некоторых лучший способ написать что-нибудь осмысленное - это сесть _опой на клавиатуру.
JustUserR
Отправлено: 06 Февраля, 2011 - 16:44:53
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
annihilus Использование языка PHP предполагает возможность осуществления перевода информацилонных полей в увроянях трактования рассичтываемых данных и элементах исполняемого потока кода - таким образом для осуществления решения предполагаемой задачи допустимо произвести создание генератора целевого PHP-кода основанного на программном описании системы проверки информационных полей и обеспечении ее дальнейшего представления в виде элементоа исполняемого потока кода
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.