Round to nearest ones place value ex ante
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Please excuse me if this as been addressed/answered in a previous post, but I have not found a solution to this in my searches.
I am trying to round a number to certain ones place values that are unknown ex ante.
For example, the following value is unkown at first:
randi([3700 3705])
Now, once that number is known, I would like to know if the random number is closer to 3700 or 3705. In addition, the values of 3700 and 3705 are unkown at first as well.
Seems simple, but I'm struggling with this one, so any help is much appreciated!
0 Commenti
Risposte (3)
Eric Delgado
il 29 Set 2022
Lim_down = 3700;
Lim_up = 3706;
x = randi([Lim_down Lim_up])
Lim_center = mean([Lim_down, Lim_up]);
if x < Lim_center; fprintf("Closer to %.0f", Lim_down);
elseif x > Lim_center; fprintf("Closer to %.0f", Lim_up);
else; fprintf("In between...");
end
0 Commenti
Steven Lord
il 29 Set 2022
theRange = [3700 3705];
x = randi(theRange, 10, 1);
closer = interp1(theRange, theRange, x, 'nearest');
Let's show the results in a table for easy interpretation.
results = table(x, closer, 'VariableNames', ["Generated Number", "Closer Endpoint"])
0 Commenti
Vedere anche
Categorie
Scopri di più su Particle Swarm in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!