Division in stateflow is showing only integer part
Ältere Kommentare anzeigen
I am trying to do a simple division operation in stateflow like a=5/2 but the output is coming to 2 instead of 2.5 The data type of a is double. Its rounding the decimal digits and giving me only the integer part. Pls help
1 Kommentar
Vishal Rane
am 15 Mär. 2013
Just noticed that using 5.0/2.0 instead of 5/2 gives you 2.5.
Antworten (3)
Vishal Rane
am 15 Mär. 2013
Bearbeitet: Vishal Rane
am 15 Mär. 2013
I believe typecasting both dividend and divisor as double should do the job.
{
a = double(5)/double(2);
}
Not sure whether this the usual approach.
1 Kommentar
Aditya
am 16 Mär. 2013
Aditya
am 19 Mär. 2013
0 Stimmen
chaitanya balaga
am 20 Nov. 2019
Bearbeitet: chaitanya balaga
am 20 Nov. 2019
0 Stimmen
Instead, you can try the following assignment, a:=5/2;
This overrides the floor(a/b) behaviour in stateflow and gives you the desired result which is entirely dependent on the datatype of a. In this case you will get a = 2.5
Kategorien
Mehr zu Simulink Functions finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!