and 1 contributors

NAME

Math::NumSeq::Cubes -- cubes i**3

SYNOPSIS

use Math::NumSeq::Cubes;
my \$seq = Math::NumSeq::Cubes->new;
my (\$i, \$value) = \$seq->next;

DESCRIPTION

The sequence of cubes i**3,

0, 1, 8, 27, 64, 125, ...

FUNCTIONS

See "FUNCTIONS" in Math::NumSeq for behaviour common to all sequence classes.

\$seq = Math::NumSeq::Cubes->new ()

Create and return a new sequence object.

Iterating

(\$i, \$value) = \$seq->next()

Return the next index and value in the sequence.

If \$value overflows a usual Perl UV integer the return is promoted to Math::BigInt to preserve all bits.

\$seq->seek_to_i(\$i)

Move the current sequence position to \$i. The next call to next() will return \$i and corresponding value.

\$seq->seek_to_value(\$value)

Move the current sequence position so that next() will give \$value on the next call, or if \$value is not a cube then the next cube above \$value.

Random Access

\$value = \$seq->ith(\$i)

Return \$i*\$i*\$i.

\$bool = \$seq->pred(\$value)

Return true if \$value is a cube.

\$i = \$seq->value_to_i_ceil(\$value)
\$i = \$seq->value_to_i_floor(\$value)

Return the cube root of \$value, rounded up or down to the next integer.

\$i = \$seq->value_to_i_estimate(\$value)

Return an estimate of the i corresponding to \$value.