Per gestire le conversioni di temperatura, la tua tabella di conversione dovrebbe avere un moltiplicatore e un offset. Per F --> C, ad esempio, l'offset sarebbe -32 e il moltiplicatore 5/9.
Se conosci tutte le unità possibili in anticipo, un messaggio basato su tabelle funziona correttamente. Tuttavia, se desideri un sistema completamente flessibile come metri^5*litri a pollici^5*galloni, allora ti servirà una tabella delle unità basse e una funzione definita dall'utente per eseguire la conversione. Questa funzione userebbe probabilmente un cte ricorsivo per analizzare l'espressione delle unità. Tutto questo sarebbe piuttosto complicato, quindi spero che tu abbia un elenco completo di unità.