Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
 Аватар для Dealiss
296 / 284 / 84
Регистрация: 10.05.2013
Сообщений: 920

Генерация кода

28.11.2013, 18:44. Показов 1354. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!

Решил сделать простой скрипт генерации кода. Но вот, не получается. А всё из-за циклов.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/*  Список со всемя возможными кодами */
$res = array();
 
/*  Массив, который хранит в себе услучайно выбраные значения 0-4
    В конце каждой иттерации, сбрасывается
 */
$rand = array();
 
/*  Список всех возможных вариатов кода
    Хранит результат $rand ввиде 01234
*/
$list_rand = array();
 
/*  Массив с значениями */
$array = array(
    '46ho',
    '5781',
    'nbab',
    'esqv',
    '8AZG'
);
Делаю так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$s = 0; // точка начала цикла while
$itt = 25; // 
 
while($s < $itt)
{
    $n = 0; // точка начала цикла while
    /*  Здесь мы генерируем массив значений $rand */
    while($n < 5)
    {
        $number = rand(0, 4);
        if(array_search($number, $rand) === FALSE)
        {
            $rand[] = $number;
            $n++;
        }
    }
    
    /*  Формулируем формат полученных значений ввиде 01234*/
    $sq = "{$rand[0]}{$rand[1]}{$rand[2]}{$rand[3]}{$rand[4]}";
    
    /*  Добавляем в массив $list_rand вариант кода, если такого нету в массиве*/
    if(array_search($sq, $list_rand) === FALSE)
    {
        $list_rand[] = $sq;
        $s++;
    }
    
    /*  Сбрасываем  $rand*/
    $rand = array();
}
Вопросы:
- Как правильно узнать реальное количество возможных кодов?
- Начало точки цикла while надо начинать не с 0, а с 01234 и конец итераций 43210?
- И хочу узнать, дело только в том, что времени не хватает, или код имеет ошибки?
Если, максимальное число может быть 43210. В тоже время, число 00123 - не может быть.

Выдает ошибку:
Maximum execution time of 30 seconds exceeded
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.11.2013, 18:44
Ответы с готовыми решениями:

Генерация qr кода
Всем доброе время суток. Скачал библиотеку PHP QR Code с GitHub. Распаковал ей в /home/gagan/data/www/site.ru/phpqrcode В файле...

Генерация html-кода POST ссылки
Здравствуйте! Столкнулся с проблемой, решение которой в принципе нашел, но код не элегантный, да и не совсем подходит. по порядку: есть...

Генерация QR-кода
Всем привет. Я пока что недостаточно хорошо разбираюсь в java, помогите с вопросом, если кто может. Мне нужно написать программу для...

1
127 / 127 / 25
Регистрация: 20.11.2009
Сообщений: 498
29.11.2013, 14:16
Цитата Сообщение от Dealiss Посмотреть сообщение
array_search
11 и 22 строка, желательно использовать in_array()
Цитата Сообщение от Dealiss Посмотреть сообщение
Maximum execution time of 30 seconds exceeded
Необходимо увеличить максимальное время выполнения скрипта в php.ini

Добавлено через 7 минут
Вообще проверка на существование числа в массиве очень глупа и убивает всю идею рандома.
Почему нельзя использовать одинаковые числа?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.11.2013, 14:16
Помогаю со студенческими работами здесь

Генерация кода
Доброго времени суток. Необходимо во время выполнения создать .cs файл кода. Содержание .cs зависит от введённых в программу данных. Есть...

Генерация кода
Добрый день, ищу решение. существует базовая структура, на её основе созданы сайты для различных организаций (например организация скаутов,...

Генерация QR-кода
Привет, ребят. Уже создавала эту тему ранее, вот ссылка https://www.cyberforum.ru/visual-basic/thread1688186.html В ней ребята мне...

Динамическая генерация кода
Добрый день. Наткнулся в нете на следующее: &quot;Функция BitBlt содержала своего рода небольшой компилятор. На основе растровой...

Генерация кода М-последовательность
корректно ли написан код для G(x)=1+x^5+x^9, выход-7я ячейка //Registr_sdviga:array of byte; M_posledovatelnost:array of byte; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru