View Full Version : [c++] Funzione Approssimazione all'intero + vicino
Ciao a tutti...
Ho il seguente problema.. devo approssimare una serie di numeri (che di certo saranno float) all'intero più vicino... ad esempio
se ho
10.2 e 10.8.. il primo deve diventare 10 ed il secondo 11
Mi sapreste dare una mano?
Grazie
Simo
Dovresti sottrarre al numero il cast int di se stesso, e quindi otterresti un valore compreso tra 0.0 e 0.9, quindi nel caso questo valore superi 0.5 restituisci il cast +1 altrimenti il solo cast.
Così dovrebbe andare:
double round(double num)
{
double diff = abs(num - (int)num);
if((diff >= 0.5 && num < 0) || (diff < 0.5 && num >= 0)
return (int)num - 1;
return (int)num + 1;
}
..adesso di sicuro mi ci mandate...
Non devo approssimare all'intero + vicino.. ma a quello superiore....
Sorry...
Mi sapreste dire come fare?
Grazie
adesso ci provo io.. prendendo spunto dal programmino appena postato..
double round(double num)
{
return (int)num + 1;
}
in sostanza a 9.2 gli prendo la parte intera.. cioè 9 e gli sommo una unità..
problema risolto..
Grazie ancora!!!
Giusto...mi dimenticavo di ceil e floor ;)
grazie ragà siete il top!!!
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.