Data update

This commit is contained in:
Ingy döt Net 2023-12-16 21:33:55 -08:00
parent 35bcdeebf8
commit 74c69a0df6
2427 changed files with 31826 additions and 3468 deletions

View file

@ -0,0 +1,16 @@
proc mpos n . .
a[] = [ 1 2 5 13 57 72 89 104 ]
b[] = [ -1 15 25 35 72 21 58 7 ]
i = len a[]
while a[i] > n
i -= 1
.
m = n + b[i]
r = m div 18 + 1
c = m mod 18 + 1
print "Atomic number " & n & "-> " & r & ", " & c
.
elem[] = [ 1 2 29 42 57 58 59 71 72 89 90 103 113 ]
for e in elem[]
mpos e
.

View file

@ -0,0 +1,19 @@
[ dup 1 119 within not if
[ $ "Unknown element." fail ]
[ table 0
[ 118 times
[ i^ 1+
' [ 1 - - - - - - - - - - - - - - - - 2
3 4 - - - - - - - - - - 5 6 7 8 9 10
11 12 - - - - - - - - - - 13 14 15 16 17 18
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
55 56 - 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
87 88 - 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
- - - 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
- - - 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 ]
find 18 /mod 1+ dip 1+
join nested swap dip join ] ] now! ] ] is task ( n --> [ )
' [ 1 2 29 42 57 58 59 71 72 89 90 103 113 ]
witheach [ dup echo say " -> " task echo cr ]

View file

@ -0,0 +1,39 @@
10 REM Periodic table
20 GOSUB 200
30 FOR J = 0 TO 9
40 READ N
50 GOSUB 400
60 NEXT J
70 END
190 REM Set arrays A, B.
200 ARRAY A
210 LET A[0] = 1
215 LET A[1] = 2
220 LET A[2] = 5
225 LET A[3] = 13
230 LET A[4] = 57
235 LET A[5] = 72
240 LET A[6] = 89
245 LET A[7] = 104
246 ARRAY B
250 LET B[0] = -1
255 LET B[1] = 15
260 LET B[2] = 25
265 LET B[3] = 35
270 LET B[4] = 72
275 LET B[5] = 21
280 LET B[6] = 58
285 LET B[7] = 7
290 RETURN
390 REM Show row and column for element
400 LET I = 7
410 IF A(I) <= N THEN 440
420 LET I = I-1
430 GOTO 410
440 LET M = N+B(I)
450 LET R = INT(M/18)+1
460 LET C = M-INT(M/18)*18+1
470 PRINT N; " -> "; R; " "; C
480 RETURN
1030 REM Example elements (atomic numbers).
1040 DATA 1, 2, 29, 42, 57, 58, 72, 89, 90, 103