# How to find value which is berofe max value of an array?

1 view (last 30 days)
Serhii Sheinych on 22 Nov 2019
Commented: Walter Roberson on 23 Nov 2019
I have an array, let it be r1 = rand(1,100).
I need to find max value and a value which is before maximum. How can i do it?
Maimum = max (r1);
p.s Simple example a = [1, 4, 10, 2, 7, 3, 6];
I know that max is 10, and 7 is before my max value. How to find 7, using Matlab?

Bryan on 22 Nov 2019
Edited: Bryan on 22 Nov 2019
another option would be
max(a(a<max(a)))
Bryan on 23 Nov 2019
Edited: Bryan on 23 Nov 2019
Yes, I agree. Use Walter Roberson's solution.
Walter Roberson on 23 Nov 2019
They are both valid, just slightly different on edge cases.

Walter Roberson on 22 Nov 2019
Serhii Sheinych on 22 Nov 2019
Thank You!

### Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!