Visual basic :ya til qq de gentil qui pourrait m'aider pour mon blem ?

Visual basic :ya til qq de gentil qui pourrait m'aider pour mon blem ? - Programmation

Marsh Posté le 04-01-2002 à 22:10:34    

j'ai essayé de faire un programme pour calculer les nombre premiers ... .. mais il marche pas et il devrait ...
 
si qq de sympa pouvait telecharger la source la :  
http://www.multimania.com/megaromz/npremier.frm
 
et me dire le probleme ça  serait vraiment super sympa  
 
merci d'avance

Reply

Marsh Posté le 04-01-2002 à 22:10:34   

Reply

Marsh Posté le 04-01-2002 à 22:30:38    

ou plus simple : ya til une erreur de syntaxe ds ça :  
 
Private Sub Command1_Click()
Dim nombre As Long, ouiounon As Long, nombre2 As Long
nombre = 1
ouiounon = 1
nombre2 = numero1.Text
List.Clear
 
 
Do While nombre2 <= numero2.Text
  Do While nombre2 >= nombre
      If nombre2 Mod nombre = 0 Then
      ouiounon = ouiounon + 1
      End If
      nombre = nombre + 1
      Loop
      If ouiounon = 3 Then
      List.AddItem (nombre2)
       
      End If
     ouiounon = 1
     nombre2 = nombre2 + 1
Loop
 
End Sub
 
 
si je met 2 loops a la suite .. ,est ce quil fera dabord celui du mileu avant celui du debut

Reply

Marsh Posté le 05-01-2002 à 08:24:32    

je ne comprends pas ce que tu veux dire par "calculer un nombre premier"

Reply

Marsh Posté le 05-01-2002 à 09:58:15    

déjà récupére la valeur de ta case texte ce qui n'est vraiment le cas
 
--- ton code ---
Dim nombre As Long, ouiounon As Long, nombre2 As Long
nombre = 1
ouiounon = 1
nombre2 = numero1.Text
List.Clear
 
--rectification---
 
Dim nombre As Long, ouiounon As Long, nombre2 As Long
nombre = 1
ouiounon = 1
nombre2 = val(numero1.Text)
List.Clear
 
de façon identique pour la case de texte2  
val(numéro2.text)
 
cette fonction te permet de récupérer les valeurs numérique d'une chaine de caractère...
 
ton erreur vient peut-être de là mais sans conviction, essaye de mettre des balises d'arrêt (rond rouge à gauche), qui te permettront à chaque lecture de cette ligne, de lire les valeurs.  
 
ATTENTION !! les valeurs lu sont les valeurs de la ligne précédant le rond...
 
ensuite il nous manques des infos pour continuer ton aide, le programme tourne t-il un peu ?
oui : erreur entre les conditions do while
non: cela vient des conditions dans les boucle do while, il n'y rentre pas
 
ensuite si ton programme ne s'arrêttent plus c'est éaglement une erreur dans la saisie des boucles do while...
 
une grosse erreur qui à sont importance au bout de quelques centaines de pages, l'ailignement des lignes, et les commentaires, qui manquent et surtout vachement utile !! :sarcastic:  
 
Do While nombre2 <= numero2.Text  
----Do While nombre2 >= nombre  
-------If nombre2 Mod nombre = 0 Then  
-----------ouiounon = ouiounon + 1  
--------End If  
-----------nombre = nombre + 1  
-----Loop  
-----If ouiounon = 3 Then  
-------List.AddItem (nombre2)      
-----End If  
     
-----ouiounon = 1  
-----nombre2 = nombre2 + 1  
Loop  
 
nb: ne remets pas les tirés ! ;)  
c'est déjà mieux pour voire la panne ! essaye de mettre les val(... et reposte nous le messge avec les erreurs exact !  
 
@+
macray

 

[edtdd]--Message édité par macray--[/edtdd]

Reply

Marsh Posté le 05-01-2002 à 15:41:14    

merci a tous . le probleme ne venait pas du tout de la ...
c la variable nombre que je ne remettait pas a 0 , merci maintenat ça marche

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed