Pascal's triangle: Difference between revisions

→‎{{header|Excel}}: Added a variant approach to defining the whole triangle as a single grid
(→‎{{header|Excel}}: Added a variant approach to defining the whole triangle as a single grid)
Line 2,277:
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 11
| style="text-align:right; font-style:italic" | 10
| style="text-align:center" | 1
| style="text-align:center" | 9
| style="text-align:center" | 36
| style="text-align:center" | 84
| style="text-align:center" | 126
| style="text-align:center" | 126
| style="text-align:center" | 84
| style="text-align:center" | 36
| style="text-align:center" | 9
| style="text-align:center" | 1
|}
 
Or defining the whole triangle recursively as a single grid, by binding the name TRIANGLE to an additional lambda, (and using the built-in IFNA function to fill #N/A cells in the grid with empty strings):
 
<lang lisp>TRIANGLE
=LAMBDA(n,
IF(1 = n,
1,
APPENDROWS(
TRIANGLE(n - 1)
)(
PASCAL(n)
)
)
)</lang>
 
and also assuming the following generic binding in the Name Manager of the Excel workbook:
 
<lang lisp>APPENDROWS
=LAMBDA(xs,
LAMBDA(ys,
LET(
nx, ROWS(xs),
rowIndexes, SEQUENCE(nx + ROWS(ys)),
colIndexes, SEQUENCE(
1,
MAX(COLUMNS(xs), COLUMNS(ys))
),
 
IFERROR(
IF(rowIndexes <= nx,
INDEX(xs, rowIndexes, colIndexes),
INDEX(ys, rowIndexes - nx, colIndexes)
),
NA()
)
)
)
)</lang>
 
{{Out}}
{| class="wikitable"
|-
|||style="text-align:right; font-family:serif; font-style:italic; font-size:120%;"|fx
! colspan="11" style="text-align:left; vertical-align: bottom; font-family:Arial, Helvetica, sans-serif !important;"|=IFNA(TRIANGLE(10), "")
|- style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff;"
|
| A
| B
| C
| D
| E
| F
| G
| H
| I
| J
| K
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 1
| style="font-style:italic" |
| colspan="10" style="font-weight:bold" | PASCAL's TRIANGLE
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 2
| style="font-style:italic" |
| style="text-align:center; background-color:#cbcefb" | 1
|
|
|
|
|
|
|
|
|
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 3
| style="font-style:italic" |
| style="text-align:center" | 1
| style="text-align:center" | 1
|
|
|
|
|
|
|
|
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 4
| style="font-style:italic" |
| style="text-align:center" | 1
| style="text-align:center" | 2
| style="text-align:center" | 1
|
|
|
|
|
|
|
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 5
| style="font-style:italic" |
| style="text-align:center" | 1
| style="text-align:center" | 3
| style="text-align:center" | 3
| style="text-align:center" | 1
|
|
|
|
|
|
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 6
| style="font-style:italic" |
| style="text-align:center" | 1
| style="text-align:center" | 4
| style="text-align:center" | 6
| style="text-align:center" | 4
| style="text-align:center" | 1
|
|
|
|
|
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 7
| style="font-style:italic" |
| style="text-align:center" | 1
| style="text-align:center" | 5
| style="text-align:center" | 10
| style="text-align:center" | 10
| style="text-align:center" | 5
| style="text-align:center" | 1
|
|
|
|
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 8
| style="font-style:italic" |
| style="text-align:center" | 1
| style="text-align:center" | 6
| style="text-align:center" | 15
| style="text-align:center" | 20
| style="text-align:center" | 15
| style="text-align:center" | 6
| style="text-align:center" | 1
|
|
|
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 9
| style="font-style:italic" |
| style="text-align:center" | 1
| style="text-align:center" | 7
| style="text-align:center" | 21
| style="text-align:center" | 35
| style="text-align:center" | 35
| style="text-align:center" | 21
| style="text-align:center" | 7
| style="text-align:center" | 1
|
|
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 10
| style="font-style:italic" |
| style="text-align:center" | 1
| style="text-align:center" | 8
| style="text-align:center" | 28
| style="text-align:center" | 56
| style="text-align:center" | 70
| style="text-align:center" | 56
| style="text-align:center" | 28
| style="text-align:center" | 8
| style="text-align:center" | 1
|
|-
| style="text-align:center; font-family:Arial, Helvetica, sans-serif !important; background-color:#000000; color:#ffffff" | 11
| style="font-style:italic" |
| style="text-align:center" | 1
| style="text-align:center" | 9
9,655

edits