所以我正在为我的计算器编写一个 TI-BASIC 算法来计算比率。这是代码:
Disp "GIVE ONE NUMBER"
Prompt A
Disp "GIVE A SECOND NUMBER"
Prompt B
While fPart(A)≠0 or fPart(B)≠0
A*10->A
B*10->B
End
gcd(A,B)->C
Disp A/C
Disp B/C
它似乎在大多数情况下都有效。此代码是否有任何我没有注意到的缺陷/角落案例?谢谢。
所以我正在为我的计算器编写一个 TI-BASIC 算法来计算比率。这是代码:
Disp "GIVE ONE NUMBER"
Prompt A
Disp "GIVE A SECOND NUMBER"
Prompt B
While fPart(A)≠0 or fPart(B)≠0
A*10->A
B*10->B
End
gcd(A,B)->C
Disp A/C
Disp B/C
它似乎在大多数情况下都有效。此代码是否有任何我没有注意到的缺陷/角落案例?谢谢。
它会起作用,但有一种更酷的方法可以做到这一点,无需循环。
Disp "GIVE ONE NUMBER"
Prompt A
Disp "GIVE A SECOND NUMBER"
Prompt B
1/fPart(A)->F
A*F->A
B*F->B
1/fPart(B)->F
A*F->A
B*F->B
gcd(A,B)->C
Disp A/C
Disp B/C
是的,它会起作用,Jean-Bernard Pellerin 的回答也会起作用,但为了最好地清理它:
Input "GIVE ONE NUMBER",A
Input "GIVE A SECOND NUMBER",B
1/fPart(A)->F
A*F->A
B*F->B
1/fPart(B)->F
A*F->A
B*F->B
gcd(A,B)->C
Disp A/C
Disp B/C