琥珀科技 加入收藏  -  设为首页
您的位置:钢琴入门指法教程 > 钢琴入门 > 正文
谁可以帮忙用fortran语言编写一个程序?是求n元一次方程组的解!或者是求100!的精确解!谢谢
谁可以帮忙用fortran语言编写一个程序?是求n元一次方程组的解!或者是求100!的精确解!谢谢
提示:

谁可以帮忙用fortran语言编写一个程序?是求n元一次方程组的解!或者是求100!的精确解!谢谢

! 求290以下正整数的阶乘的精确解
IMPLICIT NONE
INTEGER::J(100)=0,N,I,K
N=-1
DO WHILE(N>290.OR.N<0)
WRITE(*,*) '请输入一个小于290的正整数:'
READ(*,*) N
ENDDO
J(100)=1
IF(N>=2)CALL JS()
WRITE(*,*) N,'的阶乘等于:'
DO I=1,100-1; IF(J(I)>0)THEN; K=I; WRITE(*,'(I10\)') J(I); EXIT; ENDIF; ENDDO
DO I=K+1,100; WRITE(*,'(I6.6\)') J(I); ENDDO
WRITE(*,*)
CONTAINS
SUBROUTINE JS()
DO K=2,N
J=J*k
DO I=100,2,-1
IF(J(I)>999999)THEN
J(I-1)=J(I-1)+J(I)/10**6
J(I)=MOD(J(I),10**6)
ENDIF
ENDDO
ENDDO
END SUBROUTINE JS

END

试用高斯消元法编制Fortran程序计算n元一次方程组的解,并用一个三元一次方程组检验程序?
提示:

试用高斯消元法编制Fortran程序计算n元一次方程组的解,并用一个三元一次方程组检验程序?

program gauss
implicit real(kind=8)(a-z)
integer,parameter:: N=3
integer::i,j
real(kind=8) ::A(N,N),b(N),x(N)
open(unit=11,file='fin.txt')
open(unit=12,file='fout.txt')
read(11,*)
!读入A矩阵
read(11,*)((A(i,j),j=1,N),i=1,n)
!读入B向量
read(11,*) (b(j),j=1,n)
call solve(A,b,x,N)
write(12,999)x
999 format(T5,'高斯消去法计算结果',/,T4,'x=',4(/F12.8))
end program gauss
!子程序---------------
subroutine solve(A,b,x,N)
implicit real*8(a-z)
integer::i,k,N
real(kind=8) ::A(N,N),b(N),x(N)
real(kind=8) ::Aup(N,N),bup(N)
!Ab为增广矩阵 [Ab]
real(kind=8) ::Ab(N,N+1)
Ab(1:N,1:N)=A
Ab(:,N+1)=b
! 这段是 高斯消去法的核心部分
do k=1,N-1
do i=k+1,N
temp=Ab(i,k)/Ab(k,k)
Ab(i,:)=Ab(i,:)-temp*Ab(k,:)
end do
end do
Aup(:,:)=Ab(1:N,1:N)
bup(:)=Ab(:,N+1)
!调用用上三角方程组的回带方法
call uptri(Aup,bup,x,n)
end subroutine solve
subroutine uptri(A,b,x,N)
implicit real*8(a-z)
integer::i,j,N
real(kind=8) ::A(N,N),b(N),x(N)
x(N)=b(N)/A(N,N)
!回带部分
do i=n-1,1,-1
x(i)=b(i)
do j=i+1,N
x(i)=x(i)-a(i,j)*x(j)
end do
x(i)=x(i)/A(i,i)
end do
end subroutine uptri


输入数据放在fin.txt 记得开头加!A.B

输出数据自动存放在fout.txt

GRE考试的数学部分怎么复习?
提示:

GRE考试的数学部分怎么复习?

数学部分是大部分中国考生比较擅长的科目,不过也是要掌握恰当的方法的。
一、新GRE数学的复习方法
我在复习数学的时候,先是看了把相关书籍里介绍数学考试中用到的基本概念和术语,特别是术语的中英翻译部分弄清楚。其实中国考生在做数学时的很大障碍就是题目看不懂,术语不明白。比如,有一道题目提到了reciprocal(倒数),我当时就没想起来什么意思,最后随便乱选了一个答案,结果选错了。
有了基本概念和了解了一些难题以后,就可以开始做题目了。数学题目不用做很多,看个人情况,有的基础好的做一、二套题目后就找到感觉了,有的人稍微慢一点。我是在模考前大概做了5,6套数学题,然后从开始模考后,每套题目的数学都做了一下。
二、数学的复习中的注意事项
数学虽然简单,但是也要稍微花点功夫,因为首先要拿高分,其次是最好提前几分钟做完。这样的话,在考场可以给自己一个休息的时间。另外也有人利用这段时间把V部分答题卡上没有涂好的圆圈再涂一下。不过提醒大家一下,这样的做法也算是跨区(也就是作弊的),所以要小心一点。
1、 GRE数学中也不完全是死算,有的时候要用一些巧妙的办法,这样可以节省时间。比如比较大小时,有时没必要把两边的数都算出来,只要分别分解一下或者两边相减一下,即可很快得出答案。具体的技巧我也不多说了,相信大家的数学功底都没问题,只要有这么个意识就能找到方法。
2、 数学中有时会涉及到一些近似计算。也就是说不用把最后结果算的很准确,只要知道个大概就可以选出答案,比如知道了结果是多少位的,或者最低位应该是多少等。当然,有的时候也要算出准确的答案来才行。
3、概率部分,如果时间紧或者觉得780,790也差不多的话,就没太大必要看了。因为那些难题在笔考中出现的概率很小,象什么四分位数等,题目里就从来没见过。其他太难的,太偏的碰上的概率很小。
4、 对数学中的图表题。数学中的图表题一般来说还是比较费时间的,因为给的信息比较多,容易使人看不懂,另外有时题目解起来也比较麻烦,需要小心、仔细。

怎样开始GRE数学复习
提示:

怎样开始GRE数学复习

我在复习数学的时候,先是看了看《给文文的数学手册》,然后又听了老钱的网络课堂。我觉得这2部分资料都比较有用。《数学手册》里主要介绍数学考试中用到的基本概念和术语,特别是术语的中英翻译部分比较全面。其实中国考生在做数学时的很大障碍就是题目看不懂,术语不明白。比如这次6G考试,有一道题目提到了reciprocal(倒数),我当时就没想起来什么意思,最后随便乱选了一个答案,结果选错了。 课堂里除了介绍一些中国考生容易搞不明白的概念(比如median,mode)之外,还讲了很多难题。这些难题有些是难在意思难于理解,有些是确实从数学角度(比如概率,统计)方面来讲需要一定的解题技巧。所以大家有空的话一定要听一下,万一由于条件限制听不了,可以找一下我发过的老钱讲义截图,也会有所帮助的。 有了基本概念和了解了一些难题以后,就可以开始做题目了。数学题目不用做很多,看个人情况,有的基础好的做一、二套题目后就找到感觉了,有的人稍微慢一点。我是在模考前大概做了5,6套数学题,然后从开始模考后(用95年以后的试题),每套题目的数学都做了一下。 数学的复习中的注意事项 数学虽然简单,但是也要稍微花点功夫,因为首先要拿高分,其次是最好提前几分钟做完。这样的话,在考场可以给自己一个休息的时间。另外也有人利用这段时间把V部分答题卡上没有涂好的圆圈再涂一下。不过提醒大家一下,这样的做法也算是跨区(也就是作弊的),所以要小心一点。1、GRE数学的前15道题目为比较大小。题目里分为A,B两栏,如果A栏的大选A,若B栏的大选B,相等选C,无法判断选D,E选项没用。在15以后的题目中,E选项才有可能用上。此外第21-25题为图表题 2、 GRE数学中也不完全是死算,有的时候要用一些巧妙的办法,这样可以节省时间。比如比较大小时,有时没必要把两边的数都算出来,只要分别分解一下或者两边相减一下,即可很快得出答案。具体的技巧我也不多说了,相信大家的数学功底都没问题,只要有这么个意识就能找到方法。 3、 对于〈数学无忧〉,我觉得看一下前面的概念介绍等就差不多了,其后面的很多难题如果有时间,或者一定要拿满分的话可以看一下,如果时间紧或者觉得780,790也差不多的话,就没太大必要看了。因为那些难题在笔考中出现的概率很小,象什么四分位数等,我在笔考题目里就从来没见过。难题我觉得听了老钱的串讲后就差不多了,其他太难的,太偏的碰上的概率很小。最后还是那句话,个人经验并不一定适合所有的人,请大家根据自己的情况进行分析取舍!