begin process at 2012 02 09 01:10:49
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Modules

 > MODULO 10 RÉCURSIF POUR VB ET CR

MODULO 10 RÉCURSIF POUR VB ET CR


 Information sur la source

Note :
Aucune note
Catégorie :Modules Classé sous :modulo, récursif, recursif Niveau :Débutant Date de création :23/09/2006 Date de mise à jour :21/10/2006 19:27:38 Vu :10 967

Auteur : gide_x

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description

Bonjour ...

Pour cette petite source je n'ai rien inventé, mais je cherchais une source permettant le calcul d'un chiffre clef d'après le modulo 10 récursif que je n'ai pas trouvée sur ce site et c'est alors que j'ai pensé que cela pouvait rendre service à d'autres dans mon cas (je pense surtout aux petits suisses qui veulent imprimer des BVR ou BVR+ avec leur propre numéro de référence..... je ne sait pas si le système est le même dans d'autre pays...) ;)


J'ai aussi mis la version que j'ai adapté pour Crystal Report afin de pouvoir calculer mon chiffre clef de manière autonome au moment de l'impression.

Source

  • // version VB
  • Function Modulo10(ByVal StrNbre As String) As Integer
  • Dim modTable(0 To 9) As Integer
  • Dim modReport As Integer
  • Dim modSerie As Integer
  • modTable(0) = 0: modTable(1) = 9
  • modTable(2) = 4: modTable(3) = 6
  • modTable(4) = 8: modTable(5) = 2
  • modTable(6) = 7: modTable(7) = 1
  • modTable(8) = 3: modTable(9) = 5
  • For modSerie = 1 To Len(StrNbre)
  • modReport = modTable((modReport + Mid(StrNbre, modSerie, 1)) Mod 10)
  • Next
  • Modulo10 = (10 - modReport) Mod 10
  • End Function
  • //Version Crystal Report (edition de fonction en "Basic Syntax")
  • Function modulo10 (StrNbre as string) as number
  • Dim modTable() As number
  • modTable = array (1,2,3,4,5,6,7,8,9,10)
  • Dim modReport As number
  • Dim modSerie As number
  • Dim Nbretemp as number
  • modTable(1) = 0: modTable(2) = 9
  • modTable(3) = 4: modTable(4) = 6
  • modTable(5) = 8: modTable(6) = 2
  • modTable(7) = 7: modTable(8) = 1
  • modTable(9) = 3: modTable(10) = 5
  • For modSerie = 1 To Len(StrNbre)
  • Nbretemp = tonumber(Mid(StrNbre, modSerie, 1))
  • modReport = modTable(((modReport + Nbretemp) Mod 10)+1)
  • Next
  • Modulo10 = (10 - modReport) Mod 10
  • End Function
// version VB

Function Modulo10(ByVal StrNbre As String) As Integer

Dim modTable(0 To 9) As Integer
Dim modReport As Integer
Dim modSerie As Integer
    
    modTable(0) = 0: modTable(1) = 9
    modTable(2) = 4: modTable(3) = 6
    modTable(4) = 8: modTable(5) = 2
    modTable(6) = 7: modTable(7) = 1
    modTable(8) = 3: modTable(9) = 5
    
    For modSerie = 1 To Len(StrNbre)
        modReport = modTable((modReport + Mid(StrNbre, modSerie, 1)) Mod 10)
    Next
    
    Modulo10 = (10 - modReport) Mod 10
    
    
End Function




//Version Crystal Report (edition de fonction en "Basic Syntax")

Function modulo10 (StrNbre as string) as number

Dim modTable() As number
modTable = array (1,2,3,4,5,6,7,8,9,10)
Dim modReport As number
Dim modSerie As number
Dim Nbretemp as number
    
    modTable(1) = 0: modTable(2) = 9
    modTable(3) = 4: modTable(4) = 6
    modTable(5) = 8: modTable(6) = 2
    modTable(7) = 7: modTable(8) = 1
    modTable(9) = 3: modTable(10) = 5
    
    For modSerie = 1 To Len(StrNbre)
        Nbretemp = tonumber(Mid(StrNbre, modSerie, 1))
        modReport = modTable(((modReport + Nbretemp) Mod 10)+1)
    Next
    
    Modulo10 = (10 - modReport) Mod 10
End Function

 Conclusion

voila, c'est tout... à part un grand merci à hosang pour le code original :)

http://www.hosang.ch/modulo10.htm

et pour ceux qui veulent comprendre le fonctionnement (page 3):

http://www.postfinance.ch/medialib/fr/pf/glob ale_mediendateien/service/handbuecher.Par.0019.Fil e.tmp/hb_records_fr.pdf


 Historique

23 septembre 2006 22:51:55 :
ooops. erreur de catégorie ;)
21 octobre 2006 19:17:04 :
ajout d'un mot clé (oublié ...)
21 octobre 2006 19:27:38 :
'suis vraiment nul pour poster une source ... (en même temps, c'est la première fois)... je tombe dans la mauvaise catégorie ;)

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) CRYPTAGE ET DECRYPTAGE par jerichez
Source avec Zip Source avec une capture Source .NET (Dotnet) EXEMPLE MODBUS POUR MODULES ADAM, BECKHOFF, WAGO par mnmsjaune
Source avec Zip Source .NET (Dotnet) CRÉER SON PROPRE DESIGNER COMME CELUI DE VISUAL STUDIO par ShareVB
Source avec Zip Source .NET (Dotnet) CONVERSION UTM VERS LAT/LONG par BarresLTD
Source avec Zip CPROPGROUP : COLLECTION FAITE MAISON par Flocreate

 Sources en rapport avec celle ci

ROUTINE DIR RÉCURSIVE POUR OBTENIR LA LISTE DE TOUS LES FICH... par kerisolde
COPIER LES TEXTES D'UNE DIAPOSITIVE POWERPOINT SAUF LES ESPA... par GMY
Source avec Zip SUPPRESSION DE CERTAINS FICHIERS DANS UN RÉPERTOIRE PARTICUL... par noritakaroi2labaston
Source avec Zip Source avec une capture COMPARATEUR DE FICHIERS PARAMÉTRABLE par Floneva
Source avec Zip Source avec une capture BRIKZ - UN JEU DE STRATÉGIE SUR EXCEL par Sylvaninof

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

CALCUL DE MODULO D'UN NOMBRE AYANT UN TRES GRAND EXPOSANT!!!!! [ par popstatic ] j'aai besoin de savoir s'il y a la possibilité de calculer le modulo d'un nombre ayant un très grand exposant (> 1500 !). merci d'avance.popstatic Modulo [ par 6Po ] Petite formule math que je viens de trouver pour contourner un probleme des longs. (Depacement capacite)(x * y) Mod w = (x Mod w * Y Mod w) Mod wBien Fonction modulo dans un prog VC++ [ par NiFF ] Je sais déjà comment faire un xor, mais je ne sais pas comment trouver un reste de division... Maths : modulo [ par RDX ] salut, je voudrais savoir si il existe un operateur pour calculer le modulo d'un nombre (reste de la division entiere) , a l'heure actuelle j'ai fait fonction modulo en VBA [ par krisprolss ] Bonjour à tous,J'ai beau rechercher je ne vois pas comment faire une fonction MOD en VBA. Ca doit bien exister déjà !! Non?!?Si qlq c'e Modulo pour chiffres à virgule [ par ebro ] J'ai un souci en utilisant la fonction mod de VB avec des doubles (ex: 15.35 mod 2.5)La fonction arrondit les deux valeurs avant de calculer le modulo recursif [ par lexsty ] Bonjour.Comment programmer factorielle(n)en récursifavec Visual Basic 6    ( si Vb6 permet la récursivité ).   Le Modulo en VB6 [ par elkasmi_ahmed ] Bonjour tout le monde.j veux calculer R1= t1 Mod 97 avec t1=2558100035900 ( le type de t1 est double)mais un msg d'erreur s'affiche : dépassement de c opendir recursif [ par PaTaTe ] J'aimerais créer une fonction qui me liste toute une arborescence donc la logique voudrait que je rappelle ma fonction si un répertoire est trouvé seu TRI QuickSort NON Récursif [ par us_30 ] Bonsoir,JE cherche sans trouver l'algorithme du QuickSort NON Récursif.En effet, sur GOOGLE on trouve une plétore de site présentant soit disant Quick


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,749 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales