factor

Topic: 
 

หาค่า factor ของ 2 จำนวนเต็ม
สมการคือ (nX * x) + (nY * y) = z
รู้ x, y, และ z
อยากทราบจำนวน nX และ nY ที่เป็นจำนวนเต็ม ว่ามีค่าเท่าไหร่มั่ง

ตั้งชื่อโปรแกรมว่า d.calc2.py
$ vi d.calc2.py

#!/usr/bin/env python
import sys
if sys.argv[3]==None:
  nSum=input("Enter sum amount: ")
  nXparms = input("Enter x parms: ")
  nYparms = input("Enter y parms: ")
else:
  nSum=eval(sys.argv[1])
  nXparms=eval(sys.argv[2])
  nYparms=eval(sys.argv[3])
#
nX=0
nY=1
print "nX*%f + nY*%f = %f" % (nXparms, nYparms, nSum)
while nY>0:
  nY=float(nSum-nXparms*nX)/nYparms
  nRemain=float(nY-int(nY))
  if nRemain==0:
    print "nX=%i, nY=%i" % (nX,nY)
  #
  nX=nX+1
#

ทดลองเรียกใช้งาน
$ ./d.calc2.py 50 1.5 2.5
nX*1.500000 + nY*2.500000 = 50.000000

Subscribe to RSS - factor