西安交大fortran上机作业之四.docxVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
四工程分析程序设计上机作业(四)结构化编程上机目的:练习使用选择结构和循环结构编制程序。求y值,x由键盘输入。PROGRAM MAINIMPLICIT NONE REAL X,Y PRINT*,请输入X值 READ*,X IF (X=0.AND.X10) THEN Y=XELSEIF (X=10.AND.X20) THEN Y=X**2+1ELSEIF (X=20.AND.X30) THEN Y=X**3+X**2+1ELSE PRINT*,X不在取值范围内END IFPRINT*,Y值为:,YEND输入4个数A,B,C,D,按由大到小的顺序打印出来。PROGRAM MAINIMPLICIT NONEREAL A,B,C,D,T REAL::E(4) INTEGER I,J PRINT*,请输入四个数: READ*,A,B,C,DE(1)=AE(2)=BE(3)=CE(4)=D DO I=1,3 DO J=I+1,4 IF (E(I)E(J)) THEN T=E(I)E(I)=E(J)E(J)=T END IFEND DO END DO PRINT*,E END编写一个子程序,判断一个整数是否素数。PROGRAM MAINIMPLICIT NONEINTEGER X,SSPRINT*,请输入一个整数:READ*,X CALL SUSHU(X,SS)CONTAINSSUBROUTINE SUSHU(A,SS) IMPLICIT NONE INTEGER I,A,B,SS,K K=0 DO I=2,A-1 B=MOD(A,I) IF (B==0) THEN K=K+1END IF END DO IF (K==0) THEN PRINT*,是素数 ELSE PRINT*,不是素数 END IFEND SUBROUTINEEND利用上一编程结果,对1000以内的所有偶数验证哥德巴赫猜想。即:对于大于2的任一偶数,先分解为两个奇数之和,然后验证第一个奇数是否素数,如果是,再验证第二个奇数是否素数,如果两个奇数都是素数,则输出结果。(要求给出所有把偶数分解成两个素数之和的等式)。并统计,每个偶数可以分解的等式个数(两个素数互换位置的不算一个独立的结果),研究随着偶数增大,分解的等式个数的变化规律。PROGRAM MAINIMPLICIT NONEINTEGER I,x,y,SS,NDO I=2,1000,2N=0 DO X=1,I/2,2 Y=I-X CALL SUSHU(X,SS) IF (SS==0) THEN CALL SUSHU(Y,SS) IF (SS==0) THEN PRINT*,I,X,Y N=N+1 END IF END IF END DO PRINT*,共有N种,NEND DOCONTAINSSUBROUTINE SUSHU(A,SS) INTEGER J,A,B,SS,K K=0 DO J=2,A-1 B=MOD(A,J) IF (B==0) THEN K=K+1END IF END DO IF (K==0) THEN SS=0 ELSE SS=1 END IFEND SUBROUTINEEND输入一个自然数,进行因子分解并输出结果,例如24=1×2×2×2×3。(输出格式不限)。PROGRAM MAINIMPLICIT NONEINTEGER X,I,A,K,B,JPRINT*,请输入一个自然数:READ*,XB=XDO I=1,B DO J=2,X A=MOD(X,J) IF (A==0) THEN X=X/J PRINT*,J EXIT END IFEND DOEND DOEND

文档评论(0)

ywqa203 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档