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

Форум PHP

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

 

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

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

тема: Составление расписания на php
 
 автор: Saddam   (07.12.2005 в 02:39)   письмо автору
 
 

Доброй ночи! У меня такая задача есть:

Необходимо, чтобы скрипт составлял расписания игр по алгоритму как показано в прикрепленном файле. Там составлено расписание для 4,6,8 игроков. Точно так же срикпт должен составлять расписание и для n игроков (в виде матрицы n*n). Цифрами обозначены номера туров, в которых играют между собой игроки. Вместо букв p скрипт будет подставлять имена игроков из таблицы в базе. Затем с их именами составлять расписание и снова загонять в базу полученные данные (в другую таблицу).
Главный вопрос - как этот алгоритм составления расписания реализовать в коде? Пользователь может задавать матрицу размера n*n, а скрипт исходя из размера матрицы должен генерировать сетку.

   
 
 автор: Saddam   (07.12.2005 в 13:50)   письмо автору
 
   для: Saddam   (07.12.2005 в 02:39)
 

Люди! Кто-нибудь! Ответьте :)

   
 
 автор: cheops   (07.12.2005 в 13:55)   письмо автору
 
   для: Saddam   (07.12.2005 в 02:39)
 

А что-то не очень понятно - необходимо просто создать файл с содержимым подобным тому, что приведено во вложении?

   
 
 автор: Saddam   (07.12.2005 в 16:06)   письмо автору
 
   для: cheops   (07.12.2005 в 13:55)
 

Не совсем
План действий такой:
1) Я захожу на страницу (админскую), там есть форма. В форме собственно только одно поле <input type=text name=n>. В нем я задаю размеры выходной матрицы.
2) Обработчик исходя из заданных размеров матрицы, составляет расписание по алгоритму, как в файле. Берет из базы имена игроков и подставляет их по очереди вместо буквы P (в прикрепленном файле)
3) Забивает в базу созданную матрицу.

3-ий пункт необязателен пока.
Главное сделать скрипт, который бы составлял такую матрицу, как в файле. Цифрами обозначены номера туров чемпионата.

   
 
 автор: saddam   (07.12.2005 в 23:23)   письмо автору
 
   для: Saddam   (07.12.2005 в 16:06)
 

Оч. нужна помощь :)

   
 
 автор: cheops   (08.12.2005 в 01:56)   письмо автору
 
   для: Saddam   (07.12.2005 в 16:06)
 

Так как бы второй пункт реализуется при осуществлении третьего - нужна база куда это всё будет вбиватся...

   
 
 автор: Saddam   (08.12.2005 в 16:09)   письмо автору
 
   для: cheops   (08.12.2005 в 01:56)
 

Да мне не нужна пока база. Можно на время забыть про нее! Мне главное чтобы скрипт выводил мне на страницу матрицу вида как в файле!!!

   
 
 автор: cheops   (09.12.2005 в 02:01)   письмо автору
 
   для: Saddam   (08.12.2005 в 16:09)
 

Нужный вам скрипт может выглядеть следующим образом
<?php 
  $value 
8;
  for(
$i =1$i $value$i++) $arr[] = $i;
  
array_shift($arr);
  
$arr[] = 1;
  echo 
"<pre>";
  
print_r($arr);
  for(
$i = -1$i count($arr) + 1$i++)
  {
    for(
$j = -1$j count($arr) + 1$j++)
    {
      if(
$i == $j)
      {
        echo 
"x;";
        continue;
      }
      if(
$i == -1)
      {
        echo 
"p;";
        continue;
      }
      if(
$j == -1)
      {
        echo 
"p;";
        continue;
      }
      
$index $i $j 1;
      if(
count($arr) == $j$index 2*$i 1;
      if(
count($arr) == $i$index 2*$j 1;
      if(
$index count($arr) - 1$index $index count($arr);
      if(
$index 0)  $index count($arr) - 1;
      echo 
$arr[$index].";";
    }
    echo 
"\r\n";
  }
  echo 
"</pre>";
?>

   
 
 автор: Saddam   (09.12.2005 в 11:49)   письмо автору
 
   для: cheops   (09.12.2005 в 02:01)
 

Вот спасибо :) Большой человеческое спасибо ;)

   
Rambler's Top100
вверх

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