esercizio in vba



  • esercizio in vba
    di emanuele (utente non iscritto) data: 07/01/2018 18:19:09

    Sapete dirmi dove sbaglio?
     
    'fattoriale
    Private Sub CommandButton1_Click()
    Dim numero As Integer
    Dim fattoriale As Integer
    Dim contatore As Integer
    fattoriale = 1
    Do
    numero = InputBox("inserisci il numero intero positvo di cui vuoi calcolare il fattoriale")
    Loop While numero < 0
    For contatore = 1 To numero
    fattoriale = fattoriale + contatore
    Next
    Foglio1.Range("B3") = fattoriale
    End Sub
    



  • di Albatros54 data: 07/01/2018 18:31:48

    Scusa, ma per fattoriali non si intende "Il fattoriale di un numero naturale indica il prodotto del numero per tutti i suoi antecedenti", tu nel codice fai la somma:

    fattoriale = fattoriale + contatore

    che dovrebbe essere:

    fattoriale = fattoriale * contatore
    ciao
    albatros54





  • di emanuele (utente non iscritto) data: 07/01/2018 18:42:18

    Albatros54, grazie per aver risposto
    ho corretto quella linea di codice ma continua a darmi errore



  • di Albatros54 data: 07/01/2018 18:45:53

    sicuramente ti da errore per il valori troppo alti, prova a dichiarare la variabile fattoriale come long o double, e fai la prova con numeri inferiore a 50






  • di patel data: 07/01/2018 20:01:56

    da errore perché c'è un do inutile non chiuso, basta così
     
    Sub a()
    Dim numero As Integer
    Dim fattoriale As Long
    Dim contatore As Integer
    fattoriale = 1
    numero = InputBox("inserisci il numero intero positvo di cui vuoi calcolare il fattoriale")
    For contatore = 1 To numero
      fattoriale = fattoriale * contatore
    Next
    Foglio1.Range("B3") = fattoriale
    End Sub






  • di Zer0Kelvin data: 08/01/2018 00:10:58

    Ciao Emanuele.
    Visto che si tratta di esercizi, mi permetto un consiglio: mi sembra che ti manchino proprio le basi per andare avanti; dovresti studiare di più e ripassare quello che dovresti gia sapere.