我正尝试使用FORTRAN创建pascal三角形。我做了算法。在C编译成功,但由于某种原因,我没有在FORTRAN中获得相同的期望结果。任何人都可以帮我解决这个问题吗?FORTRAN中的Pascal三角形
代码在C(工作):在FORTRAN
#include <stdio.h>
#include <stdlib.h>
int main()
{
unsigned int c, i, j, k,n;
scanf("%d",&n);
for(i=0; i < n; i++) {
c = 1;
for(j=1; j <= (n-1-i); j++) printf(" ");
for(k=0; k <= i; k++) {
printf("%2d", c);
c = c * (i-k)/(k+1);
}
printf("\n");
}
return 0;
}
代码(不工作,需要帮助这里):
program pascal
implicit none
integer i,j,k,p,n
read(*,*)n
i=0
do while(i.lt.n)
p=1
do j=1,n-1-i
write(*,5)
5 format(1x)
enddo
do k = 0,i
write(*,1)p
1 format(i2)
p = p*(i-k)/(k+1)
enddo
i=i+1
write(*,2)
2 format(/)
enddo
endprogram
尽管我爱fortran,我讨厌它是I/O时它涉及到格式化输出。 – ja72