Abelian sandpile model: Difference between revisions
Content added Content deleted
m (Updated description and link for Fōrmulæ solution) |
Alextretyak (talk | contribs) (Added 11l) |
||
Line 29: | Line 29: | ||
0 0 0 0 0 0 0 1 0 0 |
0 0 0 0 0 0 0 1 0 0 |
||
</pre> |
</pre> |
||
=={{header|11l}}== |
|||
<lang 11l>V grid = [[0] * 10] * 10 |
|||
grid[5][5] = 64 |
|||
print(‘Before:’) |
|||
L(row) grid |
|||
print(row.map(c -> ‘#3’.format(c)).join(‘’)) |
|||
L |
|||
V changed = 0B |
|||
L(arr) grid |
|||
V ii = L.index |
|||
L(val) arr |
|||
V jj = L.index |
|||
I val > 3 |
|||
grid[ii][jj] -= 4 |
|||
I ii > 0 |
|||
grid[ii - 1][jj]++ |
|||
I ii < grid.len - 1 |
|||
grid[ii + 1][jj]++ |
|||
I jj > 0 |
|||
grid[ii][jj - 1]++ |
|||
I jj < grid.len - 1 |
|||
grid[ii][jj + 1]++ |
|||
changed = 1B |
|||
I !changed |
|||
L.break |
|||
print("\nAfter:") |
|||
L(row) grid |
|||
print(row.map(c -> ‘#3’.format(c)).join(‘’))</lang> |
|||
{{out}} |
|||
<pre> |
|||
Before: |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 0 64 0 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
After: |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
0 0 0 0 1 2 1 0 0 0 |
|||
0 0 0 2 2 2 2 2 0 0 |
|||
0 0 1 2 2 2 2 2 1 0 |
|||
0 0 2 2 2 0 2 2 2 0 |
|||
0 0 1 2 2 2 2 2 1 0 |
|||
0 0 0 2 2 2 2 2 0 0 |
|||
0 0 0 0 1 2 1 0 0 0 |
|||
0 0 0 0 0 0 0 0 0 0 |
|||
</pre> |
|||
=={{header|AArch64 Assembly}}== |
=={{header|AArch64 Assembly}}== |
||
{{works with|as|Raspberry Pi 3B version Buster 64 bits |
{{works with|as|Raspberry Pi 3B version Buster 64 bits |
||
Line 260: | Line 319: | ||
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
||
</pre> |
</pre> |
||
=={{header|ARM Assembly}}== |
=={{header|ARM Assembly}}== |
||
{{works with|as|Raspberry Pi}} |
{{works with|as|Raspberry Pi}} |