chifres apres le virgule

Résolu
HAFEDHPOLY Messages postés 9 Date d'inscription samedi 20 août 2011 Statut Membre Dernière intervention 26 août 2011 - 24 août 2011 à 21:55
HAFEDHPOLY Messages postés 9 Date d'inscription samedi 20 août 2011 Statut Membre Dernière intervention 26 août 2011 - 25 août 2011 à 22:41
Bonjour a tous et a toutes,

je cherche a trouver le norme d'un vecteur, par exemple: sqrt((2.33^2)+(0.21555^2)+(1.2^2))
si je fait ca avec vb.net, il prend pas les chifres derieur le virgule, c-ad il fait: sqrt((2^2)+(0^2)+(1^2))

svp comment faire pr resoudre ce pb qu'il parait simple pr vs



Merci pr votre aide

12 réponses

cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
25 août 2011 à 21:52
Salut
Oui tu as raison pourquoi ?

Val ne reconnait pas le séparateur decimal
comme virgule mais un point
donc si tu as comme valeur dans la textbox 3,5
val("3,5") = 3
et net on utilise le
double.parse ou double.tryparse

TextBox2.Text = "46,6"
Dim x As Double
Dim k As Double
If Double.TryParse(TextBox2.Text, x) Then
   k = Math.Sqrt(x)
End If


avec double.parse
Try
   x = Double.Parse(TextBox2.Text)
   k = Math.Sqrt(x)
   Catch ex As Exception
       MessageBox.Show(ex.Message)
   End Try



et aussi evite d'utiliser des textboxes comme
variables un textbox sert à lire des données
ou a afficher des données
3
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
24 août 2011 à 23:56
Bonjour,

Essayes avec Math.Pow pour la racine carré (0.5).
Mais je ne sais pas si ça résolvera ton pb.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
25 août 2011 à 00:43
Salut

Comme l'a dit NHenry (que je salue au passage), SQRT n'est pas une fonction VB.Net, mais Math.Sqrt
Dans quoi programmes-tu ?

Dans quoi ranges-tu le résultat, parce que chez moi, Math.Sqrt((2.33^2)) renvoie bien 2.33

NH : Resoudra

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
HAFEDHPOLY Messages postés 9 Date d'inscription samedi 20 août 2011 Statut Membre Dernière intervention 26 août 2011
25 août 2011 à 00:55
Bomjour

j l'ai deja fait, mais le vrai pb c'est comment lire ts les chifres qui se trouve ds le textbox

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
HAFEDHPOLY Messages postés 9 Date d'inscription samedi 20 août 2011 Statut Membre Dernière intervention 26 août 2011
25 août 2011 à 04:16
Bonjour,

je travaille sur vb.net
jack ca marche bien avec math.sqrt si c'est l'utilisateur qui entre les valeurs ds 3 textbox, mais si par exemple on fait la meme chose pr 3 textbox
dont les valeurs sont deja calculé (non donner par l'utilisateur) alors dans ce cas il prend que les chifre avant le virgule.


merci pr vos suggestion
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
25 août 2011 à 09:17
Bonjour,

Salut Jack :)
Je note, même si j'aime bien ce terme, enfin pas grave :)

HAFEDHPOLY, avec quel code ? (Voir le point 2 de mon premier message)

Mon site
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
25 août 2011 à 10:17
Salut
mais si par exemple on fait la meme chose pr 3 textbox
dont les valeurs sont deja calculé


pas clair
passe les valeurs des textbox dans des variables
n'utilise pas le textbox.text comme parametre
dans tes fonctions
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
25 août 2011 à 12:07
Bonjour,

En VB.NET, il faut TOUJOURS (sauf cas très spéciaux) activer Option Strict (propriétés du projet).

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
Utilisateur anonyme
25 août 2011 à 12:09
Salut Hafe,

Je ne comprends pas bien non plus...
J'ai fait ça en .NET et ça fonctionne:

Dim Result As Double = Math.Sqrt((2.33 ^ 2) + (0.21555 ^ 2) + (1.2 ^ 2))
TextBox2.Text = Result '(<=> 2,62970755075541)

A+

CF2i - Guadeloupe
Ingénierie Informatique
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
25 août 2011 à 12:36
Bonjour,
le grand responsable est ici, comme l'a souligné ShayW, le fait de passer par un tremplin textbox alourdissant et trompeur au lieu de tout bêtement se servir, dans une variable, de ce qui l'alimente.
Ce n'est ni le premier ni le dernier forumeur qui agit et agira de cette manière assez cocasse.



____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne intallée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
HAFEDHPOLY Messages postés 9 Date d'inscription samedi 20 août 2011 Statut Membre Dernière intervention 26 août 2011
25 août 2011 à 20:46
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        TextBox4.Text = Val(TextBox1.Text)
        TextBox5.Text = Val(TextBox2.Text)
        TextBox6.Text = Val(TextBox3.Text)
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        TextBox7.Text = Math.Sqrt((Val(TextBox1.Text) ^ 2) + (Val(TextBox2.Text) ^ 2) + (Val(TextBox3.Text) ^ 2))
        TextBox8.Text = Math.Sqrt((Val(TextBox4.Text) ^ 2) + (Val(TextBox5.Text) ^ 2) + (Val(TextBox6.Text) ^ 2))
    End Sub
End Class


lorsque vs lancer l'appli entrer juste des valeurs ds textbox1,2 et3
et vous allez voir la differnce entre les valeurs dans textbox7 et textbox8.
j'attend vos commentaire
Merci a tous
0
HAFEDHPOLY Messages postés 9 Date d'inscription samedi 20 août 2011 Statut Membre Dernière intervention 26 août 2011
25 août 2011 à 22:41
Merci bien ShayW, t'as resolu mon pb
0
Rejoignez-nous