A SUPPRIMER

cs_drissou Messages postés 160 Date d'inscription dimanche 7 décembre 2003 Statut Membre Dernière intervention 14 janvier 2009 - 6 juin 2005 à 11:26
cs_BlackNeo Messages postés 25 Date d'inscription lundi 5 novembre 2001 Statut Membre Dernière intervention 11 septembre 2005 - 17 juin 2005 à 13:56
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/31854-a-supprimer

cs_BlackNeo Messages postés 25 Date d'inscription lundi 5 novembre 2001 Statut Membre Dernière intervention 11 septembre 2005
17 juin 2005 à 13:56
Comme tu peux le voir Bouv, mon code a été désactivé par les admin car il ne contenait aucune source. Je m'en douter.
Donc donnez moi vos adresses email (un message avec codes-sources.com par exemple).

Bonne prog.
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
17 juin 2005 à 08:04
Ok merci
cs_BlackNeo Messages postés 25 Date d'inscription lundi 5 novembre 2001 Statut Membre Dernière intervention 11 septembre 2005
16 juin 2005 à 21:25
bouv >> voila, tu trouvera le code ici:
http://www.cppfrance.com/code.aspx?ID=32122

si ils l'ont sipprimés, donne moi ton mail et je te l'envoi.
cs_BlackNeo Messages postés 25 Date d'inscription lundi 5 novembre 2001 Statut Membre Dernière intervention 11 septembre 2005
13 juin 2005 à 23:32
bouv >> jsui pas un fan des codes compilés (virus ... ) mais bon, je vais en faire un.
il y aura donc dans la version : add,mult naive,div/mod,expo rapide. Je ne garantie pas que ce soit très rapide. Pour ça, va falloir que je fasse l'algo de karatsuba. Donc OK pour le compilé. Dans quelques jours j'espère, le temps de mettre le tout en place.
Voila.

++
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
13 juin 2005 à 23:25
J'suis vraiment un fou des fois, je me lance dans de ces aventures... va falloir que j'aille me coucher.
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
13 juin 2005 à 23:23
us_30>>Désolé j'avais pas bien compris ta réponse.

BlackNeo>>Est-il possible d'avoir une version compilé (dll) de ton code (cela evitera le copiage). Cela pourrai m'interresser d'avoir la puissance du C++.
En effet, j'ai fait un petit prog test un certain nombre de combinaisons (6 x 10^35) pour débloquer un prog pour un ami et d'après mes calculs cela va lui prendre 632850152414300615595219886 années pour tout essayer (Athlon 64 3500+ et 1 Giga DDR 600 Mhz)... lol
Au programme : Multiplication, Soustraction, Modulo, Conversion Base 10=>36 et 36=>10

Bonne prog
++
cs_BlackNeo Messages postés 25 Date d'inscription lundi 5 novembre 2001 Statut Membre Dernière intervention 11 septembre 2005
13 juin 2005 à 22:51
J'ai fait une implémentation en C++ en base 2 (tableau de booléen)
J'ai implémenté l'addition, la multiplication naive, la division/reduction modulaire, l'exponentiation rapide (implémentation d'un RSA en mode CRT)
Je ne peux le mettre pour l'instant car ça fera parti de mon TIPE l'an prochain, donc, pour éviter le copiage bête de certain de mon TIPE pour l'an prochain, je ne peux le mettre sur le site. Si tu es intéressé, fait le moi savoir. Je peux peut-être t'aider
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
13 juin 2005 à 22:31
Heu, ben oui... je le sais depuis longtemps...?

Us.
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
13 juin 2005 à 07:27
Pour modulo :
A Mod B = A - Int(A / B)

C'est en fait le reste entier d'une division.
Ex :
11 / 3 3 et il reste 2 donc 11 Mod 3 2 dans ce cas.

Bonne prog
++
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
12 juin 2005 à 15:28
Salut,

POUR la multiplication avec la méthode de Karatsuba, j'y pense... IL serait assez facile de l'implanter dans mon code... Surement pour un peu plus tard, il me reste quelques difficultés de compréhension... Quant à "transformée de fourrier discrète pour la multiplication", d'après ce que j'ai lire à ce sujet, cette méthode devient efficace seulement pour les nombres au-délà de 57000 chiffres... c'est pas tout à fait dans mon objectif... je vise des nombres de 32700 chiffres... même si le code reste valable au-delà...


Par ailleurs, j'ai regardé la rapidité des instructions Right, Left, Mid, String , par rapport à Right$, Left$, Mid$, String$... J'ai constaté avec des petits tests que Right$ et Left$ était 50% plus rapide. Pour Mid$, -30%. Pour String$, j'ai trouvé une subtilité. Pour obtenir la meilleur vitesse, il faut déclarer le(s) caractère(s) de remplacement dans une variable. Par exemple, String$(1000,"0") est moins rapide que si on déclare une variable 'Dim m as string' puis 'm="0"' suivi de 'String$(100,m)'... Enfin, j'ai modifié mon code en conséquence, mais je n'ai pris la précaution de le tester avant, (les fonctions manipulant les String servant exclusivement pour les nombres décimaux), ce qui me permet pas de dire quel gain j'ai obtenu... mais ce gain est certain...

Pour Byref (par défaut), plutôt que ByVal, j'ai pas regardé. JE préfère laisser ByVal, même si cela serait un poil moins rapide, car je pense associé ces fonctions à d'autres, et je ne veux pas en modifier ses paramètres...

Pour la fonction Modulo, perso je ne connais pas de lien, mais j'ai dans l'idée de faire (peu à peu) toutes les fonctions (Log, exp, Cos, sin, tan, puissance, racine, Permutations, etc...) et donc aussi Modulo... Bref, on verra ce que cela donnera si j'arrive à mes fins, avec vos aides et bons conseils...

A+
Us.
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
8 juin 2005 à 14:51
Salut, vraiment du bon boulot !
Felicitation.
Si quelqu'un connait un truc identique pour la fonction Modulo, merci de me donner le lien.
Bonne prog
++
cs_BlackNeo Messages postés 25 Date d'inscription lundi 5 novembre 2001 Statut Membre Dernière intervention 11 septembre 2005
7 juin 2005 à 00:06
As tu pensé à utiliser la multiplication Karatsuba et la transformée de fourrier discrète pour la multiplication? (pour plus de détail, voir le livre de Knuth "Seminumerical Algorithms , The art of computer programming" Vol 2 ).

De plus,si on veut vraiment aller plus vite, vaut mieux le faire en C quitte à mettre le code dans une DLL.

Voila, sinon bravo pour la vitesse sous VB et le calcul de 3000!
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
6 juin 2005 à 23:20
Ah oui... tiens... ça c'est une idée d'essayer avec $... j'ai jamais fait vraiment attention à cela... Dés que je saurais plus en forme, je ferais un test...

Merçi, A+
Us.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
6 juin 2005 à 11:30
Mets tes arguments en Byref, et ajoutes des $ a tes fonctions String / Left /Right / Mid

tu devrais en tirer un gain de performance....
cs_drissou Messages postés 160 Date d'inscription dimanche 7 décembre 2003 Statut Membre Dernière intervention 14 janvier 2009
6 juin 2005 à 11:26
Nickel tes opérations

Drissou