0
这是我的代码:价值变量为每一个迭代
Program Arrays_0
Implicit none
Integer :: i , Read_number , Vig_Position , Vipg_Position , n_iter
Integer , parameter :: Br_gra = 12
Integer , parameter , dimension (Br_gra) :: Vig = [ (i , i = 1 , Br_gra) ]
Integer , parameter , dimension (Br_gra) :: Vipg = [ 0 , 1 , 1 , 1 , 2 , 2 , 3 , 4 , 4 , 7 , 7 , 7 ]
Integer :: Result_of_calculation
Write(*,*)"Enter the number (From 1 to Br_gra):"
Read(*,*) Read_number
Vig_Position = Vig(Read_number)
Vipg_Position = Vipg(Vig_Position)
n_iter = 0
Result_of_calculation = Vig_Position
Do while(Vipg_Position .ne. Vipg(1))
n_iter = n_iter + 1
Vig_Position = Vipg_Position
Result_of_calculation = Result_of_calculation + Vig_Position
Vipg_Position = Vipg(Vig_Position)
End Do
Write(*,'(a,1x,i0)')"The number of iteration is:",n_iter
Write(*,'(a,1x,i0)')"The result of calculation is:",Result_of_calculation
End Program Arrays_0
意向是在每次迭代中获取价值的变量: Vig_Position , Result_of_calculation and Vipg_position
。 如何为这种计算声明变量? 一般来说,有没有其他的方法来计算迭代次数? 如何在迭代次数函数中声明变量为计算结果的编号?
声明数组足够大以容纳迭代 – agentp
的预期数目没有“迭代预期数目”。这个数字在节目开始时是未知的。 –
你不需要知道数字,只需要一个上限。如果迭代次数可能会对计算机的内存造成负担,那么您应该在问题中详细说明。 – agentp