View Full Version : Domande su Matlab
Non so se era meglio aprirlo in un altra sezione, però mi sa che la maggior parte delle persone che lo usano o lo hanno usato dovrebbe star qui.
Mi servirebbe lavorare in modalità frazionaria in matlab.
Cioè se metto:
1/2 + 1/3 vorrei avere 5/6 come risposta.. e non l'equivalente decimale.
Sapere come si fa? Grazie.
Uhm, ho trovato "rat", però non è esattamente quello che cerco:
http://www.mathworks.com/access/helpdesk/help/techdoc/ref/rat.html
In pratica rat, prende un numero in forma decimale e lo fa diventare una frazione che gli sta "vicina".
» rat (1/3+1/2)
ans =
1 + 1/(-6)
Mi pare di capire che prima si fa tutti i calcoli in modalità decimale e solo alla fine converte il risultato in forma frazionaria.
A me serve invece che faccia tutti i conti in forma frazionaria.. come ci hanno insegnato a scuola:
Cioè:
1/3 + 1/2 = 2/6 + 3/6 = 5/6
Prova questo:
http://www.mathworks.com/access/helpdesk/help/techdoc/ref/format.html
Prova questo:
http://www.mathworks.com/access/helpdesk/help/techdoc/ref/format.html
fa comunque riferimento a "rat", in sostanza cambia solo la "visualizzazione" del risultato finale, ma non come lo calcola.
Allora mi sa che hai bisogno di questo pacchetto: http://www.mathworks.com/access/helpdesk/help/toolbox/symbolic/
Allora mi sa che hai bisogno di questo pacchetto: http://www.mathworks.com/access/helpdesk/help/toolbox/symbolic/
Grazie! sembra proprio quello che serve a me:
MATLAB performs arithmetic on symbolic objects differently than it does on standard data types. If you add two fractions that are of data type double, MATLAB gives the answer as a decimal fraction. For example:
2/5 + 1/3
ans =
0.7333
If you add the same fractions as symbolic objects, MATLAB finds their common denominator and combines them by the usual procedure for adding rational numbers:
sym(2)/sym(5) + sym(1)/sym(3)
ans =
11/15
Sto cercando di capire dal manuale se c'è un modo per entrare in "symbolic mode", così da evitare di dover scrivere "sym" duecentomila volte...
uC.ArTaX
26-08-2006, 13:04
se prima di una sessione scrivi "format rat" vedi i risultati come frazioni. Ricorda che influenza solo come li vedi, non come sono in realtà. In questo modo fornisce il risultato di un'operazione con frazioni come frazione, ma anche di tutto il resto.
Es.
>> format rat
>> 5/6 + 2/3
>> ans =
>> 3/2
>> 3.2+5.7
>> ans =
>> 89/10
Chiaramente i passaggi non il mostra.
se prima di una sessione scrivi "format rat" vedi i risultati come frazioni. Ricorda che influenza solo come li vedi, non come sono in realtà. In questo modo fornisce il risultato di un'operazione con frazioni come frazione, ma anche di tutto il resto.
Es.
>> format rat
>> 5/6 + 2/3
>> ans =
>> 3/2
>> 3.2+5.7
>> ans =
>> 89/10
Chiaramente i passaggi non il mostra.
sì esatto, però a me serviva che facesse anche le operazioni mantenendo tutto in forma frazionaria, checcot mi ha suggerito di usare sym(...)
uC.ArTaX
27-08-2006, 15:56
sì esatto, però a me serviva che facesse anche le operazioni mantenendo tutto in forma frazionaria, checcot mi ha suggerito di usare sym(...)
Ehm.. il fatto è che avevo cliccato rispondi, poi mi ero messo a fare prove con Matlab e quando ho risposto sono apparsi tutti gli altri messaggi e non ho avuto voglia di editare.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.