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 :

Question de Karirovax


Sujet :

VB.NET

  1. #21
    Membre régulier

    Homme Profil pro
    Bricoleur ( débutant )
    Inscrit en
    Juillet 2010
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Bricoleur ( débutant )
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2010
    Messages : 51
    Points : 90
    Points
    90
    Par défaut VB.NET
    Citation Envoyé par Pol63 Voir le message
    ca serait dommage de s'en passer, visual basic express étant gratuit ...
    Merci Plol63 mais mon PC est contient beaucoup des ressources, programmes, vidéos, Photos, ...etc

    L'espace disque maintenant est de 1,5G c'est pour cela j'ai coincé .... mais peut être après quelque jours je doit sauver mes données personnelles et le formater à la suite

    Maintenant j'ai réussi un peut de faire fonctionner mon programme ( merci à tous pour l'aides ) mais juste un petit problème que la boucle fonctionne très très bien sauf qu'elle ne prend pas en charge le 1er caractère ( lettre ) du tableau.
    le hashtable quand j'ajoute à lui le premier caractère :

    elle me dit qu'il existe déjà, ... j'ai trompé là

    Vous avez une solution à ce grand problème ?
    Si vous aimez ma réponse, pensez à cliquer sur

    Si le problème est résolu, pensez à cliquer sur ( bouton en bas )

    cordialement

  2. #22
    Membre régulier

    Homme Profil pro
    Bricoleur ( débutant )
    Inscrit en
    Juillet 2010
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Bricoleur ( débutant )
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2010
    Messages : 51
    Points : 90
    Points
    90
    Par défaut Re: VB.NET
    Merci Pour vous Tous

    Enfin, J'ai réussi à trouver la solution ... beuuuuuuh

    pour le code final ici:

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
     
     
     
    Public Class Equation
    	Dim أ = 1
    	Dim ا = 1
    	Dim ب = 2
    	Dim ج = 3
    	Dim د = 4
    	Dim ه = 5
    	Dim و = 6
    	Dim ز = 7
    	Dim ح = 8
    	Dim ط = 9
    	Dim ي = 10
    	Dim ك = 20
    	Dim ل = 30
    	Dim م = 40
    	Dim ن = 50
    	Dim ص = 60
    	Dim ع = 70
    	Dim ف = 80
    	Dim ض = 90
    	Dim ق = 100
    	Dim ر = 200
    	Dim س = 300
    	Dim ت = 400
    	Dim ث = 500
    	Dim خ = 600
    	Dim ذ = 700
    	Dim ظ = 800
    	Dim غ = 900
    	Dim ش = 1000
    	Dim Tab1 As String() = {"ا" , "ب", "ج", "د", "ه", "و", "ز", "ح", "ط", "ي", "ك", "ل", "م", "ن", "ص", "ع", "ف", "ض", "ق", "ر", "س", "ت", "ث", "خ", "ذ", "ظ", "غ", "ش"}
    	Dim Tab2 As Integer() = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000}
    	'Dim leMessage As String = Nbre_a.Text '"Coucou c'est moi"
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    	    Dim tab As New Hashtable 'Une HashTable pour stocker des clé/values (ici a/1, b/2, ...)
            Dim leMessage As String = Nbre_a.Text '"Coucou c'est moi"
            Dim somme As Integer = 0
            Dim i As Integer = 0
            'For Each caractere As Char In "ABCDEFGHIJKLMNOPQRSTUVWXYZ" 'On parcourt chaque lettre de l'alphabet
    		''msgbox(Tab1(2))
    		''tab.Add(Tab1(0), 0)
    		''Dim table As new HashTable()
    		''For i=0 To 28		  
    		''  For Each carh As Char In "أبجدهوزحطيكلمنصعفضقرستثخذظغش"
    		''     table.Add(carh, i)
    		''	 i +=1
    		''  Next
    		''Next
    		'Dim myHash As Hashtable = CreateHashtable()
     
    		For Each caractere As Char In "أبجدهوزحطيكلمنصعفضقرستثخذظغش"
    		    tab.Add(caractere, Tab2(i)) 'On ajoute à la Hastable la lettre parcouru associé à notre compteur i
                i += 1
    		Next
     
    		'Search an Item
            'If tab.ContainsValue(Tab2(1)) Then
            '    MsgBox("الحرف ب موجود")
            'Else
            '    MsgBox("الحرف ب غير موجود")
            'End If
     
            'leMessage = leMessage.ToUpper 'On met tout en majuscule car sinon le caractère ne sera pas reconnu (a =/= A)
     
            leMessage = Replace(leMessage, " ", "")
    		Dim NbOc As Long
    		Dim RC As integer = 1
    		For Each car As Char In leMessage 'on parcourt le message
    		'For Each k As Integer In Tab1 'on parcourt le message
                If tab.ContainsKey(car) Then 'on teste que le caractère parcouru fasse parti de notre Hashtable (ainsi on ne plantera pas sur des espaces ou caractères spéciaux)
    			'If Tab1(k) <> "" Then 'on teste que le caractère parcouru fasse parti de notre Hashtable (ainsi on ne plantera pas sur des espaces ou caractères spéciaux)
    			   'if inStr(leMessage,"ا") Then 'et ca retourne un variant.
                   'somme = somme + tab(car)
                    '  somme = somme + Val(Tab1(0)) '+ tab(car) On recupére la valeur numérique associé à notre caractère et on l'ajoute à notre somme
    				'  Else
    				'Function NbOc(leMessage As String, Ch As String, Optional RC As integer = 1) As Long
    				NbOc = (Len(leMessage) - Len(Replace(leMessage, Tab1(0), "", , , RC))) / Len(Tab1(0))
    				'NbOc = (Len(Chaine) - Len(Replace(Chaine, Ch, "", , , RC))) / Len(Ch)
    				'End Function
    				'ou:
    				'leMessage=Ta chaine principale
    				'Ch=Ta sous chaine (ou caractère)
    				'RC=Pour Respecter ou non la Casse dans la fonction Replace prédéfinie en visual basic 
    				'si RC=1 alors majuscule = minuscule
    				'si RC=0 alors  majuscule /= minuscule 
     
    			   'End If
                End If			
    			somme = somme + tab(car)'+NbOc
    			'somme = somme + Tab2(car)
    			'MsgBox(somme)
            Next
    		'Dim kad As String = MsgBox(Mid(leMessage,1,Len(leMessage)))
    		Dim Ch As String = msgbox("ظهر الحرف ا :" & NbOc & " مرة")
    		somme = somme +NbOc
    		'MsgBox(Tab2(0))
    		'MsgBox(somme)
    	    Nbre_c.Text = somme
        End Sub
     
        Private Sub Effacer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Effacer.Click
            Nbre_a.Text = ""
            Nbre_b.Text = ""
            Nbre_c.Text = ""
        End Sub
     
        Private Sub Quitter_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Quitter.Click
            End
        End Sub
     
        Private Sub Equation_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.Visible = False
            Me.Hide()
            'Accueil.ShowDialog()
        End Sub
     
        Private Sub BtnResoudre_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnResoudre.Click
            'pour le test ... pas encore
    		'Nbre_b.Text = Tab2(5)
    		Dim leMessage As String = Nbre_a.Text
    		Dim tkr As Integer = NbOc(leMessage,"ا")
    		Nbre_b.Text = "ظهر حرف الألف: " & tkr & " مرة"
        End Sub
        Private Function NbOc(leMessage As String, Ch As String, Optional RC As integer = 1) As Long
    	         Ch = Tab1(0)
    	         NbOc = (Len(leMessage) - Len(Replace(leMessage, Ch, "", , , RC))) / Len(Ch)
    			 msgbox("ظهر الحرف ا :" & NbOc & " مرة")
    			 'NbOc = (Len(Chaine) - Len(Replace(Chaine, Ch, "", , , RC))) / Len(Ch)
    	End Function
    End Class
    merci encore et désolé
    Si vous aimez ma réponse, pensez à cliquer sur

    Si le problème est résolu, pensez à cliquer sur ( bouton en bas )

    cordialement

  3. #23
    Membre chevronné Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Points : 1 961
    Points
    1 961
    Par défaut
    Je n'ai pas pu revenir du week-end sur le topic, mais je vois qu'avec l'aide des autres helpers tu t'es débrouillé.
    N'hésite pas à améliorer ton code avec des noms de variables plus mnémoniques et des optimisations du code.
    Bon courage pour la suite.
    Aider les autres, c'est encore la meilleure façon de s'aider soi-même. Martin Gray

    ToDo : Faire une ToDo List

  4. #24
    Membre régulier

    Homme Profil pro
    Bricoleur ( débutant )
    Inscrit en
    Juillet 2010
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Bricoleur ( débutant )
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2010
    Messages : 51
    Points : 90
    Points
    90
    Par défaut VB.NET
    Citation Envoyé par _Ez3kiel Voir le message
    Je n'ai pas pu revenir du week-end sur le topic, mais je vois qu'avec l'aide des autres helpers tu t'es débrouillé.
    N'hésite pas à améliorer ton code avec des noms de variables plus mnémoniques et des optimisations du code.
    Bon courage pour la suite.
    Merci encore _Ez3kiel, c'est vraiment un grand plaisir de vous reconnaitre ... à cause de vos aides ( et code bien sur ) j'arrive à trouver un moyen assez simple de faire ce petit code ( mon frère qui me propose si je peux faire une petite application qui calcule la somme à partir d'une phrase " en arabe ", cette méthode existe depuis des siècles et j'ai décidé de trouver un programme qui fait le calcul de cette dernière )

    Je remercie encore tous ce qui me donne un cout de main
    Merci à tous
    malgré que je doit faire un carré magique plus tard ( je doit comprendre quel est la méthode pour le remplir )
    pour vous tous.
    Si vous aimez ma réponse, pensez à cliquer sur

    Si le problème est résolu, pensez à cliquer sur ( bouton en bas )

    cordialement

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/08/2002, 21h27
  2. Divers questions
    Par Freakazoid dans le forum DirectX
    Réponses: 2
    Dernier message: 06/08/2002, 21h57
  3. question sur les message box !
    Par krown dans le forum Langage
    Réponses: 7
    Dernier message: 02/08/2002, 16h11
  4. Question de faisabilité
    Par lisarasu dans le forum CORBA
    Réponses: 3
    Dernier message: 14/05/2002, 11h26
  5. [HyperFile] 2 questions de débutant
    Par khan dans le forum HyperFileSQL
    Réponses: 2
    Dernier message: 29/04/2002, 23h18

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