J'essaie de faire une calculatrice qui calcule le facteur de Lorentz en C #. Mais cela ne semble pas fonctionner avec des décimales. Je n'ai effectué que la première partie de la calculatrice:
3 Réponses :
Si vous souhaitez calculer avec des décimales, vous devez utiliser le type de données un Vous voyez qu'un double code> au lieu d'un intégrité code>. p>
int code> a une plage allant de -2,147,483,648 à 2 147 483,647 et un
double code> a une plage de + -5,0 x 10-324 à + -1,7 x 10308. p>
int code> ne peut pas gérer les décimales. P>
Si le facteur de votre numéro serait élevé, je vous conseille d'utiliser Les décimales ont une précision beaucoup plus élevée et sont généralement utilisées dans les applications monétaires (financières) nécessitant un degré de précision élevé.
Référence P>
blockQquote> Outre Lorenz facteur utilise décimal code>
1 / sqrt (1 - V * V) code> p>
double code> pour physique i> pas finance i> monde
Merci pour votre aide, je peux maintenant entrer des décimales, mais quand j'utilise var "calc = 1m / convert.todecimal (math.sqrt (1 - vitesse1 * vitesse1));" J'obtiens que l'erreur ne peut pas convertir décimal au double
obtenu, il était censé être var calc = 1m / convert.todecimal (math.sqrt ((double) (1 - vitesse1 * vitesse1))); code>
Lorsque vous divisez par 1 au lieu de C sous la racine carrée, cela signifie que vous mesurez la vitesse dans les unités de C, pas en m / s. Par conséquent, la valeur numérique de la vitesse doit être une fraction de 1.
Cependant, votre variable vitesse1 code> est un entier. P>
Tout d'abord, veuillez reformater votre code, je ne pense pas que cela fonctionnera si je le collage dans VS ... Deuxièmement, si vous souhaitez calculer avec des décimales, utilisateur
double code> au lieu de
int code>.