Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    12

    [VB.NET] Problema Calcolo Matematico

    Ciao a tutti, ho un problema. Volevo fare un semplicissimo programmino, che mi permettesse di calcolare diverse funzioni. Ma ho un problema. In particolare con la formula completa per calcolare le equazioni di secondo grado(parabole, equazioni ecc).
    Vi lascio il codice qui sotto, magari può esservi utile:
    codice:
    If b.Text = "" Then
                b.Text = "0"
            End If
            If c.Text = "" Then
                c.Text = ("0")
            End If
            If a.Text = "" Or a.Text = "0" Then
                MsgBox("Errore. Una parabola ha sempre X alla seconda. Controlla.", MsgBoxStyle.Critical, "Errore Critico")
            Else
                risultato.Text = -b.Text + Math.Sqrt(Math.Pow(b.Text, 2) - ("4" * a.Text * c.Text)) / ("2" * a.Text)
                risultatomeno.Text = -b.Text - Math.Sqrt(Math.Pow(b.Text, 2) - ("4" * a.Text * c.Text)) / ("2" * a.Text)
            End If
    Io non capisco dove sia l'errore... Grazie mille
    Ultima modifica di N2O3; 24-08-2014 a 22:52

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ma di quale problema parli in particolare? Fornisci i dettagli ...

    E perché scrivi "4" o "2" e non 4 o 2 ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    12
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Ma di quale problema parli in particolare? Fornisci i dettagli ...

    E perché scrivi "4" o "2" e non 4 o 2 ?
    Non è corretto scrivere "4" e "2"? Io pensavo di si... Comunque il risultato viene diverso. Se lo faccio a mano mi viene un risultato e li un altro...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quale risultato? Quali dati inserisci? Cosa ottieni?


    P.S. No ... un numero come 4 si scrive 4 ... "4" è una stringa ...
    Ultima modifica di oregon; 25-08-2014 a 00:13
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    12
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Quale risultato? Quali dati inserisci? Cosa ottieni?

    P.S. No ... un numero come 4 si scrive 4 ... "4" è una stringa ...
    Se dovessi usare i numeri con la virgola, devo mettere il numero tra ""... Comunque, ipotizziamo la seguente parabola:
    X^2+x=0 Faccio la formula completa (invece di raccogliere la x)
    -1+-[radice:b^2-4*a*c ]/2

    Ora come ora a mano mi viene: X1= -1 X2=0
    Con il programma invece viene X1= -0,5 e X2= -1,5

    Grazie

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quote Originariamente inviata da N2O3 Visualizza il messaggio
    Se dovessi usare i numeri con la virgola, devo mettere il numero tra ""...
    No, una costante in un programma si scrive con il punto decimale, ad esempio 1.5

    Nelle formule manca una parentesi per il numeratore

    risultato.Text = ( -b.Text + Math.Sqrt(Math.Pow(b.Text, 2) - (4 * a.Text * c.Text)) ) / (2 * a.Text)
    risultatomeno.Text = ( -b.Text - Math.Sqrt(Math.Pow(b.Text, 2) - (4 * a.Text * c.Text)) ) / (2 * a.Text)
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    12
    Quote Originariamente inviata da oregon Visualizza il messaggio
    No, una costante in un programma si scrive con il punto decimale, ad esempio 1.5

    Nelle formule manca una parentesi per il numeratore

    risultato.Text = ( -b.Text + Math.Sqrt(Math.Pow(b.Text, 2) - (4 * a.Text * c.Text)) ) / (2 * a.Text)
    risultatomeno.Text = ( -b.Text - Math.Sqrt(Math.Pow(b.Text, 2) - (4 * a.Text * c.Text)) ) / (2 * a.Text)
    Perfetto, grazie mille. Ma purtroppo a quell'ora non avrei mai notato la parentesi... Comunque ti dispiace se ti chiedo un'altra cosa? Dovrei calcolare l'equazione della circonferenza partendo da raggio e centro. Naturalmente la formula è:
    (x-xo)^2+(y-yo)^2=raggio^2.
    Ora ho dei problemi con la X e la Y. Ti faccio l'esempio con i seguenti dati:
    C(10,-9) R=9
    Applicando la formula ricavo la seguente equazione: X^2+Y^2-20X-18Y+100=0
    Con il software invece ricavo la seguente equazione: X^2+Y^2000X-1458Y+100=0. Dove sbaglio? Ti lascio qui sotto il codice. Spero di non aver scritto "cavolate", anche perchè veramente in matematica non ci acchiappo nulla xD

    codice:
    Private Sub Label10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label10.Click
            Dim X As Integer
            Dim Y As Integer
            Dim XO As Integer
            Dim u As Integer
            Dim s As Integer
            Dim YO As Integer
            Dim r As Integer
            Dim f As Integer
            Dim j As Integer
            Dim z As Integer
            Dim l As Integer
            Dim somma As Integer
            Dim sommaraggio As Integer
            If raggio.Text = "" Then
                raggio.Text = 0
            End If
            If raggio.Text = 0 Then
                MsgBox("Errore. Il raggio non può essere 0. La circonferenza non esiste", MsgBoxStyle.Critical, "Errore Critico")
            Else
                X = 1
                Y = 1
                XO = alfa.Text
                YO = beta.Text
                r = Math.Pow(raggio.Text, 2)
                j = Math.Pow(X, 2) 'x2
                u = Math.Pow(XO, 2) 'numero
                s = (2 * alfa.Text) * u 'x
                f = Math.Pow(Y, 2) 'y2
                z = Math.Pow(YO, 2) 'numero
                l = (2 * beta.Text) * z 'y
                somma = u + z
                sommaraggio = somma - r
                TextBox6.Text = j
                TextBox7.Text = f
                TextBox8.Text = s
                TextBox9.Text = l
                TextBox10.Text = sommaraggio
            End If
        End Sub
    End Class

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Mi sembra che debba essere

    s = (2 * X) * XO 'x

    l = (2 * Y) * YO 'y
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.