如何用matlab产生-1和1随机序列,急急急~~~

生成1000个1和-1的随机序列... 生成1000个1和-1的随机序列 展开
 我来答
醉悠敌0I1d0
推荐于2017-11-29 · TA获得超过142个赞
知道答主
回答量:21
采纳率:0%
帮助的人:18万
展开全部
你题目的意思是随机生成1000个-1或1,而不是生成1000个[-1,1]之间的随机数吧?
用rand函数生成0~1之间的随机数序列,判断大于0.5的转化成1,小于等于的转换为-1即可。
代码:

num=1000;%总共1000个数
a=rand(1,num);生成0~1随机数序列
a(a>0.5)=1;
a(a<=0.5)=-1;

a就是你要求的。
也许还有更简单的代码,比如使用逻辑运算等。
精灵壶
2020-03-08
知道答主
回答量:30
采纳率:0%
帮助的人:9万
展开全部
可以这样写

%% 生成随机序列a
b = rand(1,1000)*2-1; %1000个[-1,1]之间的随机数
a = sign(b); % 取b每项的符号函数获得目标序列a
祝编程顺利
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
妇女之偶像
2009-01-15 · TA获得超过453个赞
知道答主
回答量:109
采纳率:0%
帮助的人:89.5万
展开全部
...我来给个简单的实现吧
a=2*rand(1,1000)-1;
rand(1,1000)产生1000个0-1间的书2*rand(1,1000)产生1000个0-2间的数,再减去1就是-1到1的了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
阿海的情感窗
2020-04-24 · TA获得超过3662个赞
知道大有可为答主
回答量:3038
采纳率:34%
帮助的人:174万
展开全部
for
i=1:n
a(i)=rand[0,1]
end
很久没用matlab了
不知道这种写法对不对
你查查吧
产生随机数就是用rand函数
至于是用[]还是()我忘了,随机序列需要用数组来承接
也便于以后的运用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
EthanTung
2013-03-23
知道答主
回答量:4
采纳率:0%
帮助的人:6504
展开全部
产生-1 和1 的随机序列
Math.Sin(Math.PI / 2 + Math.Ceiling(Rnd() - 0.5) * Math.PI)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式