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 6 et antérieur Discussion :

Problème passage algo en VB


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 64
    Par défaut Problème passage algo en VB
    Bonjour,

    Je dois écrire un algo qui permet de simuler la multiplication par l'addition.

    En analysant par exemple nbr1 x nbr2 comme nbr2 + nbr2 + ... nbr2 (nbr1 fois)

    Voici ce que j'ai fais, mais ça ne fonctionne pas, par exemple pour 5 x 10 il me donne 60 comme résultat.

    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
    Public Sub main()
     
    Dim nbr1 As Single
    Dim nbr2 As Single
    Dim i As Integer
    Dim resultat As Single
     
     
    nbr1 = InputBox("Saisir un premier nombre")
    nbr2 = InputBox("Saisir un deuxième nombre")
     
    i = 0
    resultat = 0
     
    Do While (i <= nbr1)
                resultat = nbr2 + resultat
                i = i + 1
     
    Loop
     
     
    MsgBox ("Le resultat de la multiplication est de : " & resultat)
     
    End Sub
    Merci d'avance pour votre aide.

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    revoit ton test :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Do While (i <= nbr1)
    La boucle While s'exécute "tant que" la condition est vrai...

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 64
    Par défaut
    Ah oué merci ! J'ai mis i = 1 et ça fonctionne maintenant !

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par franck1001 Voir le message
    Ah oué merci ! J'ai mis i = 1 et ça fonctionne maintenant !
    elle sert à quoi alors ta boucle...?

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 64
    Par défaut
    Heu j'avoue que je comprend plus là...

  6. #6
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par bbil Voir le message
    elle sert à quoi alors ta boucle...?
    oup's... je pensai que tu vais changé le test par i=1...

  7. #7
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bonjour,

    algo pour algo, j'en aurais alors fait une fonction récursive,

    du genre (exemple) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Command1_Click()
       Dim nombre As Integer, mult As Integer
       nombre = 11
       mult = 6
       MsgBox multiplie(nombre, mult)
    End Sub
     
    Private Function multiplie(nb As Integer, fois As Integer) As Integer
      If fois = 0 Then Exit Function
      multiplie = multiplie + nb + multiplie(nb, fois - 1)
    End Function
    C'est à mon avis ce qu'attend le prof.

    EDIT :
    si enfin l'exercice que doit faire frank 1001 a pour ennoncé celui qu'il nous a donné, sans autres précisions, ni sa méthode si mon exemple ne sont une réponse satisfaisante et frank1001 a du pain sur la planche ...
    Il pourra néanmoins s'inspirer de mon exemple et... bûcher.

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    301
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 301
    Par défaut
    Salut

    Tu a deux solutions pour résoudre ton problème
    Soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    i = 1
    resultat = 0
     
    Do While (i <= nbr1)
                resultat = nbr2 + resultat
                i = i + 1
     
    Loop
    soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    i = 0
    resultat = 0
     
    Do While (i < nbr1)
                resultat = nbr2 + resultat
                i = i + 1
     
    Loop
    a+

  9. #9
    Membre actif
    Inscrit en
    Mai 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 62
    Par défaut
    Bonjour
    selon l'algo...

    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
    Public Sub main()
     
    Dim nbr1,nbr2,resultat As integer
     
    nbr1 = InputBox("Saisir un premier nombre")
    nbr2 = InputBox("Saisir un deuxième nombre")
     
    resultat = 0
     
    for i=0 to nbr2-1
    resultat=resultat+nbr1
    next i
     
    MsgBox ("Le resultat de la multiplication est de : " & resultat)
     
    End Sub
    j'ai pas essayé mais ça devrait marcher

  10. #10
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim nbr1 As integer,nbr2 As integer,resultat As integer
    Citation Envoyé par Mr NGANZI
    j'ai pas essayé
    Essai, même sur un bout de papier

    Motif de l'edit
    J'aime mieux le for i=0 to nbr2-1
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 31/08/2005, 10h05
  2. Passage algo - code pour génération d'expressions régulières
    Par deedoo dans le forum Général Python
    Réponses: 6
    Dernier message: 11/08/2005, 14h32
  3. un petit problème d'algo
    Par supertramp dans le forum Algorithmes et structures de données
    Réponses: 22
    Dernier message: 12/10/2004, 20h13
  4. [JSP] Problème passage paramètre
    Par besco dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 13/09/2004, 10h15
  5. Problème passage de pointeur
    Par mick74 dans le forum MFC
    Réponses: 2
    Dernier message: 21/04/2004, 18h34

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