How to resolve the algorithm Stirling numbers of the second kind step by step in the Quackery programming language

Published on 12 May 2024 09:40 PM

How to resolve the algorithm Stirling numbers of the second kind step by step in the Quackery programming language

Table of Contents

Problem Statement

Stirling numbers of the second kind, or Stirling partition numbers, are the number of ways to partition a set of n objects into k non-empty subsets. They are closely related to Bell numbers, and may be derived from them.

Stirling numbers of the second kind obey the recurrence relation:

Let's start with the solution:

Step by Step solution about How to resolve the algorithm Stirling numbers of the second kind step by step in the Quackery programming language

Source code in the quackery programming language

  [ dip number$ 
    over size - 
    space swap of
    swap join echo$ ]      is justify ( n n -->   )

  [ table ]                is s2table (   n --> n )

  [ swap 101 * + s2table ] is s2      ( n n --> n )

  101 times
    [ i^ 101 times
      [ dup i^ 
          [ 2dup = iff
              [ 2drop 1 ] done
            over 0 = 
            over 0 = or iff
              [ 2drop 0 ] done
            dip [ 1 - ] 
            2dup tuck s2 *
            unrot 1 - s2 + ] 
        ' s2table put ]
      drop ]
  cr cr
  13 times 
    [ i^ dup 1+ times
      [ dup i^ s2
        10 justify ]
      drop cr ]
  cr
  0 100 times
    [ 100 i^ 1+ s2 max ]
  echo cr

  

You may also check:How to resolve the algorithm Sorting algorithms/Counting sort step by step in the REXX programming language
You may also check:How to resolve the algorithm Gray code step by step in the F# programming language
You may also check:How to resolve the algorithm Find if a point is within a triangle step by step in the jq programming language
You may also check:How to resolve the algorithm Fibonacci sequence step by step in the TSE SAL programming language
You may also check:How to resolve the algorithm Entropy step by step in the Raku programming language