Math::NumSeq::Runs -- runs of consecutive integers
use Math::NumSeq::Runs; my $seq = Math::NumSeq::Runs->new; my ($i, $value) = $seq->next;
This is various kinds of runs of integers. The runs_type parameter (a string) can be
runs_type
"0toN" 0, 0,1, 0,1,2, 0,1,2,3, etc runs 0..N "1toN" 1, 1,2, 1,2,3, 1,2,3,4, etc runs 1..N "1to2N" 1,2, 1,2,3,4, 1,2,3,4,5,6 etc runs 1..2N "Nto0" 0, 1,0, 2,1,0, 3,2,1,0, etc runs N..0 "Nto1" 1, 2,1, 3,2,1, 4,3,2,1, etc runs N..1 "0toNinc" 0, 1,2, 2,3,4, 3,4,5,6, etc runs 0..N increasing "Nrep" 1, 2,2, 3,3,3, 4,4,4,4, etc N repetitions of N "N+1rep" 0, 1,1, 2,2,2, 3,3,3,3, etc N+1 repetitions of N "2rep" 0,0, 1,1, 2,2, etc two repetitions of each N "3rep" 0,0,0, 1,1,1, 2,2,2, etc three repetitions of N
$seq = Math::NumSeq::Runs->new (runs_type => $str)
Create and return a new sequence object.
$value = $seq->ith($i)
Return the $i'th value from the sequence.
$i
$bool = $seq->pred($value)
Return true if $value occurs in the sequence. This is merely all integer $value >= 0 or >= 1 according to the start of the runs_type.
$value
$value >= 0
>= 1
Math::NumSeq, Math::NumSeq::AllDigits
http://user42.tuxfamily.org/math-numseq/index.html
Copyright 2010, 2011, 2012 Kevin Ryde
Math-NumSeq is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.
Math-NumSeq is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Math-NumSeq. If not, see <http://www.gnu.org/licenses/>.
To install Math::NumSeq, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Math::NumSeq
CPAN shell
perl -MCPAN -e shell install Math::NumSeq
For more information on module installation, please visit the detailed CPAN module installation guide.