How To Determine Whether a Number is Prime (153200)



The information in this article applies to:

  • Microsoft Visual FoxPro for Windows 3.0
  • Microsoft Visual FoxPro for Windows 3.0b
  • Microsoft FoxPro for Macintosh 2.5b
  • Microsoft FoxPro for Macintosh 2.5c
  • Microsoft FoxPro for Macintosh 2.6a
  • Microsoft FoxPro for MS-DOS 2.0
  • Microsoft FoxPro for MS-DOS 2.5
  • Microsoft FoxPro for MS-DOS 2.5a
  • Microsoft FoxPro for MS-DOS 2.5b
  • Microsoft FoxPro for MS-DOS 2.6
  • Microsoft FoxPro for MS-DOS 2.6a
  • Microsoft FoxPro for UNIX 2.6
  • Microsoft Visual FoxPro for Macintosh, Professional Edition 3.0

This article was previously published under Q153200

SUMMARY

There is no single function in FoxPro or Visual FoxPro that determines whether a number is prime. This article describes how to use a program that allows you to enter a positive number and then reports if that number is prime.

MORE INFORMATION

A prime number is a number divisible only by one and itself. The following program uses the MOD()and ABS() functions along with a For...Next loop to check if a number is prime:
   CLEAR
   SET TALK OFF
   x=0
   @ 1,10 SAY "Please enter a positive integer"  GET x
   READ
   x=ABS(x)
   FOR i=2 to x-1
      IF MOD(x,i)=0
          @2,10 SAY  "The number "+ ALLTRIM(STR(x))+ " is not prime."
          RETURN
      ENDIF
   ENDFOR
   @ 2,10 SAY "The number "+ ALLTRIM(STR(x))+ " is prime."
   SET TALK ON
				
While this program uses the READ statement for backward compatibility with FoxPro 2.x versions, the basic algorithm may be used in a form within Visual FoxPro.

Modification Type:MajorLast Reviewed:12/1/2003
Keywords:KB153200