声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1212|回复: 9

[编程技巧] 一个编程问题

[复制链接]
发表于 2009-10-11 08:52 | 显示全部楼层 |阅读模式

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

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

x
我用数值方法计算了1000个数值
用for语句进行循环1000次分别对这1000个数值进行判断
然后储存判断后的1000个数值。做出时间t与这1000个数的函数关系图

我的问题是      储存这分别循环后的1000个数应如何表达?最后能做出时间t与循环后数值的关系图
这个我没搞明白,请高手指点一下
谢谢
回复
分享到:

使用道具 举报

发表于 2009-10-11 10:15 | 显示全部楼层
原来1000个数放在哪里?,文件里?
 楼主| 发表于 2009-10-11 10:45 | 显示全部楼层

回复 沙发 VibrationMaster 的帖子

没有啊,就是刚刚计算出来
用龙格库塔法计算的
不是太复杂
发表于 2009-10-11 14:43 | 显示全部楼层
龙个哭他法出来之后不是放在数组里面? 对数组处理之后仍然放在新数组(就的也行)里面。 整个循环结束后再plot?
 楼主| 发表于 2009-10-11 17:43 | 显示全部楼层

回复 地板 VibrationMaster 的帖子

恩,对啊
龙格库塔法解出来放在数组里,然后分别对每一个数进行判断,然后在储存在数组里,在用plot
我的问题是判断后如何储存在数组中,可以用plot输出
也许这个问题很简单,但我确实不明白
发表于 2009-10-11 20:11 | 显示全部楼层
假定A是原来的数组,执行

B=zero(size(A));

for k1=1:length(A)
     if(A(k1)>0) % or other condition
         B(k1)=A(k1)^2; % your operation
     else
         B(k1)=-A(k1)^2; % your operation
     end
end
plot(B)
 楼主| 发表于 2009-10-12 07:58 | 显示全部楼层

回复 6楼 VibrationMaster 的帖子

多谢啊
我运行程序出现??? Undefined function or method 'zero' for input arguments of type 'double'.
是怎么回事啊
我自己仿照你的编的程序
B=zero(size(A));
for k1=1:length(A)
     if(A(k1)>4) % or other condition
         B(k1)=A(k1)-2; % your operation
     elseif(-4<A(k1)<4)
         B(k1)=0; % your operation
     elseif(A(k1)<-4)
         B(k1)=A(k1)+2;
     end
end
plot(B)
帮我看看有结构上的错误码
在此感谢啊
发表于 2009-10-12 08:39 | 显示全部楼层

回复 7楼 讨论求知 的帖子

TRY
B=zeros(size(A));

[ 本帖最后由 ChaChing 于 2009-10-12 08:40 编辑 ]
 楼主| 发表于 2009-10-12 10:08 | 显示全部楼层

回复 8楼 ChaChing 的帖子

呵呵
真是不好意思,这点小问题自己都没检查出来。
我想我的问题解决了
谢谢大家
发表于 2009-10-12 11:07 | 显示全部楼层

回复 9楼 讨论求知 的帖子

若不是报错, 我也没注意到!:@L
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-5-11 20:54 , Processed in 0.052643 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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