24小时热门版块排行榜    

查看: 702  |  回复: 3

jxgzhjy

木虫 (正式写手)

[求助] matlab if语句问题 已有2人参与

请问以下代码怎么理解啊

if timepresent
   maxcorrranget=round(maxexcldistt/2);
   lagnumbert=5;
   lagslimitst=round(maxcorrranget*(1-log(lagsnumbert+1-[1:lagsnumbert])./log(lagsnumbert)));
else
   maxcorrranget=NaN;
   lagsnumber=0;
   lagslimitst=[];
end

其中第一行if 后直接跟变量怎么理解
还有第四行中间有个[1:lagsnumbert]怎么理解

如果能解释整个代码就更好了,学学
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

哈楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dota

木虫 (著名写手)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
jxgzhjy: 金币+2, ★★★★★最佳答案 2015-10-20 11:17:41
if (timepresent)  相当于 if (timepresent == 0)
2楼2015-10-20 10:39:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

512095518

专家顾问 (正式写手)

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
jxgzhjy: 金币+2, ★★★★★最佳答案 2015-10-20 11:17:48
由于不明白你的各个参数指代什么意思,所以解释不了
[1:lagsnumbert]应该是矩阵,其中lagsnumbert这个东西肯定是一个数值,所以1:lagsnumbert表示一个从1开始,以1为步长的连续矩阵,例如lagsnumbert=5,则[1:lagsnumbert]就等于[1 2 3 4 5]
PS:1:2:lagsnumbert,如果这样写就是以2为步长的等差数列矩阵
没有极限,只有超越!
3楼2015-10-20 11:01:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

512095518

专家顾问 (正式写手)

【答案】应助回帖


jxgzhjy: 金币+1, ★★★★★最佳答案 2015-10-20 11:18:21
补充下其中round函数就是四舍五入的功能,例如round(3.5)=4;round(3.4)=3;
没有极限,只有超越!
4楼2015-10-20 11:04:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 jxgzhjy 的主题更新
信息提示
请填处理意见