24 lines
608 B
Text
24 lines
608 B
Text
10 DIM n(3): DIM a(3)
|
|
20 FOR i=1 TO 3
|
|
30 READ n(i),a(i)
|
|
40 NEXT i
|
|
50 DATA 3,2,5,3,7,2
|
|
100 LET prod=1: LET sum=0
|
|
110 FOR i=1 TO 3: LET prod=prod*n(i): NEXT i
|
|
120 FOR i=1 TO 3
|
|
130 LET p=INT (prod/n(i)): LET a=p: LET b=n(i)
|
|
140 GO SUB 1000
|
|
150 LET sum=sum+a(i)*x1*p
|
|
160 NEXT i
|
|
170 PRINT FN m(sum,prod)
|
|
180 STOP
|
|
200 DEF FN m(a,b)=a-INT (a/b)*b: REM Modulus function
|
|
1000 LET b0=b: LET x0=0: LET x1=1
|
|
1010 IF b=1 THEN RETURN
|
|
1020 IF a<=1 THEN GO TO 1100
|
|
1030 LET q=INT (a/b)
|
|
1040 LET t=b: LET b=FN m(a,b): LET a=t
|
|
1050 LET t=x0: LET x0=x1-q*x0: LET x1=t
|
|
1060 GO TO 1020
|
|
1100 IF x1<0 THEN LET x1=x1+b0
|
|
1110 RETURN
|