Ho fatto
rand() \ RAND_MAX
e mi escono numeri con la virgola
Ho fatto
rand() \ RAND_MAX
e mi escono numeri con la virgola
Esatto (usando / e aggiungendo un cast a double prima). L'idea è che dividendo per il massimo numero che può assumere vai a riscalare il range sull'intervallo [0, 1), ottenendo così i numeri decimali che ti interessano. Ovviamente rimoltiplicando per un altro valore puoi ottenere il range che vuoi.
(nota comunque che la "granularità" del risultato rimane limitata dalla risoluzione di rand())
Amaro C++, il gusto pieno dell'undefined behavior.