24小时热门版块排行榜    

查看: 1461  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

mhyuan

金虫 (小有名气)

[交流] Fortran中关于数组的变化 已有1人参与

请高手指点
怎么把二维数组中间的某一列(或行)放到最后,其后面的各列(行)一次往前移。

[ Last edited by mhyuan on 2011-7-25 at 10:33 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
jjdg(金币+1): 感谢参与 2011-07-25 17:55:24
据我所知,没有……
4楼2011-07-25 14:07:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

snoopyzhao

至尊木虫 (职业作家)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
jjdg(金币+1): 感谢参与 2011-07-25 17:55:17
把中间的这一列放到一个临时变量中,然后,后面各列依次前移(一次前移似乎也是可以的,没有测试),然后把临时变量中的那列写到最后一列就可以了……

大概就是下面这个样子……
CODE:
integer, dimension(3,4) :: A
integer, dimension(3) :: B

B = A(:,2)

A(:,2:3) = A(:,3:4)
A(:,4) = B

2楼2011-07-25 10:54:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mhyuan

金虫 (小有名气)


dubo(金币+1): 欢迎常来程序语言版讨论 2011-07-31 13:18:42
引用回帖:
Originally posted by snoopyzhao at 2011-07-25 10:54:53:
把中间的这一列放到一个临时变量中,然后,后面各列依次前移(一次前移似乎也是可以的,没有测试),然后把临时变量中的那列写到最后一列就可以了……

大概就是下面这个样子……
[code]
integer, dimension( ...

我也用了相同的方法,只是感觉比较麻烦,不知道有没有这样的Fortran库函数,要是有,就方便了。
3楼2011-07-25 12:25:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mhyuan

金虫 (小有名气)


dubo(金币+1): 欢迎常来程序语言版讨论 2011-07-31 13:18:53
引用回帖:
Originally posted by snoopyzhao at 2011-07-25 14:07:58:
据我所知,没有……

有两个循环交换的,cshifteoshift
5楼2011-07-25 17:40:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见