关于matlab中循环变量输出的问题

m=rand(120);%初始数据包数量120t0=0.01;%假设时隙为0.01st=[];J=[];i=0;j=0;N=0;a1=unifrnd(0,0.2,1,10... m = rand(120); %初始数据包数量120t0 = 0.01; %假设时隙为0.01st=[];J=[];i=0;j=0;N=0;a1 = unifrnd (0,0.2,1,100);%用户丢包率[0,0.2]均匀分布a2 = 0.99; %用户成功解码概率为99%a = (1-a1)*a2; %a为用户接收到数据包并成功解码的概率 for n=1:100 %接收端用户数量100 while i < 100 %成功解码需接收100个包 if rand(1) < a i = i+1; j = j+1; else j = j+1; end end J(n)=j; while length(t)<50 r = randperm(100,50); if ismember(n,r) == 1 t=[t,J(n)]; end end end一段随机采样的代码,用J将每次循环中j的值储存,为什么最后J和t里都是一个和j最后相同的一个值?怎么改才能让J里储存每次循环后j的值? 展开
 我来答
乔908833036
2018-04-10
知道答主
回答量:20
采纳率:64%
帮助的人:11.1万
展开全部
循环前面设置J=zeros(100,1),然后你那行含有J的改为J(j)=j,不过这样结果里会有0和实际j掺杂在一块,再用find函数修正一下就好,多多练习一下find。
更多追问追答
追问
我照你说的改了,结果全是0,只有最后有一个J的值
我照你说的改了,结果全是0,只有最后有一个J的值
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式