|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Jan 2010
Messaggi: 21
|
Risoluzione: trovare zeri in funzione
Ciao ragazzi. Non voglio chiedervi di farmi l'esercizio, ma solo che diate un'occhiata a quello che ho fatto e spiegarmi perchè mi esce l'errore. Dunque, lo scopo è quello di disegnare la funzione y = cos(x) / x in VB6. Ecco il codice:
Private Sub Command1_Click() ix1 = Val(txtx1.Text) ix2 = Val(txtx2.Text) 'disegna assi cartesiani Form1.Picture1.Cls Form1.Picture1.DrawWidth = 1 Form1.Picture1.Scale (-10, 10)-(10, -10) Form1.Picture1.Line (-10, 0)-(10, 0) Form1.Picture1.Line (0, 10)-(0, -10) 'disegna i numeri sull'asse x For xi = -10 To 10 Step 1 Picture1.Line (xi, -0.2)-(xi, 0.2) Picture1.CurrentX = xi Picture1.CurrentY = -0.2 Picture1.Print xi Next xi 'disegna i numeri sull'asse y For yi = -10 To 10 Step 1 Picture1.Line (-0.2, yi)-(0.2, yi) Picture1.CurrentX = -0.5 Picture1.CurrentY = yi Picture1.Print yi Next yi 'disegna funzione For ix1 = -10 To ix2 = 10 Step 0.001 y = Cos(x) / x If y >= -10 Then Picture1.PSet (x, y), vbBlue End If Next 'determinazione zeri di una funzione For i = ix1 To i = ix2 If ix1 > 0 And ix2 < 0 Or ix1 < 0 And ix2 > 0 Or ix1 = 0 Or ix2 = 0 Then lblzeri.Caption = ix1 + ix2 End If Next End Sub Ottengo l'errore "Divisione per 0" nella riga Y = cos(x) / x, che deriva dal fatto che il coseno ottenga un determinato valore che renda la divisione impossibile. Come faccio a risolverlo? |
![]() |
![]() |
#2 |
Member
Iscritto dal: Jul 2009
Città: Milano
Messaggi: 270
|
Io non conosco VB6 ma da che mondo è mondo l'eccezione o errore "divisione per 0" dipende dal fatto che a denominatore hai valore zero, e la matematica insegna che dividere per zero non è possibile.Quindi che colpa ne ha il cos(x)? Qualsiasi valore assuma non causerà mai errore.
![]()
__________________
AMD PII x4 955 BE | Sapphire HD4850 Vapor-X 1 GB | Samsung SpinPoint F1 500GB | Samsung EcoGreen F4 2TB Gigabyte GA-MA790FXT-UD5P | Fractal Design Define R3 USB3.0 Titanium Grey | CORSAIR 650W CMPSU-650TX Noctua U12P SE2 | 2 x 2GB Kingston 1333 MHz | Samsung SyncMaster P2450 | Samsung SyncMaster T200 |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:08.