Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Сгенерировать числа
 
 автор: Minus   (26.01.2009 в 14:44)   письмо автору
 
 

здравствуйте.
Сейчас задался таким вопросом.
как можно на PHP сгенерировать всевозможные комбинации опеределенных цифр?
допустим у меня есть числа 0,1,2,3 как сделать чтобы скрипт вывел всевозможные комбинации из этих цифр?
надеюсь понятно объяснил =)

  Ответить  
 
 автор: Николай2357   (26.01.2009 в 15:38)   письмо автору
 
   для: Minus   (26.01.2009 в 14:44)
 

Не совсем понятно . Все возможные или всевозможные, уточните пожалуйста.

  Ответить  
 
 автор: nek-v   (26.01.2009 в 18:46)   письмо автору
 
   для: Minus   (26.01.2009 в 14:44)
 

хм, а чем вам rand(); не угодил?

  Ответить  
 
 автор: Minus   (26.01.2009 в 19:07)   письмо автору
 
   для: nek-v   (26.01.2009 в 18:46)
 

rand не подойдет.
надо чтобы вывело список всевозможных комбинаций цифр из тех четырех что я вначале написал.

  Ответить  
 
 автор: Valick   (26.01.2009 в 19:09)   письмо автору
 
   для: nek-v   (26.01.2009 в 18:46)
 

Тут не ранд, если я правильно понял.
Имеем 0 и 3
Должны получить все комбинации
00
03
30
33
ту Minus:
Я правильно расшифромал мысли?

  Ответить  
 
 автор: Minus   (27.01.2009 в 08:05)   письмо автору
 
   для: Valick   (26.01.2009 в 19:09)
 

Да. Да. Именно это =)

  Ответить  
 
 автор: Trianon   (27.01.2009 в 09:13)   письмо автору
 
   для: Minus   (27.01.2009 в 08:05)
 

<?php
  $num 
4;
  for( 
$max pow($num$num), $i 0$i $max$i++)
     echo 
str_pad(base_convert($i,10,$num), $num'0'STR_PAD_LEFT).'<br/>';
?>

  Ответить  
 
 автор: Loki   (27.01.2009 в 09:39)   письмо автору
 
   для: Trianon   (27.01.2009 в 09:13)
 

сдается мне, все же имелись ввиду четыре произвольные цифры

  Ответить  
 
 автор: Minus   (27.01.2009 в 09:55)   письмо автору
 
   для: Trianon   (27.01.2009 в 09:13)
 

Не. нужно не такое.
вы наверно меня плохо поняли.. ((
Сейчас попробую на примере объяснить.

Допустим у меня имеются цифры 0 и 1. должны получить двухзначное число всех комбинаций моих цифр:

00
01
10
11

  Ответить  
 
 автор: Trianon   (27.01.2009 в 10:09)   письмо автору
 
   для: Minus   (27.01.2009 в 09:55)
 

Ну так измените четверку на двойку - будет Вам двухзначное число всех комбинаций.

  Ответить  
 
 автор: Valick   (27.01.2009 в 10:10)   письмо автору
 
   для: Trianon   (27.01.2009 в 10:09)
 

Числа я так понял могут быть не попорядку.

<PRE>
<?php
$mass 
str_split("0135");
foreach(
$mass as $value1)
   {
   foreach(
$mass as $value2)
      {
      foreach(
$mass as $value3)
         {
         foreach(
$mass as $value4)
            {
            
$bruteforce[] = "$value1$value2$value3$value4";
            }
         }
      }
   }
print_r ($bruteforce);
?>
</PRE>

Примерно вот так

  Ответить  
 
 автор: Trianon   (27.01.2009 в 16:49)   письмо автору
 
   для: Valick   (27.01.2009 в 10:10)
 

а если цифр не четыре?
У скрипта присутствует зависимость кода от числа цифр.

В мой же код достаточно добавить strtr(....., '0123456789', $set);

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования