+
Point of view
All features
class PYRAMID2
Summary
Run faster than pyramid.e
Direct parents
Insert list: ARGUMENTS
Overview
Creation features
{ANY}
Features
{}
{ANY}
{ANY}
{}
Implementation of ARGUMENTS (do not use directly):
{}
pyramid: ARRAY2[INTEGER_32]
writable attribute
{}
used: ARRAY[BOOLEAN]
writable attribute
{}
Already used numbers in pyramid.
make
effective procedure
{}
fill (size: INTEGER_32)
effective procedure
{}
Fill in a pyramid of size elements.
require
  • size > 1
put (value: INTEGER_32, line: INTEGER_32, column: INTEGER_32)
effective procedure
{}
Update pyramid and used.
remove (line: INTEGER_32, column: INTEGER_32)
effective procedure
{}
Update pyramid and used.
solution (column: INTEGER_32): BOOLEAN
effective function
{}
Search a solution using a back-tracking algorithm.
fill_column (col: INTEGER_32, val: INTEGER_32): BOOLEAN
effective function
{}
print_on (file: OUTPUT_STREAM)
effective procedure
{ANY}
Display the pyramid to the standard output.
require
  • file.is_connected
argument_count: INTEGER_32
effective function
{ANY}
Number of arguments given to command that started system execution (command name does not count).
ensure
  • Result >= 0
argument (i: INTEGER_32): STRING
effective function
{ANY}
i th argument of command that started system execution Gives the command name if i is 0.
require ensure
  • Result /= Void
command_name: STRING
effective function
{ANY}
command_arguments: FAST_ARRAY[STRING]
frozen
once function
{}
Give access to arguments command line including the command name at index 0.
This is a once function, so you can modify command-line arguments! (NOTE: just be sure not to remove the first argument, although you may change it)
ensure
  • not Result.is_empty
se_argc: INTEGER_32
{}
To implement command_arguments
se_argv (i: INTEGER_32): STRING
{}
To implement command_arguments