我正在准备考试,并且正在处理一些练习题,遗憾的是这些题不提供解决方案。我想使用SUM函数,数组构造函数和隐含的do循环来编写这个函数:
从n = 2到100,(1 + 2 * N)* LOG10(N)
的和
我试过了:
WRITE(*,*) SUM(real:: x(99) = (/ ( (1+2*N)*LOG10(REAL(N)) , N=2,100 ) /))
但是所有IDE都说这个语句不被识别。我尝试了其他各种方法,但没有运气。
答案 0 :(得分:1)
不允许在声明中声明x
。此外,它不是必需的,您可以直接处理隐含循环:
program test
implicit none
integer :: n
WRITE(*,*) SUM( (/ ( (1+2*N)*LOG10(REAL(N)) , N=2,100 ) /))
end program
这给出了
18187.0469