VB est factorielle

Résolu
Bonjour,
je suis a la recherche de la formule de la factorielle pour mon programme vb pouvais vous m'aider? svp
Configuration: na

10 réponses

  1. sa me donne sa pour le moment mais sa marche pas c'est le calcule de la factoriel qui me plante

    Option Explicit

    Sub main()

    Dim f As Integer
    Dim i As Integer
    Dim n As Integer

    n = InputBox("entrer n")

    i = 0

    While i < n

    f = ((n * i) * (n - 1))

    i = i + 1

    Wend

    MsgBox ("n! : " & f)

    End Sub
    0
    1. quelqu'un aurais t'il une idée svp
      0
  2. svp je veut juste savoire comment débuger

    pour pouvoir faire une factoriel je cherche depuis tt a l'heur j'y arrive pas et rien qui puisse m'aider sur internet

    svp
    0
    1. Sub Main()
      Dim n, i, p As Integer
      Console.WriteLine("donner un nombre:")
      n = Console.ReadLine()
      p = 1
      i = 1
      While (i <= n)
      p = p * i
      i = i + 1
      End While
      Console.WriteLine("le factoriel est " & p)
      Console.ReadLine()

      End Sub
      0
      1. dim nb,i as integer
        dim f as double

        nb = inputbox("entrer un nombre")

        i=1

        f=1

        for i=1 to nb
        f= f * i
        next

        msgbox(" n ! : " & f)
        0
        1. celui la il marche pour 1 2 3 4 mais quand je met 10 il met dépassement de capacité ????

          Sub Main()
          Dim n As Integer
          Dim i As Integer
          Dim f As Single

          n = InputBox("entrer nombre")
          f = 1
          i = 1
          While i <= n
          f = f * i
          i = i + 1
          Wend
          MsgBox ("le factoriel est " & p)

          End Sub

          pour celui la j'ai pas bien compris la ligne for to c'est = a while

          dim nb,i as integer
          dim f as double

          nb = inputbox("entrer un nombre")

          i=1

          f=1

          for i=1 to nb
          f= f * i
          next

          msgbox(" n ! : " & f)

          en tt cas merci pour vos réponces
          0
          1. il faut declarer f en double :
            dim f as double
            0
            1. le dernier fonctionne seulement pour les 170 premiers entier, même si tu déclare f comme Double (mais c'est suffisant je pense car tu ne va pas envoyer une fusée sur la lune pour chercher des nombre astronomique exp: 2009!)

              Private Sub Command1_Click()
              Dim n As Double
              Dim i As Double
              Dim f As Double
              f = 1
              n = InputBox("Entrer un nombre", "Factorielle")

              For i = 1 To n
              f = i * f
              Next i

              MsgBox n & "! = " & f

              End Sub
              0
              1. A quoi correspondent le i f et n ?
                svp
                0
              2. Merci ceci ma beaucoup aidé !
                0
            2. Bonjour,
              Double est un réel et non un entier...
              Le calcul de factoriel ne se faisant que sur des entiers, il donc utiliser une valeur de type entier.
              Si Integer n'est pas assez grand, utilisez un Long...

              Bon après-midi...

              Demonos
              0