for loop inside for loop
显示 更早的评论
So I have this vector of number of packets start from 1:1e3 . each single packet have random number of datagrams and each of this datagrams have a size following geometeric distribution. The idea is to find the total size of all datagrams within each packet and for all the packets (from 1:1e3). So I did this code that have 1e3 packets and each packet have a random number of datagrams. but, once I tried to find the total size of all datagrams for all the packets, it only gives me the first total size of packet number 1 then stop. here is my code:
xi=0.91; sigma=74.1; mu=81.5; nof_packets=1000;
p=25;
mean=1/p;
for q=1:nof_packets
n_d(q)=geornd(mean);
for m=1:n_d
datagram_size(m)=gprnd(xi,sigma,mu);
counter=sum(datagram_size);
end
end
5 个评论
Does it error or just end? It looks more likely that it only gives you the size of the last packet, overwriting the earlier ones.
for q=1:nof_packets
n_d(q)=geornd(mean);
for m=1:n_d
datagram_size(m)=gprnd(xi,sigma,mu);
end
counter(q)=sum(datagram_size);
end
total_packets = sum(counter);
(there's probably a cleaner way that doesn't involve loops, but I'm not clear on the structure of your data)
Sindar
2020-1-20
Also, I wouldn't use "mean" as a variable name, since it is an important built-in function
talal alqahtani
2020-1-20
Sindar
2020-1-20
Does my code work for you?
talal alqahtani
2020-1-20
回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!