how can i modify this code to use in Stateflow?

2 Ansichten (letzte 30 Tage)
kadri
kadri am 2 Jun. 2013
for s2=1:b
for s1=1:b-1
if m(1,s1)>m(1,s1+1)
c=m(1,s1);
m(1,s1)=m(1,s1+1);
m(1,s1+1)=c;
end
end
end
How can i generate this code in Stateflow Chart without using Matlab embeded function block. i have vector such as m=[0 1 2 3 4 5 6 7 8 9 10 ] and i m planning to use code that above to sort numbers in ascending order.
thank you.

Antworten (2)

Siddharth
Siddharth am 3 Jun. 2013
If you are building your state machine in R2012b or newer, use the new chart block that uses MATLAB. In that block you can directly use MATLAB functions in the state actions/conditions. In your example, you could replace the loops with a call to the MATLAB function
sort
in the state diagram. Or you could write the loops directly in the state diagram too. Learn more about the chart block that uses MATLAB here: http://www.mathworks.com/videos/matlab-as-the-action-language-70059.html
  1 Kommentar
kadri
kadri am 3 Jun. 2013
thank you for your answer but i have to use stateflow chart, cuz calling Matlab function is not allowed to do this challenge.
My main problem is about this code, i can't generate for loop in for loop (two for loop) with stateflow charts. Could you give me example how can i create two for loop with stateflow charts?
thank you.

Melden Sie sich an, um zu kommentieren.


Siddharth
Siddharth am 17 Jun. 2013
If you are not allows to use MATLAB functions, use graphical functions to achieve the same functionality. Find more information on how to create for loops using graphical functions here .

Kategorien

Mehr zu Complex Logic 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!

Translated by