从来没有玩过什么VFP,今天一个同学让我帮忙做题目,必须用VFP完成,真的很无聊,硬着头皮,搞了一点点东西,现在想想以前的这些老东西,也挺有意思的。
随机函数:
Rand()
好像调用之前必须要用一个Rand(-1)来初始化一下,不然每次随机的结果可能都是一样。这个函数返回0到1之间的一个小数,希望取得整数的话,请在结果上*你想要的整数位, 例如10000以内的整数,Rand() * 10000。
没有什么函数可以取到素数,所以自己写了一个:
PROCEDURE COL3_DATA
PRIVATE I, J
USE RESULT
I = 2
DO WHILE .NOT. eof()
REPLACE COL3 WITH I
SKIP 1
IF eof() THEN
EXIT
ENDIF
I = I + 1
DO WHILE .T.
FOR J = 2 TO I - 1
IF I % J = 0 THEN
EXIT
ENDIF
NEXT
IF J = I THEN
EXIT
ELSE
I = I + 1
ENDIF
ENDDO
ENDDO
USE
RETURN
PRIVATE I, J
USE RESULT
I = 2
DO WHILE .NOT. eof()
REPLACE COL3 WITH I
SKIP 1
IF eof() THEN
EXIT
ENDIF
I = I + 1
DO WHILE .T.
FOR J = 2 TO I - 1
IF I % J = 0 THEN
EXIT
ENDIF
NEXT
IF J = I THEN
EXIT
ELSE
I = I + 1
ENDIF
ENDDO
ENDDO
USE
RETURN
这是一个循环,从2一直向后算,我的RESULT表里面是10000条记录,也就是计算出10000个素数来。