Math::NumSeq::DigitCount -- count of a given digit
my $seq = Math::NumSeq::DigitCount->new (radix => 10,
digit => 9);
my ($i, $value) = $seq->next;
The count of how many of a given digit is in $i when written out in a given radix. The default is to count how many 9s in decimal.
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, ...
For example i=19 has a single "9" so value=1.
The radix and digit options can select a different number base or different digit to count. For example to count the 0-bits in binary,
# radix=>2, digit=>0
0, 0, 1, 0, 2, 1, 1, 0, 3, 2, 2, 1, 2, 1, 1, 0, 4, 3, 3, 2, ...
i=0 is treated as no digits at all, so it has value=0 for the count of 0-bits, and similarly in other bases counting 0 digits.
Option digit => -1 gives the highest digit in the radix, ie. radix-1. This is the default, so if radix is given the count is of its biggest digit.
digit => -1
See "FUNCTIONS" in Math::NumSeq for behaviour common to all sequence classes.
$seq = Math::NumSeq::DigitCount->new (radix => $r, digit => $d)
Create and return a new sequence object.
digit can be -1 to mean digit radix-1, the highest digit in the radix.
$value = $seq->ith($i)
Return how many of the given digit is in $i written in radix.
$bool = $seq->pred($value)
Return true if $value might occur as a digit count, which means simply $value>=0.
Math::NumSeq, Math::NumSeq::DigitLength, Math::NumSeq::RadixWithoutDigit
Copyright 2010, 2011, 2012, 2013, 2014, 2016, 2017, 2019, 2020 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.
perl -MCPAN -e shell
For more information on module installation, please visit the detailed CPAN module installation guide.