Programme en vb
Résolu
simovitch
-
dodita -
dodita -
Bonjour,
svp , je cherche un programme en Vb qui permet de verifier si un mot est un palindrome :
le mot sera ecrit sur un textbox avec un botton Vérifeir qui donne la résultat sur un msgbox !
svp , je cherche un programme en Vb qui permet de verifier si un mot est un palindrome :
le mot sera ecrit sur un textbox avec un botton Vérifeir qui donne la résultat sur un msgbox !
A voir également:
- Palindrome vba
- Vb - Télécharger - Langages
- Programme demarrage windows - Guide
- Mettre en veille un programme - Guide
- Message programmé iphone - Guide
- Programme word gratuit - Guide
17 réponses
Bonsoir,
Un autre code :
Bonne nuit
Un autre code :
Private Sub Verifier_Click() Dim leMot As String leMot = TextBox1.Value If leMot = StrReverse(leMot) Then MsgBox "Il s'agit d'un palindrome" Else MsgBox "Il ne s'agit pas d'un palindrome" End If End Sub
Bonne nuit
bonsoir,
Private Sub Verifier_Click()
Dim i As Integer, texte As String
'ecrire le mot à l'envers
texte = ""
For i = Len(Text1.Text) To 1 Step -1
texte = texte & Mid(Text1.Text, i, 1)
Next
'comparer le mot à l'endroit et le mot à l'envers
If Text1.Text = texte Then
MsgBox Text1.Text & " est un palyndrome"
Else
MsgBox Text1.Text & " n'est pas un palyndrome"
End If
End Sub
salut
Private Sub Verifier_Click()
Dim i As Integer, texte As String
'ecrire le mot à l'envers
texte = ""
For i = Len(Text1.Text) To 1 Step -1
texte = texte & Mid(Text1.Text, i, 1)
Next
'comparer le mot à l'endroit et le mot à l'envers
If Text1.Text = texte Then
MsgBox Text1.Text & " est un palyndrome"
Else
MsgBox Text1.Text & " n'est pas un palyndrome"
End If
End Sub
salut
Bonjour,
De rien, toujours ravie de pouvoir aider.
StrReverse() est une fonction qui permet "d'écrire" un mot à l'envers (calcul l'inverse d'un mot). Par exemple, si tu écris StrReverse(radar) le résultat de la fonction sera radar, si tu écris StrReverse(chose), le résultat sera esohc.
Bonne journée
De rien, toujours ravie de pouvoir aider.
StrReverse() est une fonction qui permet "d'écrire" un mot à l'envers (calcul l'inverse d'un mot). Par exemple, si tu écris StrReverse(radar) le résultat de la fonction sera radar, si tu écris StrReverse(chose), le résultat sera esohc.
Bonne journée
Merci!
j'ai une remarque , au lieu de déclarer lemot comme string , on peut le faire directement :
Private Sub Verifier_Click()
If text1.text = StrReverse(ltext1.text) Then
MsgBox text1.text , & "Il s'agit d'un palindrome"
Else
MsgBox text1.text , & "Il ne s'agit pas d'un palindrome"
End If
End Sub
j'ai une remarque , au lieu de déclarer lemot comme string , on peut le faire directement :
Private Sub Verifier_Click()
If text1.text = StrReverse(ltext1.text) Then
MsgBox text1.text , & "Il s'agit d'un palindrome"
Else
MsgBox text1.text , & "Il ne s'agit pas d'un palindrome"
End If
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Il faudrait que tu l'écrives ainsi :
Car :
---> MsgBox text1.text , & "Il s'agit d'un palindrome" = motécrit il s'agit d'un palindrome
---> MsgBox text1.text , & "Il ne s'agit pas d'un palindrome" = motécrit il ne s'agit pas d'un palindrome,
n'est pas vraiment du français correcte.
A+
Il faudrait que tu l'écrives ainsi :
Private Sub Verifier_Click() If TextBox1.Text = StrReverse(TextBox1.Text) Then MsgBox TextBox1.Text & " est un palindrome" Else MsgBox TextBox1.Text & " n'est pas un palindrome" End If End Sub
Car :
---> MsgBox text1.text , & "Il s'agit d'un palindrome" = motécrit il s'agit d'un palindrome
---> MsgBox text1.text , & "Il ne s'agit pas d'un palindrome" = motécrit il ne s'agit pas d'un palindrome,
n'est pas vraiment du français correcte.
A+
Ah , merci je comprend !!
mais dis moi tu as ecrit textBox1.text , y a t'il un déférence entre textbox1.text et text1.text ??
mais dis moi tu as ecrit textBox1.text , y a t'il un déférence entre textbox1.text et text1.text ??
En fait par défaut, lorsque tu crées une zone de texte dans une UserForm, la propriété Name de la zone de texte est TextBox1, si tu crées une deuxième la propriété Name sera TextBox2 etc.
Mais tu peux changer le Name et mettre text1 au lieu de TextBox1.
Voili voilou
Bonne soirée
Mais tu peux changer le Name et mettre text1 au lieu de TextBox1.
Voili voilou
Bonne soirée
ah c'est juste la proprieté Name de la zone text :D ! j'ai cru que l'a une relation avec msgbox ! lool
vraiment merci aquarelle , j'espere que tu m'aidera si je trouve des difficulté , j'ai un modéle de prog. Vb cette anné !
merci pour votre aide :)
vraiment merci aquarelle , j'espere que tu m'aidera si je trouve des difficulté , j'ai un modéle de prog. Vb cette anné !
merci pour votre aide :)
Re,
Il n'y a pas de souci, si tu as besoin d'aide, n'hésite pas à reposter un nouveau topic. Si je peux t'aider, je le ferai, sans aucun doute, mais t'inquiète pas, ici il y a beaucoup de personnes généreuses et passionnées qui pourront aussi t'aider.
Tu devrais t'inscrire en tant que membre de CCM, c'est gratuit et cela facilite la recherche des messages auxquels on participe : http://www.commentcamarche.net/communaute/inscription.php3
Bonne soirée et à+
Il n'y a pas de souci, si tu as besoin d'aide, n'hésite pas à reposter un nouveau topic. Si je peux t'aider, je le ferai, sans aucun doute, mais t'inquiète pas, ici il y a beaucoup de personnes généreuses et passionnées qui pourront aussi t'aider.
Tu devrais t'inscrire en tant que membre de CCM, c'est gratuit et cela facilite la recherche des messages auxquels on participe : http://www.commentcamarche.net/communaute/inscription.php3
Bonne soirée et à+
sinn , si je veut calculer le nombre d'espaces vides dans une phrase?,
à l'image par exemple , j'ecris "c'est mon premier programe en Vb "
clique sur verifier donne , 5 espaces !!!
à l'image par exemple , j'ecris "c'est mon premier programe en Vb "
clique sur verifier donne , 5 espaces !!!
Bonsoir simovitch,
Tout dabord,il te faut créer une fonction qui compte le nombre d'espaces dans une chaîne de caractère. Cette fonction est à placer dans un module :
Ensuite dans la UserForm au niveau du bouton :
Bonne soirée et à+
PS: la prochaine fois pour un nouveau sujet, ce serait bien que tu crées un nouveau topic (suje) comme tu l'as fait pour le palindrome ainsi d'autres personnes pourront s'y intéresser et t'apporter d'autres réponses. Ne connaissant pas très bien VB car j'utilise VBA sur excel, mes réponses vont vite être limitées.
Tout dabord,il te faut créer une fonction qui compte le nombre d'espaces dans une chaîne de caractère. Cette fonction est à placer dans un module :
Function espaces(chaine As String) As Integer ' Compter le nombre d'espaces Const espace As String = " " Dim nbcar As Integer ' Nombre de caractères de la chaîne à traiter Dim i As Integer ' Indice de boucle Dim nb As Integer ' compteur d'espaces nbcar = Len(chaine) nb = 0 For i = 1 To nbcar nb = nb + Abs(InStr(1, espace, Mid(chaine, i, 1)) <> 0) Next i espaces = nb ' Renvoie le résultat End Function
Ensuite dans la UserForm au niveau du bouton :
Private Sub CommandButton1_Click() MsgBox "La phrase contient " & espaces(TextBox1.Text) & " espaces" End Sub
Bonne soirée et à+
PS: la prochaine fois pour un nouveau sujet, ce serait bien que tu crées un nouveau topic (suje) comme tu l'as fait pour le palindrome ainsi d'autres personnes pourront s'y intéresser et t'apporter d'autres réponses. Ne connaissant pas très bien VB car j'utilise VBA sur excel, mes réponses vont vite être limitées.
ah ok !!!
je le ferai la prochaine fois !!
peut tu m'expliqué ce lign : nb = nb + Abs(InStr(1, espace, Mid(chaine, i, 1)) <> 0) !
j'avait intention de creer une fonction pour cela mais le prof a dit sans le faire , c'est a dire d'utiliser juste les modéles foncions comme Len() et mid() et instr() , les fonctions usuals !
je le ferai la prochaine fois !!
peut tu m'expliqué ce lign : nb = nb + Abs(InStr(1, espace, Mid(chaine, i, 1)) <> 0) !
j'avait intention de creer une fonction pour cela mais le prof a dit sans le faire , c'est a dire d'utiliser juste les modéles foncions comme Len() et mid() et instr() , les fonctions usuals !
Bonsoir simovitch,
En gros, cela sert de compteur, au départ, nb= 0, ensuite il prend la première lettre de la chaine écrite, regarde si c'est un espace si oui, il ajoute 1 et nb devient = 1 sinon 0 et nb reste égal à 0, ensuite il regarde la deuxième lettre et fait pareil, etc .
Par contre, il serait bon que tu fasses un peu de recherches sur les fonctions avec google, il y a pas mal de sites intéressants sur VB, par exemple : https://www.microsoft.com/en-us/download/details.aspx?id=55984
Bonne nuit
En gros, cela sert de compteur, au départ, nb= 0, ensuite il prend la première lettre de la chaine écrite, regarde si c'est un espace si oui, il ajoute 1 et nb devient = 1 sinon 0 et nb reste égal à 0, ensuite il regarde la deuxième lettre et fait pareil, etc .
Par contre, il serait bon que tu fasses un peu de recherches sur les fonctions avec google, il y a pas mal de sites intéressants sur VB, par exemple : https://www.microsoft.com/en-us/download/details.aspx?id=55984
Bonne nuit
Public Class Form1
Dim k As Integer
Dim mot As String
---------
Private Sub btn_dec_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_dec.Click
mot = txt_mot.Text
For k = 0 To (mot.Length.ToString) - 1
Liste_mot.Items.Add(mot.Substring(k, 1))
Next
txt_mot.Text = ""
End Sub
-------
Private Sub btn_pal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_pal.Click
If Liste_mot.Items.Count = StrReverse(Liste_mot.Items.Count) Then
MsgBox("Il s'agit d'un palindrome")
Else
MsgBox("ce mot n'est pas un palindrome")
End If
Liste_mot.Items.Clear()
End Sub
End Class
Dim k As Integer
Dim mot As String
---------
Private Sub btn_dec_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_dec.Click
mot = txt_mot.Text
For k = 0 To (mot.Length.ToString) - 1
Liste_mot.Items.Add(mot.Substring(k, 1))
Next
txt_mot.Text = ""
End Sub
-------
Private Sub btn_pal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_pal.Click
If Liste_mot.Items.Count = StrReverse(Liste_mot.Items.Count) Then
MsgBox("Il s'agit d'un palindrome")
Else
MsgBox("ce mot n'est pas un palindrome")
End If
Liste_mot.Items.Clear()
End Sub
End Class
Private Sub CmdPalindrome_Click()
Dim leMot, word As String
leMot = Text1.Text
motsansespace = ""
For i = 1 To Len(leMot)
word = Mid(leMot, i, 1)
If word <> " " Then
motsansespace = motsansespace & LCase(word)
End If
Next i
'MsgBox motsansespace
'MsgBox StrReverse(motsansespace)
If LCase(motsansespace) = LCase(StrReverse(motsansespace)) Then
MsgBox "Il s'agit d'un palindrome"
Else
MsgBox "Il ne s'agit pas d'un palindrome"
End If
Dim leMot, word As String
leMot = Text1.Text
motsansespace = ""
For i = 1 To Len(leMot)
word = Mid(leMot, i, 1)
If word <> " " Then
motsansespace = motsansespace & LCase(word)
End If
Next i
'MsgBox motsansespace
'MsgBox StrReverse(motsansespace)
If LCase(motsansespace) = LCase(StrReverse(motsansespace)) Then
MsgBox "Il s'agit d'un palindrome"
Else
MsgBox "Il ne s'agit pas d'un palindrome"
End If