[討論] fortran期末考第四題
program exam_4
real,dimension(:),allocatable::div
integer::m,n,i=1
div=0
write(*,*)"請輸入一正整數n"
read(*,*)n
if(n<=0)then
write(*,*)"你北七嗎"
else
m=n
allocate(div(m))
do
i=i+1
if(mod(n,i)==0)then
div(i)=div(i)+1
n=n/i
i=1
endif
if(n==1)exit
enddo
if(sum(div)==1)then
write(*,*)"n是質數"
else
write(*,'(A2)',advance='no')"n="
do j=2,m
if(div(j)==1)then
write(*,'(A1,I0,A1)',advance='no')"(",j,")"
elseif(div(j)>1)then
write(*,'(A1,I0,A1,I0,A1)',advance='no')"(",j,"^",int(div(j)),")"
endif
enddo
write(*,*)
endif
endif
end program
我是用除了1以外最小的因數一定是質數的想法
有人有更好的寫法嗎@@?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.22.94
推
01/07 14:48, , 1F
01/07 14:48, 1F
推
01/07 15:13, , 2F
01/07 15:13, 2F
推
01/07 23:02, , 3F
01/07 23:02, 3F
推
01/08 19:13, , 4F
01/08 19:13, 4F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):