pascal v0.1.0 Pascal

Provides a set of functions that calculate Pascal’s triangles

Summary

Types

Line of Pascal’s triangle

Pascal’s triangle

Functions

Generate next line/0 of Pascal’s triangle/0 for given previous line/0

Generate Pascal’s triangle/0 of given height

Types

line()
line :: [pos_integer, ...]

Line of Pascal’s triangle

triangle()
triangle :: [line, ...]

Pascal’s triangle

Functions

next_triangle_line(line)
next_triangle_line(line) :: line

Generate next line/0 of Pascal’s triangle/0 for given previous line/0.

Returns line/0.

Examples

iex> Pascal.next_triangle_line([1])
[1, 1]

iex> Pascal.next_triangle_line([1, 1])
[1, 2, 1]

iex> Pascal.next_triangle_line([1, 2, 1])
[1, 3, 3, 1]
triangle(height)
triangle(pos_integer) :: triangle

Generate Pascal’s triangle/0 of given height.

Returns triangle/0.

Examples

iex> Pascal.triangle(1)
[[1]]

iex> Pascal.triangle(2)
[[1], [1, 1]]

iex> Pascal.triangle(3)
[[1], [1, 1], [1, 2, 1]]