How to add new elements in a big array
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Mina Mansour
am 31 Jul. 2019
Kommentiert: Mina Mansour
am 31 Jul. 2019
I want to repeat this procedure for NT = 1e4 trials, storing the N-value for each trial in a 1e4 element array, and report the median number. how to make every iteration's length of the group gets added to the N array that I created the zeros syntax? I want just one array of NT elements at the end.
N = zeros(1,NT);
for j = 1:NT
% while loop for recycling the match of birthdays in the same week.
matchFound = 0;
k = 0; group = ceil(365*rand);
while matchFound == 0 && k <= NT
k = k + 1;
newBD = ceil(365*rand);
% if conditioning a group with birthdays in the same week.
if abs(newBD - group(k)) < 7 ...
|| abs(newBD - group(k) - 365) < 7 ...
|| abs(newBD - group(k) + 365) < 7
matchFound = 1;
fprintf('The required number of people is %i\n', length(group))
N = length(group);
end
% New Birthday groups upon each new addition of a person.
newG = [group; newBD];
group = newG;
end
end
fprintf('Median Number of People %i ', median(N))
end
0 Kommentare
Akzeptierte Antwort
James Tursa
am 31 Jul. 2019
Maybe assign into elements of N with indexing:
N(j) = length(group);
3 Kommentare
James Tursa
am 31 Jul. 2019
I would assume the same place you are assigning it now. Just change the left hand side from N to N(j).
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Birthdays finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!