0
votes

Je ne peux pas obtenir mon calculateur de facteur de Lorentz simple pour travailler avec des décimales. Qu'est-ce que je rate?

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: xxx


1 commentaires

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 au lieu de int .


3 Réponses :


1
votes

Si vous souhaitez calculer avec des décimales, vous devez utiliser le type de données double au lieu d'un intégrité .

un int a une plage allant de -2,147,483,648 à 2 147 483,647 et un double a une plage de + -5,0 x 10-324 à + -1,7 x 10308.

Vous voyez qu'un int ne peut pas gérer les décimales.


0 commentaires

0
votes

Si le facteur de votre numéro serait élevé, je vous conseille d'utiliser décimal

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

Outre Lorenz facteur utilise 1 / sqrt (1 - V * V) xxx


3 commentaires

double pour physique pas finance 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)));



0
votes

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 est un entier.


0 commentaires