How to add new elements in a big array
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Mina Mansour
le 31 Juil 2019
Commenté : Mina Mansour
le 31 Juil 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 commentaires
Réponse acceptée
James Tursa
le 31 Juil 2019
Maybe assign into elements of N with indexing:
N(j) = length(group);
3 commentaires
James Tursa
le 31 Juil 2019
I would assume the same place you are assigning it now. Just change the left hand side from N to N(j).
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Birthdays dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!