Math::NumSeq::SevenSegments -- count of segments to display by 7-segment LED
use Math::NumSeq::SevenSegments; my $seq = Math::NumSeq::SevenSegments->new; my ($i, $value) = $seq->next;
This sequence is how many segments are lit to display i in 7-segment LEDs
i = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ... value = 6, 2, 5, 5, 4, 5, 6, 3, 7, 5, 8, 4, 7, 7, 6, 7, 8 ... (A277116)
The segments for each digit are
--- --- --- | | | | | | | --- --- --- | | | | | | --- --- --- --- --- --- --- --- | | | | | | | --- --- --- --- | | | | | | | --- --- ---
i=0 is considered to require one 0 digit, as is usual for a human display. (Although many mathematical things are much better consistently omitting all high 0 digits so that 0 is no digits.)
Option six => $integer is how many segments for digit 6. Occasionally it may be shown without the top, so 5 segments (instead of 6). This tends to look like a "b", and certainly would not be used when wanting an actual b too (for hexadecimal or text).
six => $integer
| --- six => 5 segments, (no top) | | ---
Option seven => $integer is how many segments for digit 7. Sometimes 7 has a top-left "serif",
seven => $integer
--- | | seven => 4 segments (with top left) |
Option nine => $integer is how many segments for digit 9. Often 9 has a bottom segment.
nine => $integer
--- | | nine => 6 segments (with bottom segment) --- | ---
It might have been more consistent if the default had been 6 and 9 both 6 segments, but the options allow any combination.
The total segments to display i is similar to Math::NumSeq::DigitSum, but with digits mapped through a table of segment counts 0->6, 1->2, 2->5, etc.
See "FUNCTIONS" in Math::NumSeq for behaviour common to all sequence classes.
$seq = Math::NumSeq::SevenSegments->new ()
$seq = Math::NumSeq::SevenSegments->new (key => value, ...)
Create and return a new sequence object. The optional key/value parameters are the number of segments lit for digits 6, 7, or 9,
six => $integer, default 6 seven => $integer, default 3 nine => $integer, default
$value = $seq->ith($i)
Return the number of segments to display $i in 7-segment LEDs.
$i
$i = $seq->i_start ()
Return 0, the first term in the sequence being at i=0.
Entries in Sloane's Online Encyclopedia of Integer Sequences related to this sequence include
A277116 default A074458 seven => 4 (but it just 0..9) A010371 seven => 4, nine => 6 A006942 nine => 6 A063720 six => 5
Math::NumSeq, Math::NumSeq::DigitSum, Math::NumSeq::DigitLength, Math::NumSeq::AlphabeticalLength
Tk::SevenSegmentDisplay
http://user42.tuxfamily.org/math-numseq/index.html
Copyright 2012, 2015, 2020 Kevin Ryde
Math-NumSeq-Alpha 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-Alpha 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-Alpha. If not, see http://www.gnu.org/licenses/.
To install Math::NumSeq::Alpha, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Math::NumSeq::Alpha
CPAN shell
perl -MCPAN -e shell install Math::NumSeq::Alpha
For more information on module installation, please visit the detailed CPAN module installation guide.