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 :: вывод массива в цыкле [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Описание: вывод массива в цыкле
dcc0
Отправлено: 23 Апреля, 2015 - 14:36:43
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




LIME минусы в принципе понятны, но я всегда готов слушать, я же говорил, что у меня нет амбиций проф. программиста, и конкуренцию я составить не могу ( на хлеб зарабатываю видеомонтажом Улыбка)


-----
Март 2021. Бросил программирование
 
 Top
LIME
Отправлено: 23 Апреля, 2015 - 14:36:49
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




вот мелкий сейчас смотрит
буду сейчас учить именовать переменные))
если конечно автор захочет)))
(Добавление)
0 - плохо понимаемые переменные
dcc0 пишет:
$ac
это что такое? непонятно
очень хочу прочитать твой код
очень хочу
но вижу ас и хотелка отмирает
------
dcc0 пишет:
$ii
еще хуже
и кстати не уверен в правильности решения
(Добавление)
пример правильного имени
ab - firstChunck
(Добавление)
можешь любой алгоритм приводить
никто читать не удосужится
а глянь на мой псевдокод выше
даже псевдокод я постарался выразить в говорящих названиях
все понятно
все придельно ясно
уважаемо для того кто кто прочтет
 
 Top
exlant
Отправлено: 23 Апреля, 2015 - 14:59:53
Post Id



Посетитель


Покинул форум
Сообщений всего: 425
Дата рег-ции: Февр. 2015  


Помог: 14 раз(а)




а чего мой вариант никто не прокритиковал?
вроде он решал задачу...
только число элементов в массиве должно было быть кратное 4
вот немного доделал, и теперь не важна кратность столбцам..
PHP:
скопировать код в буфер обмена
  1.  
  2. $array = array(
  3.                 0  => 'Text0',
  4.                 1  => 'Text1',
  5.                 2  => 'Text2',
  6.                 3  => 'Text3',
  7.                 4  => 'Text4',
  8.                 5  => 'Text5',
  9.                 6  => 'Text6',
  10.                 7  => 'Text7',
  11.                 8  => 'Text8',
  12.                 9  => 'Text9',
  13.                 10 => 'Text10',
  14.                 11 => 'Text11',
  15.                 12 => 'Text12',
  16.                 //13 => 'Text13',
  17.                 //14 => 'Text14',
  18.                 //15 => 'Text15'
  19.             );
  20.    $colum_num = 4; //количество столбцов
  21.    $array_count = count($array);
  22.    $field_num = floor($array_count/$colum_num); //количество строчек
  23.    $rest = $array_count%$colum_num; //остаток, если количество элементов массива не кратно количеству столбцов
  24.    echo '<table border = "1">';
  25.    for($a = 0, $y = 0, $x = 0, $add = 0; $a < $array_count; $a++, $x++, $add = 0){
  26.        if($x === $colum_num){
  27.            $x = 0;
  28.            $y++;
  29.        }
  30.        if($rest){
  31.             $add = $x;
  32.             if($x > $rest)
  33.                $add = $rest;
  34.        }
  35.        
  36.        if($a%$colum_num === 0){
  37.            echo '<tr>';
  38.        }
  39.        echo '<td>',$array[$y+($x*$field_num)+$add],'</td>';
  40.        if(($a+1)%$colum_num === 0){
  41.            echo '</tr>';
  42.        }
  43.   }
  44.    echo '</table>';
  45.  
 
 Top
LIME
Отправлено: 23 Апреля, 2015 - 15:01:40
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




чет я хз
имхо слишком сложно
ставь в ряд 4 значения со смещением
всее все

я убежал теров гнобить))
 
 Top
exlant
Отправлено: 23 Апреля, 2015 - 15:10:12
Post Id



Посетитель


Покинул форум
Сообщений всего: 425
Дата рег-ции: Февр. 2015  


Помог: 14 раз(а)




LIME в том то и дело, что смещение будет разное, если есть остаток при делении...
 
 Top
LIME
Отправлено: 23 Апреля, 2015 - 15:12:19
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




exlant ненене
смещение постоянно если хочешь чтоб чтоб в столбце были линейные значения
ааааа
да нахер мне это надо?
exlant пишет:
смещение будет разное, если есть остаток при делении
как скажешь
 
 Top
exlant
Отправлено: 23 Апреля, 2015 - 15:21:03
Post Id



Посетитель


Покинул форум
Сообщений всего: 425
Дата рег-ции: Февр. 2015  


Помог: 14 раз(а)




1. случай
Text0 Text4 Text7 Text10
Text1 Text5 Text8 Text11
Text2 Text6 Text9 Text12
Text3

2.случай
Text0 Text4 Text8 Text11
Text1 Text5 Text9 Text12
Text2 Text6 Text10 Text13
Text3 Text7

1. случай смещение с начало на 4, потом на 3, и на 3
2. случай смещение с начало на 4, потом на 4, и на 3

я скорей всего чего то не понимаю, но смещение вроде как разное...
объясните в чем я не прав, хочу разобраться!
 
 Top
LIME
Отправлено: 23 Апреля, 2015 - 15:23:24
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




нет
все правильно
все ты верно сделал
могу ошибаться
только можно я не буду задерживаться ато нас там щас положат
все ок молоток
так держать
 
 Top
Tyoma5891
Отправлено: 23 Апреля, 2015 - 15:43:10
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 621
Дата рег-ции: Авг. 2013  


Помог: 5 раз(а)




кстати упростил немного вариант exlant и тоже нормально работает:
PHP:
скопировать код в буфер обмена
  1. $array = array(
  2.                 0  => 'Text0',
  3.                 1  => 'Text1',
  4.                 2  => 'Text2',
  5.                 3  => 'Text3',
  6.                 4  => 'Text4',
  7.                 5  => 'Text5',
  8.                 6  => 'Text6',
  9.                 7  => 'Text7',
  10.                 8  => 'Text8',
  11.                 9  => 'Text9',
  12.                 10 => 'Text10',
  13.                 11 => 'Text11',
  14.                 12 => 'Text12',
  15.                 13 => 'Text13',
  16.                 14 => 'Text14'
  17.                
  18.             );
  19. $count = count($array);
  20. echo '<table border = "1">';
  21.    for($i = 0; $i < $count; $i++){
  22.        if($i%4 === 0){
  23.            echo '<tr>';
  24.        }
  25.        echo '<td>',$array[$i],'</td>';
  26.        if(($i+1)%4 === 0){
  27.            echo '</tr>';
  28.        }
  29.        
  30.    }
  31.     echo '</table>';

кстати а почему
 
 Top
exlant
Отправлено: 23 Апреля, 2015 - 15:45:40
Post Id



Посетитель


Покинул форум
Сообщений всего: 425
Дата рег-ции: Февр. 2015  


Помог: 14 раз(а)




Tyoma5891 ну потому что не работает...
посмотрите внимательней условие задачи!
 
 Top
Tyoma5891
Отправлено: 23 Апреля, 2015 - 15:52:58
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 621
Дата рег-ции: Авг. 2013  


Помог: 5 раз(а)




exlant пишет:
Tyoma5891 ну потому что не работает...
посмотрите внимательней условие задачи!

а смещение , та ну это изврат точно, а я сначала подумал просто банально в четыре одинаковых колонки просто разместить без всяких смещений, надо узнать у автора у него при вставки задние не появился лишние пробелы, а то мы тут уже теорему вывели) Улыбка
 
 Top
juramaj
Отправлено: 23 Апреля, 2015 - 16:12:01
Post Id


Гость


Покинул форум
Сообщений всего: 98
Дата рег-ции: Дек. 2014  


Помог: 0 раз(а)




Спасибо, всем за помощь. Еще раз спасибо.
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Хранение данных, их вывод и обработка »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB