FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Mah-Jong européen new-look
par jjn4 Aujourd'hui à 15:48

» KGF.dll - demandes ou suggestions de modifications ou ajouts
par pascal10000 Aujourd'hui à 13:46

» a l'aide klaus
par Minibug Aujourd'hui à 11:42

» KGF_dll - nouvelles versions
par Minibug Aujourd'hui à 1:48

» bug SYNEDIT_TARGET_IS_OBJECT
par Jack Aujourd'hui à 0:16

» Jukebox : Serge Reggiani
par papydall Sam 9 Déc 2017 - 5:58

» Ecouter la radio fm sur votre pc
par pascal10000 Sam 9 Déc 2017 - 3:42

» anomalie
par Klaus Sam 9 Déc 2017 - 3:21

» hommage
par Jicehel Ven 8 Déc 2017 - 11:29

» Logiciel de soutien scolaire en langues.
par Pedro Alvarez Ven 8 Déc 2017 - 10:43

» carte son
par Klaus Ven 8 Déc 2017 - 2:37

» API Windows
par Klaus Jeu 7 Déc 2017 - 21:03

» mise a jour calculatrice
par joeeee2017 Mer 6 Déc 2017 - 22:19

» j'ai un petit problème
par JL35 Mer 6 Déc 2017 - 21:58

» source vumetre avec delphi
par Klaus Mar 5 Déc 2017 - 23:22

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Décembre 2017
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
25262728293031
CalendrierCalendrier

Partagez | 
 

 Problème avec CompareStr et CompareStrA.

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Pedro Alvarez

avatar

Nombre de messages : 881
Date d'inscription : 19/01/2014

MessageSujet: Problème avec CompareStr et CompareStrA.   Dim 17 Jan 2016 - 10:16

Bonjour.

@Klaus.

Je rencontre un problème avec ces deux fonctions, qui retournent des résultats erronés.

La comparaison entre les deux chaînes mangé# et mange# retourne 1, ce qui signifierait que ces deux chaînes sont semblables !

Merci de ton aide.

Code:
dll_on "kgf"

dim a$, b$, boucle%, c$, debut$, d%, e$, f$, g%, i%, k%, l%, m%, n%, param1$, param2$, res%, temporaire$, trouve%, x$, x%, y%

list 2
width 2,300
height 2,300
font_size 2,12

item_add 2,"mange#190507#"
item_add 2,"mange#273420#"
item_add 2,"mangé#273420#"
item_add 2,"mangea#190507#"
item_add 2,"mangea#273420#"
item_add 2,"mangeai#190507#"
item_add 2,"mangeai#273420#"

chercher_item("mangé#","P")
message str$(trouve%)
end

sub chercher_item(param1$,param2$)
    ' http://zanotti.univ-tln.fr/algo/CHERCHER-DICHOTOMIQUE-IDX.html
    trouve%=0
    n%=count(2)
    l%=len(param1$)
    g%=1
    d%=n%
    m%=(g%+d%)/2
    while (g%<d%) and (param1$<>left$(item_read$(2,m%),l%))
          a$=left$(item_read$(2,m%),l%)

          ' res%<0: string 1 < string2
          ' res%=0: string 1 = string2
          ' res%>0: string 1 > string2
          res%=dll_call2("CompareStr",adr(param1$),adr(a$))
          message "'"+param1$+"', '"+a$+"' : "+str$(res%)
          if res%<0
            d%=m%-1
                else
            g%=m%+1
          end_if
          m%=(g%+d%)/2
    end_while

    if param1$=left$(item_read$(2,m%),l%)
      ' if param2$="C"
          ' i%=m%
            ' else
          ' for i%=m% to g% step -1
              ' if left$(item_read$(2,i%),l%)<>param1$ then i%=i%+1:exit_for
          ' next i%
          trouve%=1
      ' end_if
          ' else
      ' message "Non trouvé !"
    end_if
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10243
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème avec CompareStr et CompareStrA.   Dim 17 Jan 2016 - 11:36

Je vais regarder cela.

EDIT

Vu ! Voici un extrait de la doc:
Citation :
résultat de la comparaison:
res%<0 ==> string 1 < string2
res%=0 ==> string 1 = string2
res%>0 ==> string 1 > string2
Le résultat "1" signifie donc "chaîne 1 plus grande que chaîne 2" ce qui est normal.

Je pense que tu as fait une erreur d'interprétation...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 881
Date d'inscription : 19/01/2014

MessageSujet: Problème avec CompareStr et CompareStrA.   Dim 17 Jan 2016 - 11:57

Bonjour.

@Klaus.

Ah, OK, autant pour moi.

Désolé Klaus, mais j'avais bien fait une erreur d'interprétation.

J'ai dû penser à la fonction SGN() de Panoramic.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10243
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Problème avec CompareStr et CompareStrA.   Dim 17 Jan 2016 - 11:58

Pas de problèmes, Pédro. Cela nous arrive à tous...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé




MessageSujet: Re: Problème avec CompareStr et CompareStrA.   

Revenir en haut Aller en bas
 
Problème avec CompareStr et CompareStrA.
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [/résolu] problème avec java à l'instalation :-/
» Problème avec Java
» [Résolu] problème avec avira
» Problème avec décodeur Tv
» problème avec Outlook

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: