VB est factorielle

Résolu
milhouse -  
 Lea -
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. milhouse
     
    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. milhouse
       
      quelqu'un aurais t'il une idée svp
      0
  2. milhouse
     
    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
  3. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  4. kiko
     
    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
  5. Amine9900 Messages postés 16 Statut Membre 2
     
    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
  6. liguemagnus
     
    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
  7. Amine9900 Messages postés 16 Statut Membre 2
     
    il faut declarer f en double :
    dim f as double
    0
  8. william7007 Messages postés 344 Statut Membre 46
     
    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. rr
       
      A quoi correspondent le i f et n ?
      svp
      0
    2. Lea
       
      Merci ceci ma beaucoup aidé !
      0
  9. Demonos
     
    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