Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : conversion python en vb [ Langages dérivés / VBA ] (apexinfo)

lundi 1 décembre 2008 à 22:37:58 | conversion python en vb

apexinfo

je suis stupide ou j'ai des vers ou les deux, et peut-être même davantage
ça fait une journée que je tente de convertir ce pg python en VB avec un insuccès notoire et récurrent
HELP
merci

le corpus delicti est l'Algorithme de Karatsuba que j'ai trouvé en python et en serpentant sur le net.
j'aime déjà ce génial informaticien bilingue (python-VB) qui pourra m'aider à traduire

les def , % et == ne posent pas de pb, ce sont les calculs, parfois alphanumériques, parfois numériques, qui m'insupportent.

'max = 5

'def Split(l):
'  if l % 2 == 0:
'    return l / 2
'  Else:
'    return (l + 1) / 2

'def max(a, b):
'  if a > b:
'    return a
'  Else:
'    return b

'def mult(x, y):
 ' x = long(x)
'  y = long(y)
'  x_str = Str(x)
'  y_str = Str(y)
'  l1 = Len(x_str)
'  l2 = Len(y_str)
'  if (l1 < max and l2 < max):
'    return x * y
'  Else:
'    x_split = Split(l1)
'    y_split = Split(l2)
'    x1 = x[0,x_split]
'    x2 = x[x_split + 1,l1 - 1]
'    y1 = y[0,y_split]
'    y2 = y[y_split + 1,l2 - 1]
'    a = mult(x1, y1)
'    b = mult(x2, y2)
'    c = mult(x1 + x2, y1 + y2)
'    m = max(l1, l2)
'    d = (c - a - b) * 10**m
'    e = b**(2 * m)
'    Z = a + d + e
'    return z

'f = mult(x, y)

'Print '''The product of''',x,'''and''',y,'''is''',f,'''.'''


mardi 2 décembre 2008 à 09:23:55 | Re : conversion python en vb

Renfield

Administrateur CodeS-SourceS
en gros (a affiner)

Private Function Mult(ByRef vsX As String, ByRef vsY As String) As String
Dim nLx As Long
Dim nLy As Long
Dim sX1 As String
Dim sX2 As String
Dim sY1 As String
Dim sY2 As String
Dim nA As Double
Dim nB As Double
Dim nC As Double
Dim nD As Double
Const K = 4
    nLx = Len(vsX)
    nLy = Len(vsY)
    If (nLx <= K) Then
        sX1 = "0"
        sX2 = vsX
    Else
        sX1 = Left$(vsX, nLx - K)
        sX2 = Right$(vsX, K)
        If sX1 = "-" Then
            sX1 = "0"
            sX2 = "-" & sX2
        End If
    End If
    
    If (nLy <= K) Then
        sY1 = "0"
        sY2 = vsY
    Else
        sY1 = Left$(vsY, nLy - K)
        sY2 = Right$(vsY, K)
        If sY1 = "-" Then
            sY1 = "0"
            sY2 = "-" & sY2
        End If
    End If
        
    If sX1 = "0" And sY1 = "0" Then
        nD = Val(vsX) * Val(vsY)
    Else
        nA = Mult(sX1, sY1)
        nB = Mult(sX2, sY2)
        nC = Mult(Val(sX1) - Val(sX2), Val(sY1) - Val(sY2))
        nD = nA * 10 ^ (K * 2) + (nA + nB - nC) * 10 ^ K + nB
    End If
    Mult = FormatNumber(nD, 0, GroupDigits:=vbFalse)
End Function

mercredi 3 décembre 2008 à 00:38:11 | Re : conversion python en vb
samedi 13 décembre 2008 à 01:34:53 | Re : conversion python en vb


Cette discussion est classé dans : str, return, python, split, mult


Répondre à ce message

Sujets en rapport avec ce message

Compter le nombre de mots dans une phrase sans split [ par hub ] Bonjour à tous, pouvais vous m'indiquer comment compter le nombre de mots dans une phrase sans utiliser split. (Je ne possède que vb4).Au passage si q problème avec la fonction split [ par bllp ] je cherche à transformer une chaine de caractère (string) en un tableau. J'ai donc essayé d'utiliser la fonction split (prévu à cet effet). Malheureus Fonction SPLIT [ par fabiin ] Salut !Ki pourrai me donner un tou chtit exemple ki utilsie la fonction split pke g pas compri komment on s'en servait [;(]merci par avance@+fabs <img Return [ par celebyon ] Sivouplé, en Jscript, pour renvoyé une valeur on utilise le mot clef return, genre function ... {s ...return s}et en vb comment fait on ????merci d av SPLIT [ par Rodolf ] C koi cette fonction SPLIT C paske g vb5 et elle n' existe pas. Merci d' avance ouvrir des boites de messages [ par zekmek ] Excusez mais c'est encore moi. J'aurais de nouveau besoin de votre aide. Alors finalement afin de récupérer le contenu d'un fichier txt je fais ca:'Ré ca marche mais... [ par zekmek ] Bonjour tout le monde.Voila je suis debutant de chez debutant en VB et j'aurais besoin d'une petite aide.Je travail sur l'envoi d'une newsletter. Je r HELP pour un débutant [ par zekmek ] Bonjour tout le monde.Voila je suis debutant de chez debutant en VB et j'aurais besoin d'une petite aide.Je travail sur l'envoi d'une newsletter. Je r besoin d'un ex d'utilisation de SPLIT [ par rayan ] mon probleme est que je ne sais pas ds quel genre de tableau sont envoyés les sous chaines de caractères.A l'éxecution j'ai tjs la meme erreur d'incom Fonction SPLIT [ par Le Breton ] Quelqu'un peut-il m'expliquer l'utilisation et la syntaxe de la fonction SPLIT ? (Un exemple serait le must)Merci d'avance


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,546 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.