NAME
Math::NumSeq::SevenSegments -- count of segments to display by 7-segment LED
SYNOPSIS
use Math::NumSeq::SevenSegments;
my $seq = Math::NumSeq::SevenSegments->new;
my ($i, $value) = $seq->next;
DESCRIPTION
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 => 5 segments, (no top)
| |
---
Option seven => $integer
is how many segments for digit 7. Sometimes 7 has a top-left "serif",
---
| | seven => 4 segments (with top left)
|
Option nine => $integer
is how many segments for digit 9. Often 9 has a bottom segment.
---
| | 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.
FUNCTIONS
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
Random Access
$value = $seq->ith($i)
-
Return the number of segments to display
$i
in 7-segment LEDs. $i = $seq->i_start ()
-
Return 0, the first term in the sequence being at i=0.
OEIS
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
SEE ALSO
Math::NumSeq, Math::NumSeq::DigitSum, Math::NumSeq::DigitLength, Math::NumSeq::AlphabeticalLength
HOME PAGE
http://user42.tuxfamily.org/math-numseq/index.html
LICENSE
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/.