[问题] 循环问题

楼主: Wstyle (Astor)   2012-05-28 20:30:34
最近刚接触fortran
遇到循环以后因为逻辑还没建立起来所以有点头痛
像下面的例题:
让使用者输入长宽后利用星号产生一个空心矩形
例如10*10跑出来要是
**********
* *
* *
* *
* *
* *
* *
* *
* *
**********
而我目前只能做到上面跟右边有星号而已
integer :: length,width
integer :: liml,limw
write(*,*) "输入长度及宽度"
read(*,*) length,width
liml=1
limw=1
do while (liml<=length)
write(*,"('*',$)")
liml=liml+1
end do
do while (limw<width)
write(*,"('*')")
limw=limw+1
end do
stop
end
想请问我该怎么改才能跑出完美地矩形呢?
可以的话能否连写的逻辑也一起告诉我
感激不尽TAT
作者: george1224 ( )   2012-05-28 23:16:00
请问里面有要写东西吗?
作者: kkarthur (aa)   2012-05-29 08:10:00
你需要IF
楼主: Wstyle (Astor)   2012-05-29 09:36:00
g大 里面只要空白就好不要有东西 但这样我就不会了...k大 意思是我要在do while里面加入IF同时跑出两边吗?
作者: onezillion (宝贝)   2012-05-29 22:34:00
integer:: i=5,j=11,m,nprint '(<j>(A),\)', ('*',n=1,j)print '(<i-2>(/,<j>A))', (('*', (' ',n=1,j-2),'*'),m=1,i-2)print '(<j>(A))', ('*',n=1,j)pause中间有两行要连着

Links booklink

Contact Us: admin [ a t ] ucptt.com