Auteur |
Message |
Shakan972
Forumeur fréquent
Messages: 67
|
Posté le:
Ven 22 Sep 2006 - 22:40 |
|
Bonsoir tout le monde je suis actuellement en BTS IG 1er année et disons qu'en développement on a commencé le visual basic histoire d'acquérir les bases le professeur nous as donné une série d'exercices à réaliser en visual basic 6.0 et disons que ayant déjà acquis une petite expérience en programmation j'ai fait tous les exercices d'un coup sans attendre de les faire en cours et le problème c'est que parmis ces exercices il y a un programme à écrire qui consiste à faire un tri par ordre croissant de 3 nombres notés X , Y et Z.
Donc mon problème c'est que j'ai fait le programme sans difficultés mais mon professeur m'a dit de ne pas utiliser les conditions multiples à savoir AND et OR donc pensez-vous qu'elle a raison de me dire ça je ne voudrais pas paraître prétentieux mais si je maitrîse déjà ces notions pourquoi devrais-je m'en passer ? Cette question je vous la pose mais il se pourrait aussi que mon code soit simplifié aussi je vous affiche le code source pour que chacun puisse me donner son avis.
Merçi d'avance pour votre aide et vos propos
Code: |
Sub main()
Dim X As Single, Y As Single, Z As Single, tri As String
tri = ""
X = InputBox("Veuillez saisir la valeur du premier nombre : ")
Y = InputBox("Veuillez saisir la valeur du deuxième nombre : ")
Z = InputBox("Veuillez saisir la valeur du troisième nombre : ")
If X <= Y And X <= Z And Y <= Z Then
MsgBox "Résultat du tri : " & X & "/" & Y & "/" & Z
Else
If X <= Z And X <= Y And Z <= Y Then
MsgBox "Résultat du trie : " & X & "/" & Z & "/" & Y
Else
If Y <= X And Y <= Z And X <= Z Then
MsgBox "Résultat du tri : " & Y & "/" & X & "/" & Z
Else
If Y <= Z And Y <= X And Z <= X Then
MsgBox "Résultat du tri : " & Y & "/" & Z & "/" & X
Else
If Z <= X And Z <= Y And X <= Y Then
MsgBox "Résultat du tri : " & Z & "/" & X & "/" & Y
Else
If Z <= Y And Z <= X And Y <= X Then
MsgBox "Résultat du tri : " & Z & "/" & Y & "/" & X
End If
End If
End If
End If
End If
End If
End Sub
|
|
Dernière édition par Shakan972 le Sam 23 Sep 2006 - 16:37; édité 1 fois |
|
|
|
N'oubliez pas de vous inscrire à la communauté pour participer. Si vous êtes déjà membre, connectez-vous pour faire disparaître ce bandeau publicitaire. |
Strato
Résident du forum
Sexe:
Messages: 250
Localisation: Paris
|
Posté le:
Sam 23 Sep 2006 - 01:06 |
|
Déjà, ta variable tri ne sert à rien dans ce que tu nous montres.
Tu peux effectivement te passer des AND, mais c'est légèrement plus fastidieux, et moins naturel à écrire.
Code: |
Sub main()
Dim X As Single, Y As Single, Z As Single
X = InputBox("Veuillez saisir la valeur du premier nombre : ")
Y = InputBox("Veuillez saisir la valeur du deuxième nombre : ")
Z = InputBox("Veuillez saisir la valeur du troisième nombre : ")
If X <= Y
If Y <= Z
MsgBox "Résultat du tri : " & X & "<" & Y & "<" & Z
Else
If X <= Z
MsgBox "Résultat du tri : " & X & "<" & Z & "<" & Y
Else
MsgBox "Résultat du tri : " & Z & "<" & X & "<" & Y
End If
End If
Else
If X <= Z
MsgBox "Résultat du tri : " & Y & "<" & X & "<" & Z
Else
If Y <= Z
MsgBox "Résultat du tri : " & Y & "<" & Z & "<" & X
Else
MsgBox "Résultat du tri : " & Z & "<" & Y & "<" & X
End If
End If
End If
End Sub |
Tu peux aussi te passer des ELSE, mais ça alourdit terriblement le code car tu multiplies les conditions imbriquées.
Code: |
Sub main()
Dim X As Single, Y As Single, Z As Single
X = InputBox("Veuillez saisir la valeur du premier nombre : ")
Y = InputBox("Veuillez saisir la valeur du deuxième nombre : ")
Z = InputBox("Veuillez saisir la valeur du troisième nombre : ")
If X <= Y
If Y <= Z
MsgBox "Résultat du tri : " & X & "<" & Y & "<" & Z
End If
End If
If X <= Y
If Z <Y>= X
MsgBox "Résultat du tri : " & X & "<" & Z & "<" & Y
End If
End If
End If
If Z <= X
If X <= Y
MsgBox "Résultat du tri : " & Z & "<" & X & "<" & Y
End If
End If
If Z <= X
If Y <X>= Z
MsgBox "Résultat du tri : " & Z & "<" & Y & "<" & X
End If
End If
End If
If Y <= X
If X <= Z
MsgBox "Résultat du tri : " & Y & "<" & X & "<" & Z
End If
End If
If Y <= X
If Z <X>= Y
MsgBox "Résultat du tri : " & Y & "<" & Z & "<" & X
End If
End If
End If
End Sub |
Voilà.
Attention! Je me base sur mes connaissances en algorithmes, je n'ai jamais fait de Visual Basic (j'ai commencé le C# aujourd'hui même), et je me base sur ton propre travail. Mais normalement c'est bon.
P.S : La prévisualisation bugue et je n'arrive pas à le corriger. Vincent qu'est-ce que c'est que ce bordel??!!?? Je devrais avoir trois IF imbriqués dans la dernière partie par exemple... |
|
|
|
|
Strato
Résident du forum
Sexe:
Messages: 250
Localisation: Paris
|
Posté le:
Sam 23 Sep 2006 - 01:13 |
|
Ce sont ces lignes là qui buguent :
Code: |
If Z <Y>= X
If Y <X>= Z
If Z <X>= Y |
Et j'ai beau enlever les balises CODE ça ne change rien.
Bizarre... |
|
|
|
|
Shakan972
Forumeur fréquent
Messages: 67
|
Posté le:
Sam 23 Sep 2006 - 04:07 |
|
Je te remerçie de ton aide Strato car j'avais du mal à faire le programme de cette manière ça me praît plus claire maintenant sinon connais-tu de bon lien pour avoir des tutos sur visual basic ça me serait très utile merçi d'avance.
|
|
|
|
|
Strato
Résident du forum
Sexe:
Messages: 250
Localisation: Paris
|
Posté le:
Sam 23 Sep 2006 - 12:27 |
|
Shakan972 a écrit: |
Je te remerçie de ton aide Strato car j'avais du mal à faire le programme de cette manière ça me praît plus claire maintenant sinon connais-tu de bon lien pour avoir des tutos sur visual basic ça me serait très utile merçi d'avance. |
Quel que soit le langage qui t'intéresse, quelque soit ton besoin (cours, tutoriel, entraide, ...), ton ami s'appelle Developpez.com. |
|
|
|
|
keldrill
Résident du forum
Messages: 284
|
Posté le:
Sam 23 Sep 2006 - 12:45 |
|
Strato a écrit: |
Shakan972 a écrit: |
Je te remerçie de ton aide Strato car j'avais du mal à faire le programme de cette manière ça me praît plus claire maintenant sinon connais-tu de bon lien pour avoir des tutos sur visual basic ça me serait très utile merçi d'avance. |
Quel que soit le langage qui t'intéresse, quelque soit ton besoin (cours, tutoriel, entraide, ...), ton ami s'appelle Developpez.com. |
Par contre, si tu fais de la photo, ce site ne te sera d'aucune utilité (quoique, en cherchant bien...) |
_________________ Read The Life Manual
http://indriya.org - http://circle-rock.net |
|
|
|
Genzo
Modérateur
Sexe:
Messages: 1706
Localisation: Sartrouville (78)
|
Posté le:
Sam 23 Sep 2006 - 16:17 |
|
keldrill a écrit: |
Par contre, si tu fais de la photo, ce site ne te sera d'aucune utilité (quoique, en cherchant bien...) |
Un peu comme ce message
Merci de ne pas oublié le [Résolu] en début de titre du topic, si le problème est ... résolu |
_________________ N'oubliez pas de mettre un avis sur votre lycée/centre de formation !!! Pensez aux futurs BTSiens. Merci |
|
|
|
keldrill
Résident du forum
Messages: 284
|
Posté le:
Sam 23 Sep 2006 - 19:59 |
|
Genzo a écrit: |
keldrill a écrit: |
Par contre, si tu fais de la photo, ce site ne te sera d'aucune utilité (quoique, en cherchant bien...) |
Un peu comme ce message
Merci de ne pas oublié le [Résolu] en début de titre du topic, si le problème est ... résolu |
Oui j'aime bien poster des messages sans utilité, à vocation première d'être drôle, sarcastique ou tout simplement à non-sens total. Ce ne sont pas des messages de deux mots uniquement destinés à poster à tout prix, c'est au ressenti, au feeling comme disent les jeunes des années 60 (un peu de feeling quoi merde ! ). Et puis de temps en temps quand un sujet est assez sérieux ou que je j'ai vraiment une réponse concrète, je la donne, je suis pas un "sâlbâtardsâmèr'". |
_________________ Read The Life Manual
http://indriya.org - http://circle-rock.net |
|
|
|
Hadrien.eu
Forumeur fréquent
Sexe:
Messages: 74
Localisation: Toulouse
|
Posté le:
Lun 09 Oct 2006 - 18:14 |
|
|
|
|
|