Converting a fraction into a floating number

15 visualizzazioni (ultimi 30 giorni)
Samuel Généreux
Samuel Généreux il 30 Gen 2018
Modificato: Walter Roberson il 15 Dic 2023
Hi, I want to simply convert a fraction into a float. When I checked with the help, it seems really simple. To convert 2/5 into a float, it seems like I just need to type float(2/5). But, when I do that, I have for response :Error using float (line 46) The input argument to float was not a supported type. The only recognized input character vectors are 'single' and 'double'. The input type was 'double'. Can someone explain me that?
  5 Commenti
John D'Errico
John D'Errico il 30 Gen 2018
Modificato: Walter Roberson il 15 Dic 2023
No. The examples given by Samuel are NOT consistent with the use of float as it is seen in the Simulink docs. However, they ARE consistent with the examples shown in the MuPAD documentation. That is why I talked about MuPAD. In fact, if I read the examples shown for the MuPAD float, we find very coincidentally these examples:
float(17), float(PI/7 + I/4), float(4^(1/3) + sin(7))
As copied directly out of this link:

Accedi per commentare.

Risposte (3)

John D'Errico
John D'Errico il 30 Gen 2018
No. There is no need to use float.
x = 2/5
x =
0.4
whos x
Name Size Bytes Class Attributes
x 1x1 8 double
x is automatically a floating point number, of class double.

Cyrus Azizzadeh
Cyrus Azizzadeh il 22 Dic 2021
If I have an equation like (256753367864*t)/(46897532469) How can I convert that to float?
  6 Commenti
Walter Roberson
Walter Roberson il 23 Dic 2021
This is an approach to get some readable representation of the result, not to get the result in MATLAB form. The result will be in the internal MuPAD language
Cyrus Azizzadeh
Cyrus Azizzadeh il 24 Dic 2021

Thanks a lot. I'll test that

Accedi per commentare.


Rishab
Rishab il 15 Dic 2023
just use the double() function

Community Treasure Hunt

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

Start Hunting!

Translated by