cs_SDan
Messages postés288Date d'inscriptiondimanche 1 septembre 2002StatutMembreDernière intervention13 juin 2008
-
28 avril 2006 à 09:19
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020
-
2 mai 2006 à 21:51
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020371 2 mai 2006 à 21:51
C'est vrai c'est une source pour débutant mais qui n'est pas commentée ce qui est un grand probleme pour ce genre de source, pour s'adresser à des débutants donc pas très utile sur le site mais je pense que alkaram ne voulait pas faire partager ce qu'il avait fait mais plutot recueillir des conseils pour sa programation ce que je vais faire.
Pour la somme et le maximum
Dim max, n1, n2, n3, n4 As Integer : seul n4 est déclaré en integer
Etant donné que ces 4 entiers sont utilisés dans deux sub tu peux écrire dans la partie déclarations Public n1 as integer...
ca évite de le répéter
Pour les factorielles c'est vraiment le minimum, For i = 1 To nb
commence au moins à 2 car multiplier par 1 c'est pas top. Pour l'optimisation je ne t'explique pas tout regarde un peu sur internet ou éventuellement tes cours pour trouver des prop interressantes.
Moi j'aime bien le récursif même si c'est lent.
If n <= 1 Then
'Par convention 0!=1
Factoriel = 1
Else
Factoriel = n * Factoriel(n - 1)
End If
Mais tu devrais chercher une autre méthode.
Pour les exposants, c'est pas top comme méthode...
Efin quelques remarques générales.
Pour toutes les opérations comme le maximum ou autre tu devrait créer un module ou bien une fonction (dans la partie déclaration)
Pour les variables déclare les en public dans la partie déclaration.
Et voilà bon courage...
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201822 29 avril 2006 à 19:46
J'ai parlé trop vite. Lol Dark pas besoin d'en rajouter, j'ai pigé :)
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 29 avril 2006 à 19:39
Je suis d'accord avec BruNews : cette source est pour les débutants++, elle montre les algo de base (mais vraiment de base !), donc pour un code aussi simpliste, je vois pas trop l'intérêt d'un zip.
DarK Sidious
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 28 avril 2006 à 10:51
Non non merci pour le zip mais inutile d'encombrer notre serveur pour 2 multiplications en boucle. Laissons la place pour du plus utile.
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201822 28 avril 2006 à 10:19
Un zip ne serait pas de trop stp !!!
cs_SDan
Messages postés288Date d'inscriptiondimanche 1 septembre 2002StatutMembreDernière intervention13 juin 2008 28 avril 2006 à 09:19
2 mai 2006 à 21:51
il faut commenter et aérer un minimum le code pur cela regarde cela http://www.vbfrance.com/tutoriaux/REGLES-SUIVRE-AVANT-DEPOSER-SOURCE-PROGRAMME_280.aspx, c'est un tutorial et pour exemple loici une souce sans prétention que j'ai déposé il y a pas mal de temps, ne telecharge pas mais regarde les commentaires et l'espacement http://www.vbfrance.com/codes/LISTE-NOMBRES-PREMIERS_32289.aspx
Ensuite les problemes de ton code
Pour la somme et le maximum
Dim max, n1, n2, n3, n4 As Integer : seul n4 est déclaré en integer
Etant donné que ces 4 entiers sont utilisés dans deux sub tu peux écrire dans la partie déclarations Public n1 as integer...
ca évite de le répéter
Pour les factorielles c'est vraiment le minimum, For i = 1 To nb
commence au moins à 2 car multiplier par 1 c'est pas top. Pour l'optimisation je ne t'explique pas tout regarde un peu sur internet ou éventuellement tes cours pour trouver des prop interressantes.
Moi j'aime bien le récursif même si c'est lent.
If n <= 1 Then
'Par convention 0!=1
Factoriel = 1
Else
Factoriel = n * Factoriel(n - 1)
End If
Mais tu devrais chercher une autre méthode.
Pour les exposants, c'est pas top comme méthode...
Efin quelques remarques générales.
Pour toutes les opérations comme le maximum ou autre tu devrait créer un module ou bien une fonction (dans la partie déclaration)
Pour les variables déclare les en public dans la partie déclaration.
Et voilà bon courage...
29 avril 2006 à 19:46
29 avril 2006 à 19:39
DarK Sidious
28 avril 2006 à 10:51
28 avril 2006 à 10:19
28 avril 2006 à 09:19