回 帖 发 新 帖 刷新版面

主题:求教:从键盘键入一整数,fortran编程输出该整数的所有质因子

求教:从键盘键入一整数,fortran编程输出该整数的所有质因子

非常感谢

回复列表 (共13个回复)

11 楼

六楼是对的。
34 分解为 2 17.
当分解出2的时候,17就已经确定了。
对34尝试分解,测试2->6之间的质数,可以得到一组正确的结果。
2-17
3-X
5-X
6-X
如果对2->17测试,得到两组重复的结果。
2-17
3-X
5-X
7-X
11-X
13-X
17-2

12 楼


再作一点小改动

      program primefactor
      implicit none
      integer(kind=8) :: i,j,k,n
      
      do
       print *, 'please input an integer'
       read  *, n
       j = n
       k = 1 
       if(j == 0) exit
       i = 2
       do while(i<=int(sqrt(real(j))))
         if( mod(j,i) == 0 ) then
            print *, i
            k = k*i
            j = j/i
            if(j == 1) exit
         else
          if(i>2) then
           i = i+2
          else
           i = i+1
          endif
         endif
      enddo
      print *, n/k

     enddo
     end program

13 楼

PFPF,会用C,那一句一句的译不就行了。。。

我来回复

您尚未登录,请登录后再回复。点此登录或注册