|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Alexander P. Russkih 2:468/75 08 Feb 2004 12:04:11 To : All Subject : Re: Выборка из массив -------------------------------------------------------------------------------- .MSGID: 2:468/75@fidonet 0d8dd243 .REPLY: 2:5056/30 40256231 .RFC-Path: home.dialup!not-for-mail .RFC-Message-ID: <c04u2b$285$1@home.dialup> .RFC-NNTP-Posting-Host: home.dialup .RFC-X-Trace: home.dialup 1076231051 2309 192.168.1.1 (8 Feb 2004 09:04:11 GMT) .RFC-X-Complaints-To: usenet@home.dialup .RFC-NNTP-Posting-Date: Sun, 8 Feb 2004 09:04:11 +0000 (UTC) .RFC-X-Accept-Language: ru, uk, en-us, en .RFC-In-Reply-To: <1076191793@f30.n5056.z2> From: "Alexander P. Russkih" <olden@home.dialup> Reply-To: rs_alex@bigfoot.com Nikolay Pichtin wrote: > Есть некий массив @mass > Hеобходимо в цикле получать данные из > этого массива блоками по 4. > Как можно такое сделать? лови решение нарисованое на одной коленке :-) ===кут хере=== #!/usr/bin/perl -w use strict; use English; my @array = (1,2,3,4,11,22,33,44,111,222,333,444,1111,2222,3333,4444,11111,22222,33333,44444 ); for (my $i=0; $i<=$#array; $i+=4) { my @var = @array[$i..$i+3]; print "$i $var[0] $var[1] $var[2] $var[3] \n"; } ===кут хере=== операция @array[$i..$i+3] называется _срезом_. в данном случае я срезаю по четыре элемента. ЗЫ: умные книжки читал? -- XMMS: --- Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031007 * Origin: Registered Linux User #341226 (2:468/75@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/1265229833.html, оценка из 5, голосов 10
|