sacar - math porcentaje c#
¿Qué tipos debo usar para representar porcentajes en C#y SQL Server? (6)
Con respecto a SQL Server, es raro que almaceno un porcentaje. 9 veces de cada 10, desea almacenar los datos que se utilizan para derivar el porcentaje y calcular según sea necesario.
Si y solo si tiene datos empíricos que muestran que el cálculo es demasiado lento, entonces guárdelo. Use un decimal como se sugirió anteriormente para evitar problemas de redondeo.
Estoy pensando en carrozas. Para el registro, también estoy usando NHibernate.
Depende de para qué los uses.
si es para mostrar, un int podría funcionar bien y ser más rápido que un float. Si se trata de matemáticas infrecuentes, un int todavía sería bueno (o incluso un corto, en cualquier caso).
Si estás haciendo un montón de matemáticas, entonces una carroza probablemente sea la mejor, en cuanto a rendimiento.
Por supuesto, a menos que esté haciendo MUCHA manipulación de los porcentajes, al final no importará, en términos de rendimiento, dada la velocidad del procesador moderno.
EDITAR: por supuesto, ''int'' supone que solo está usando porcentajes estrictos de números enteros. Si no lo eres, SIEMPRE serías mejor con float o dec.
En gran parte depende de cuánta precisión necesita; Lo más importante es ser consistente y claro. Tome precauciones para asegurarse de que sea coherente en todo el uso del campo ... es decir, no lo almacene como un flotador (n = .5) y luego intente reconstituirlo como si fuera un número entero en otra parte de su código (mipercentaje = n / 100). Mientras se asegure de no hacer eso y no esté construyendo un láser que requiera 30 dígitos significativos de precisión, simplemente elija su sabor favorito entre int, doble o lo que flote en su bote. Waka Waka.
La respuesta depende de la aplicación.
Otros han señalado que es mejor que decimal para representar un valor exacto. Pero a veces es mejor usar un flotador para aumentar la precisión (por ejemplo, un conjunto de pesos calculados que sumen 100% probablemente esté mejor representado como un flotador)
decimal
No perderás precisión debido al redondeo.
Depende de la precisión que necesites. Si no necesita decimales, incluso podría usar tiny int. Pero generalmente los flotadores son buenos si necesitas algunos decimales. Yo uso LLBLGen y flotadores para% ''s