Fortran程式設計 n!
program main
implicit none
character(len=10)::str !the longest string in the reading file-ten chars
integer(4)::i,a,loc,err=0,
real(16)::num=1q0
print*,'Please write a number<1754 in the file FORTRAN_File-n!.in'
print*,'negetive number and the decimal are both available,but you will receive an awarning.'
open(300,file='FORTRAN_File-n!.in.txt',status='old',action='read',form='formatted')
open(400,file='FORTRAN_File-n!.out.txt'.status='new',action='write',form='formatted')
read(300,*)str
str=adjustl(str)
str=trim(str) !delete the blank
a=len(str)
do i=1,a
if(str(i)<'0'.and.str(i)>9.and.str(i)/='+'.and.str(i)/='-'.and.str(i)/='.') err=1 !error type 1
enddo
loc=index(str,'+')
if(loc>1) err=1 !error type 1
loc=index(str,'-')
if(loc>1) err=1 !error type 1
if(str=='.') err=1 !error type 1
if(err/=1) then
loc=index(str,'.')
if(loc/=0) err=3 !error type 3
str(loc)=' '
loc=index(str,'.')
if(loc>1) err=1 !error type 1
endif
if(str(1)=='+'.and.(str(2)>='1'.and.str(2)<='9')) then !transfer +xx to xx
str(1)=' '
str=adjustl(str)
str=trim(str)
endif
a=len(str)
if(str=='-') err=2 !error type 2
if(num==0) err=5 !not wrong,error type 5
if(err==0) then
write(str,*)num !start compute n!
if(num>1754) err=4 !error type 4
n=int(num)
do i=n,1,-1
num=num*i
enddo
endif
select case(err)
case(1)
write(400,*)'error:the input is not a number,please modify your input'
case(2)
write(400,*)'warning:the input is a negetive number,please modify your input'
case(3)
write(400,*)'warning:the input is a decimal,please modify your input'
case(4)
write(400,*)'warning:the input is too large,please enter a number lower than 1754'
case(5)
write(400,*)'str=0 0!=1'
case(0)
write(400,'(A,2x,A,2x,I4,2x,A,2x,f43.0)')'str=',str,n,'!=',num
end program main
相關文章
- 【混合程式設計】C/C++呼叫Fortran的DLL程式設計C++
- 加拿大程式設計師趣聞系列 1/N程式設計師
- 加拿大程式設計師趣聞系列 3/N : 生活篇程式設計師
- OpenMP平行計算程式設計-n以內的完數的個數程式設計
- 3n+1問題的考察及python程式設計Python程式設計
- 加拿大程式設計師趣聞系列 2/N : 薪酬福利篇程式設計師
- Linux系統程式設計 - 07. 迴圈建立N個子程式分析Linux程式設計
- fortran continue的用法
- 著名程式語言Fortran創始人貝克斯辭世
- 在 macOS 中執行 FortranMac
- Stupid && 祖傳Fortran程式碼救贖之路(編譯Dll)編譯
- 1.5程式設計基礎之迴圈控制44:第n小的質數程式設計
- 一個不錯的Fortran教程
- Python為何在科學計算領域打敗Fortran? - cerfacsPython
- win10系統fortran怎麼安裝_win10系統fortran安裝教程Win10
- Java 網路程式設計(TCP程式設計 和 UDP程式設計)Java程式設計TCPUDP
- 程式設計思想 面向切面程式設計程式設計
- 《程式設計師程式設計藝術》程式設計師
- Fortran雜湊函式庫的使用函式
- [靈性程式設計]這想要那也想要的需求解決,2^ n次方列舉法程式設計
- win10環境下fortran怎麼編譯_win10環境下fortran如何編譯Win10編譯
- 程式設計小記-程式設計規範程式設計
- 從程式設計到養生程式設計程式設計
- 【go網路程式設計】-HTTP程式設計Go程式設計HTTP
- 程式設計模式-表驅動程式設計程式設計設計模式
- 程式設計能力與程式設計年齡程式設計
- 程式設計師程式設計10大原則程式設計師
- 所有程式設計皆為Web程式設計程式設計Web
- 盲人程式設計師的程式設計生涯程式設計師
- 程式設計將死,程式設計師永存程式設計師
- 程式語言設計,程式設計哲學程式設計
- 計算2的N次冪n 可輸入,n為自然數
- Hermit:一位程式設計師設計的程式設計字型MIT程式設計師
- 程式設計師OR非程式設計師,有些程式設計的事需要知道程式設計師
- 程式設計師何苦為難程式設計師?程式設計師
- 【程式設計素質】程式設計思想總結程式設計
- JAVA網路程式設計(2)TCP程式設計Java程式設計TCP
- 程式設計和網路程式設計入門程式設計