Interview qustion matlab function

2 visualizzazioni (ultimi 30 giorni)
Mohammed kandeel
Mohammed kandeel il 29 Giu 2018
Commentato: Mohammed kandeel il 14 Lug 2018
I asked to implement function it's input is a vector and plot it with time.
ex: lets suppose the input vector is [ 0 1 2 3 3 3 4 4 4 4 4 5 5 5 6 7 8]
if you can see there are 17 element so the time vector will be from [1......17]
but back to the input vector and take these values [0 1 2 3] can be represent from [1 3]
but time must be still [1 2 3 4], so when the slop is equal i need to keep first and last one and delete the middle elements.
back to input vector again i will see this [3 3 3] can be represent from [3 3]
but time must be still [3 4 5], so here will be constant line.
and so one the next input [4 4 4 4 4] equal to [4 4] with time from [6 7 8 9 10], Linear constant
so you need to generate new vector but the shape of it equal to the original shape.
Thanks in advance.
  7 Commenti
Guillaume
Guillaume il 29 Giu 2018
a = [1 2 2 2 2 3 4 5 6 7 7 7 7 8]
idx = [1, find(diff(diff(a)))+1, numel(a)]
plot(idx, a(idx));
David Goodmanson
David Goodmanson il 29 Giu 2018
yes, I forgot that (in this case) points 3 thru 6 are not included.

Accedi per commentare.

Risposte (1)

Mohammed kandeel
Mohammed kandeel il 9 Lug 2018
Hello Guillaume,
I just want to ask how many years of experience you take to get this solution?
i just used matlab less than one year. i can't answer this question within 2 minutes.
  3 Commenti
Guillaume
Guillaume il 9 Lug 2018
Yes, the hardest part is working out what the question is! Once that is understood, the problem reduces to finding the changes of slope in the data which is trivial to do in matlab. It doesn't take years of experience to understand that diff(X) is the slope, and diff(diff(X)) is the change of slope (2nd derivative).
Note: a good way to practice with similar problems is Cody
Mohammed kandeel
Mohammed kandeel il 14 Lug 2018
Thanks for all of you, i really love to ask to understand to share knowledge.
Love you all and "Guillaume" i will start with link you provide me.
One more Question What is the best book to start with Matlab script , simulink and stateflow ?

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by