这个算法总能工作吗?

时间:2013-06-13 22:24:38

标签: ti-basic

所以我正在为我的计算器编写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

在大多数情况下似乎都有效。这段代码有没有我没注意到的瑕疵/角落案例?感谢。

2 个答案:

答案 0 :(得分:2)

它会起作用,但是没有循环就可以做到更酷的方式。

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

答案 1 :(得分:1)

是的,它会起作用,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