关于RANDI函数以及RANDINT函数的区别

        这篇博客很早之前我就想写了,现在放寒假了想着给大家写一下这个问题,很多做通信相关专业的同学也要开始做毕设了。可能很多同学本科期间没有接触到这么难的课题。想着书上找找代码,就从学校图书馆找到了《MIMO-OFDM无线通信技术及MATLAB实现》这本书。满心欢喜想运行里面的代码,但是大部分代码都没办法用,完了自己也不想问老师,自己又懒得搞,最后用了一些不可言说的方法,稀里糊涂搞完了毕设。可能到毕业都不知道自己做了什么,有一部分同学到了研究生可能都看不懂自己做了些什么,这是一件很可怕的事情。所以还是希望大家端正态度,如果毕设遇到一些编程方面的问题,欢迎大家咨询吧,我有时间就会回复,希望大家多多关注。

        回归正题,《MIMO-OFDM无线通信技术及MATLAB实现》书中代码无法运行的原因百分之80都是一个问题“未定义函数或变量 'randint'”。randint函数在MATLAB2017就已经彻底删除了。

        高版本的MATLAB此时会提示您,RANDINT已停用,请修改为RANDI。修改之后就会遇到下一个问题:维度会对不上,后面的一系列操作的无法实现。关于这个的区别主要是顺序问题。假如生成1000个随机二进制序列,randi的语法如下所示。

randi([0 1],1,1000);

          而在randint函数中是这么使用的:

randint(1,1000,1);

         二者的区别在于顺序不同,randi的第一个变量为范,后面是维度。而randint最后一一位才是范围。randi在很多方面都要优于randint函数。例如:在randi中,生成的整数范围是左闭右闭的,这意味着指定的最小值和最大值都是可能的结果。而在randint中,生成的整数范围是左闭右开的,即指定的最小值是可能的结果,但指定的最大值是不可能的结果。因此randint遭到了一定程度上的弃用。这个问题大家在日常书写MATLAB语法中一定要多加注意这个问题,还有一些函数的变动与更新我会在后续博客中进行介绍,希望大家多多关注。

  • 12
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天下第一关lennon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值