Forum Liberty Basic France : Voir tous les messages du membre

   Le 17/02/2019 à 15h16 Discussion Générale » Où sont ils ?
Bah par ici, on attend l'inspiration en observant la course des nuages le jour et celle des étoiles la nuit.
On voudrait un truc original, pas trop compliqué...ext.
C'est quoi ton truc pas assez abouti ? Montre, qu'on te l'aboutisse (ou te le détourne).
   Le 09/02/2019 à 17h46 Général » Win 10 et user32.dll
Tu peux tenter de prendre une copie de la user32.dll de ton XP et la mettre dans le dossier de ton programme.
Et dire ce que ça donne.
   Le 05/01/2019 à 12h07 Projets open source » LB Workshop
Comme on le sait, ou pas; le forum anglophone a subit de gros dégâts, un bombardement ?
Et donc, sauvé directement de l'ancien forum anglophone, voici de quoi faire les interfaces sans se prendre la tête (c'est du LB ne marche pas en JB).
C'est là-->: LB Workshop.zip
   Le 24/12/2018 à 18h33 Général » Scrollbar avec JB2
Citation:
saturation des tableaux

Tu n'a qu'à les vider autant que tu les remplis.
   Le 24/12/2018 à 10h10 Général » Scrollbar avec JB2
ça a l'air de fonctionner aussi avec JB V1
   Le 24/12/2018 à 09h40 Débutant » Trier des nombres en justbasic (?)
Citation:
il n'est pas dit que ça marche pour les négatifs

Mais qui aurait l'idée saugrenue de trier des nombres négatifs ? 3:)
   Le 21/12/2018 à 12h54 Débutant » Trier des nombres en justbasic (?)
ça marche...! ^^
   Le 16/12/2018 à 15h03 Débutant » Trier des nombres en justbasic (?)
Citation:
en conservant intactes les données initiales et triées.

Tout à fait, d'où la présence de plusieurs texteditors.
Pour trier les doublons, j'ai associer un code anglophone de tris alpha numérique (chaines) sans doublons au code précédent (qui est aussi anglophone).
Mais comme il a un os à l'arrivée, je renvoie le résultat final au tri en repassant en numérique, ce qui renvoi le résultat dans le texteditor du milieu.pourquoi faire simple quand on peut faire compliqué.
ça a l'air de marcher.
Code VB :
 
    nomainwin
    WindowWidth = 675 '455
    WindowHeight = 500
    UpperLeftX = 100
    UpperLeftY = 10
    TEXTBOX #t.n,  10, 10, 40, 25
    BUTTON #t.go, " Go !", [go], UL, 150, 10, 40, 25
   TEXTEDITOR #t.tab, 10, 50, 200, 380
   BUTTON #t.tri, " Tri !", [tri], UL, 240, 10, 40, 25
   TEXTEDITOR #t.trib, 230, 50, 200, 380
   BUTTON #t.doub, " Sans doublons", [doub], UL, 510, 10, 80, 25
   TEXTEDITOR #t.dobl, 450, 50, 200, 380
    GRAPHICBOX #t.m 5, 5, 655, 435
    OPEN "Tri disques" FOR window_nf AS #t
    #t, "TRAPCLOSE [closetri]"
    #t.m , "down"
    #t.m , "fill darkblue"
    #t.m , "color yellow; backcolor darkblue"
    #t.m , "PLACE 60, 20": #t.m, "\ <---N"
    n=50
    #t.n, str$(n)
   diam$=" 5 10 15 20 25 30 35 40 45 50"
   wait
   for x=1 to n
   next x
  wait
  [go]
    #t.n, "!contents? var$": n=val(var$)
    dim bubble(n)
    for x=1 to n
    alea= int(rnd(1)*10) + 1
      bubble(x)=val(word$(diam$,alea))
    next x
      '-----------
    for x=1 to n
      #t.tab, bubble(x)
    next x
  wait
  [tri]
FOR i=1 TO n
    FOR j=1 TO (n-1)
        IF bubble(j) > bubble(j+1) THEN
            temp=bubble(j)
            bubble(j)=bubble(j+1)
            bubble(j+1)=temp
        END IF
        #t.trib, str$(bubble(i))
    NEXT j
NEXT i
  #t.trib, "!cls"
    for x=1 to n
      #t.trib, bubble(x)
    next x
wait
  wait
  [closetri]
    close #t
  end
'-------------------------------doubles-----------------
[doub]
  nbmots=n
dim liste$(nbmots):dim tri$(nbmots)
for a=1 to nbmots-1
    liste$(a)=str$(bubble(a))
next
for ref=1 to nbmots-1
    motRef$=liste$(ref)
    for compare=1 to nbmots-1
        if ref<>compare then
            motCompare$=liste$(compare)
            'si les mots sont différents
            if motRef$<>motCompare$ then
                'on compare lettre à lettre le mot référence et le mot comparé
                lettre=1
                difference=0
                while difference=0
                    'codes ascii des lettres
                    a=asc(mid$(motRef$,lettre,1))
                   b=asc(mid$(motCompare$,lettre,1))
                   '''''on supprime la distinction majuscules-minuscules
                    if a>96 then a=a-32
                   'if b>96 then b=b-32
                   ''' 'pour quitter l'analyse lorsque les lettres seront différentes
                    if a=b then lettre=lettre+1 else difference=1
                wend
                if a>b then apres=apres+1 else avant=avant+1
            end if
        end if
    next
    tri$(apres)=motRef$ 'tri dans l'ordre conventionnel
    'tri$(avant)=motRef$ 'tri dans l'ordre inverse
    avant=0:apres=0
next
'suppression des cases vides
'comptage des cases vides pour dimensionner le tableau définitif
for a=1 to nbmots-1
    if tri$(a)="" then casevide=casevide+1
next
nbcases=nbmots-casevide
dim definitif$(nbcases+10)
'transfert des cases non vides dans le tableau définitif
actuel=1
for a=1 to nbmots-1
    if tri$(a)<>"" then
       definitif$(actuel)=tri$(a)
       actuel=actuel+1
    end if
next
for a=1 to nbcases: #t.dobl, definitif$(a): next a
redim bubble(nbcases+1)
    for x=1 to nbcases
      bubble(x)=val(definitif$(x))
    next x
    n=nbcases
   goto [tri]
wait
 
   Le 16/12/2018 à 01h01 Débutant » Trier des nombres en justbasic (?)
Pas mal, y a plus qu'à retirer les doublons (une piste: Remplacer les doublons par des chaines vides faciles à repérer et à supprimer)
   Le 15/12/2018 à 16h48 Débutant » Trier des nombres en justbasic (?)
Citation:
je ne savais pas que l'on pouvais emboiter 2 for-next

Plus on emboite de "for next" et plus ça devient moins facile et plus les temps de traitement s'allongent.

 |  |

2 Utilisateurs en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 2 Visiteurs
Utilisateurs en ligne : Aucun membre connecté