声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1430|回复: 6

[编程技巧] 如何获取方阵中的某一个数

[复制链接]
发表于 2007-11-8 23:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
function myfun

for i=1:21
  for j=1:21
    x(i)=1+(i-1)*0.05;
    y(j)=1+(j-1)*0.05;
    s(i,j)=x(i)+y(j);     
  end
end

结果出来是一个方阵,但我调用这个程序时只想调用其中某一个数。
请问:我应该怎样改啊?

[ 本帖最后由 eight 于 2007-11-16 17:00 编辑 ]
回复
分享到:

使用道具 举报

发表于 2007-11-9 06:51 | 显示全部楼层
1.尽量不要用i,j做循环变量,他们是虚数标志
2. 想调用那一个数?
 楼主| 发表于 2007-11-9 09:29 | 显示全部楼层
我是想取产生的方阵中的一个数,但结果是21阶的方阵
发表于 2007-11-9 13:28 | 显示全部楼层
function myfun(s,i,j)

加上传递的变量,比如,取S(8,10)  


function myfun(s,8,10) 即可。

建议你看看 fortron 子程序编辑方面的资料。
发表于 2007-11-9 15:18 | 显示全部楼层
原问题贴一下-------哪个数?
 楼主| 发表于 2007-11-12 18:16 | 显示全部楼层
先谢谢各位,我是在编有限差分法求偏微分方程的时候用到这个子程序来离散,得到网格数值,后来我把这个子程序直接放在主程序中,就没出现问题了。
发表于 2007-11-12 19:03 | 显示全部楼层
原帖由 aqiang 于 2007-11-8 23:13 发表
function myfun

for i=1:21
  for j=1:21
    x(i)=1+(i-1)*0.05;
    y(j)=1+(j-1)*0.05;
    s(i,j)=x(i)+y(j);     
  end
end

结果出来是一个方阵,但我调用这个程序时只想调用其中某一个数。
...




%以下功能一样
[x,y]=meshgrid([1:0.05:2],[1:0.05:2]);
s=x+y;

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-18 15:47 , Processed in 0.058503 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表