IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

résultat d'un traitement dans une seule ligne Messagebox


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 44
    Points : 31
    Points
    31
    Par défaut résultat d'un traitement dans une seule ligne Messagebox
    bonsoir
    je voudrais afficher la liste des diviseurs de ce nombre dans une boite de dialogue
    en utilisant une variable.
    exemple
    Les diviseurs sont : 1,3,5,9....

    voile mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
            If Not IsNumeric(NBS.Text) Then
                Return
                Exit Sub
            End If
            Dim n = Int(NBS.Text)
            Dim i As Integer
            For i = n To 0 Step -1
     
                If n Mod i = 0 Then
                    MsgBox("les  diviseurs sont : " & i)
     
                End If
            Next
        End Sub
    actuellement le résultat s'affiche à chaque fois que je clique sur OK

  2. #2
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Bonjour

    actuellement le résultat s'affiche à chaque fois que je clique sur OK
    normal selon ton code tu crées un messagebox à chaque itération
    donc mais d'abord tes résultats dans un string et ensuite utilise les messagebox.show

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 44
    Points : 31
    Points
    31
    Par défaut
    Citation Envoyé par shayw Voir le message
    Bonjour



    normal selon ton code tu crées un messagebox à chaque itération
    donc mais d'abord tes résultats dans un string et ensuite utilise les messagebox.show
    j'ai fais un essai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
            If Not IsNumeric(NBS.Text) Then
                Return
                Exit Sub
            End If
            Dim res = ""
            Dim n = Int(NBS.Text)
            Dim i As Integer
            For i = n To 0 Step -1
     
                If n Mod i = 0 Then
                    res = i
     
                End If
            Next
            MsgBox("les  diviseurs sont : " & +res)
     
        End Sub
    End Class

  4. #4
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Function Diviseur() As String
            Dim res As Integer
            Dim strresult As String = String.Empty
            If Integer.TryParse(nbs.text, res) Then
                strresult &= res & ","
                For iter = res \ 2 To 1 Step -1
                    If res Mod iter = 0 Then
                        strresult &= iter & ","
                    End If
                Next
            End If
            Return strresult.Substring(0, strresult.Length - 1)
        End Function
    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
     MessageBox.Show(Diviseur)
    end sub

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 44
    Points : 31
    Points
    31
    Par défaut
    Citation Envoyé par shayw Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Function Diviseur() As String
            Dim res As Integer
            Dim strresult As String = String.Empty
            If Integer.TryParse(nbs.text, res) Then
                strresult &= res & ","
                For iter = res \ 2 To 1 Step -1
                    If res Mod iter = 0 Then
                        strresult &= iter & ","
                    End If
                Next
            End If
            Return strresult.Substring(0, strresult.Length - 1)
        End Function
    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
     MessageBox.Show(Diviseur)
    end sub
    merci
    mais est ce q'il y a une manière plus simple

  6. #6
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Citation Envoyé par iMech Voir le message
    merci
    mais est ce q'il y a une manière plus simple
    c'est compliqué

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2012
    Messages : 44
    Points : 31
    Points
    31
    Par défaut
    lorsque je saisi ce code dans un module séparer et dans le bouton je saisi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
     MessageBox.Show(Diviseur)
    end sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Function Diviseur() As String
            Dim res As Integer
            Dim strresult As String = String.Empty
            If Integer.TryParse(nbs.text, res) Then
                strresult &= res & ","
                For iter = res \ 2 To 1 Step -1
                    If res Mod iter = 0 Then
                        strresult &= iter & ","
                    End If
                Next
            End If
            Return strresult.Substring(0, strresult.Length - 1)
        End Function
    je nais pas des erreurs souligné mais lorsque j’exécute mon programme j'ai un erreur

    "Variable objet ou variable d'un bloc With non définie."}Nom : erreur.png
Affichages : 164
Taille : 26,5 Ko

  8. #8
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Le code de la fonction diviseur doit être écrit en dehors du button4_click

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button5.Click
     
     MessageBox.Show(Diviseur)
    end sub
     
    Private Function Diviseur() As String
    'rend un string contenant les diviseurs séparés par une ,
            Dim res As Integer
            Dim strresult As String = String.Empty
           'on verifie si nbs.text est un nombre  
            If Integer.TryParse(nbs.text, res) Then
               ' res est le nombre en question
              ' strreresult est la chaine des résultats 
              ' pour savoir les diviseurs d'un nombre on divisise le nombre par 1 2 3 jusqu'à nombre\2 ou dans le sens inverse de nombre\2 jusqu'à 1 et verifie si le   reste = 0  et aussi on ajoute le nombre lui même 
                strresult &= res & ","
                For iter = res \ 2 To 1 Step -1
                    If res Mod iter = 0 Then
                        strresult &= iter & ","
                    End If
                Next
            End If
           ' le string strresult contient une virgule de trop donc 
            Return strresult.Substring(0, strresult.Length - 1)
        End Function

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Concaténer résultat requête dans une seule ligne
    Par ahmed99 dans le forum Débuter
    Réponses: 2
    Dernier message: 24/01/2013, 01h53
  2. Réponses: 4
    Dernier message: 26/12/2007, 22h59
  3. Ecrire dans une seule ligne
    Par jbidou88 dans le forum Access
    Réponses: 4
    Dernier message: 04/09/2006, 14h52
  4. regrouper des informations dans une seule ligne
    Par rozow dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 11/04/2006, 16h03
  5. plusieurs enregistrements dans une seul ligne
    Par Celelibi dans le forum Requêtes
    Réponses: 3
    Dernier message: 03/01/2005, 15h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo