Forum Liberty Basic France

Le 18/05/2015 à 21h16

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2200
Reprise du message précédent

Citation:
mais je m'en serais inspiré pour modifier le mien

Tu ne peux pas t'inspirer de la méthode cassiope qui est d'un "autre monde" que la tienne (le monde des sprites).
C'est vrai qu'il n'est pas facile de décortiquer le code d'un autre, mais celui-ci est riche d'enseignements, tant sur les sujets que sur la méthode.
Tu peux bien sûr continuer de te faire les griffes à ta façon, mais quand ton code va devenir volumineux, on ne pourra plus t'aider que sur des points de détail, plus sur le fond et la méthode.

C'est ce qui est arrivé à d'autres, qui a continué seul, et dont les codes sont bourrés de maladresses et de redondances. Il est plus profitable de suivre les maîtres, au prix de se faire fumer les neurones. (et de se traiter d'imbécile quand on s"entend dire que l'entourloupe sur laquelle on bute depuis une semaine est pourtant très simple).
____________________
Roro

   
Le 18/05/2015 à 22h08

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 601
C'est bien pour ça que je dis qu'il n'est pas facile de mener mes propres investigations tout en suivant les vôtres et en gardant un peu de temps pour la vie ;) J'aime le couple que vous faites.

A demain !
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 19/05/2015 à 00h53

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2200
cassiope, finalement, d'avoir mis 10 pxls/caractère comme largeur forfaitaire, c'est cohérent, puisque la moyenne entre 17 et 5 c'est 11 et que statistiquement les grandes valeurs sont rares.
Donc, en effet ce n'est pas la peine de se casser la tête avec la largeur du texte
La largeur de tirets et de box est plus intéressante

Edit: J'ai placés des liens d'interconnexion entre le début de l'histoire et sa suite
Je pense que c'est mieux que de déplacer les topics
Je vais quand même en bouger des anciens qui ne sont pas bien placés

Re Edit: Houla la ! Je ne touche à rien; tant pis, ce forum restera un "marché aux puces"
Dans lequel il faut fouiller pour dénicher le bon petit programme qui naît (que maître cassiope fait naître) de longues suites de messages dont le titre premier ne veut parfois rien dire.

Pour mettre de l'ordre, il faudrait déplacer, changer les titres, supprimer l'inutile
Bref, mettre un bazar infernal.
____________________
Roro

   
Le 19/05/2015 à 15h39

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 601
[petit hors-sujet]

Oui, c'est vrai qu'on a un peu dérivé du post initial, mais pas tant que ça, je trouve. Je vais préciser dans la seconde ligne du titre qu'on désire ouvrir une combobox quand la souris passe au dessus de cette zone (je cherche la formulation la plus juste).

Ce qui est hors-sujet ce sont les espacements de caractères, mais on a traité ça comme un aparté et on a fini, donc je serais assez d'avis de le laisser tel quel, Mais si vous voulez les transférer dans un discussion dédiée, pourquoi pas...

Je ne cherche pas à rivaliser ou à faire cavalier seul (j'ai l'impression que vous me le reprochez, hein ?). On est toujours gagnant à voir comment font les autres, j'en suis persuadé, et je m'en vais de ce pas mettre de l'espace et des commentaires dans le dernier code de cassiope, pour comprendre le cheminement de la pensée et sa traduction en code.

c'était prévu, mais vous codez trop vite ! :d

[fin du petit hors-sujet]
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 19/05/2015 à 17h32

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2200
Citation:
Je vais préciser dans la seconde ligne du titre

Ne te casse pas la tête avec ce genre de détail
Citation:
(j'ai l'impression que vous me le reprochez

Bah, aucun reproche; il est normal qu'après un coup de gourdin on ai une réaction de replis. Lol!

Commenter est une bonne approche (c'est ce que je fais moi-même)
Citation:
les transférer dans un discussion dédiée

Que dalle, les visiteurs, ils n'ont qu'a fouiller.J'ai déplacé un topic, et j'ai vite réalisé dans quel trip de fou j'étais en train de me lancer.
____________________
Roro

   
Le 19/05/2015 à 21h08

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 601
Me voilà rassuré :)

Donc je me suis lancé dans l'analyse instruction par instruction du code de cassiope, c'est bien plus instructif que les tâtonnements dans son coin en parcourant l'aide. J'en aurai pour quelques jours à faire le tour du programme, donc pas de forum durant ce laps de temps, sauf problème ardu.

Et pour faire mon taquin, ça marche pareil et c'est plus simple avec cette ligne :

Code VB :
 
jsem$ = word$("Mar Mer Jeu Ven Sam Dim Lun",j - int(j/7)*7 + 1)
 


Roland, j'ai vu que tu avais mis un lien depuis l'autre discussion, en invitant à poursuivre ici.

A + tard
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 20/05/2015 à 08h06

Libertynaute Expert

Groupe: Membre

Inscrit le: 19/02/2011
Messages: 767
Excellent Christophe :top

J'avais déjà vu et corrigé ça, mais comme je suis fainéant, j'ai copié/collé des bouts de code depuis un code plus ancien ;)
Roland a aussi trouvé des trucs pas forcément utiles dû à ça....

Il y a aussi la récupération de la dimension exacte de la fenêtre graphique grace a HOME...

Et aussi la SUB fileExists(path$, filename$) que je n'utilise pas...

Tout ça sont souvent des astuces trouvées dans le forum anglophone.

etc

Si tu as des questions ou d'autres optimisations n'hésite pas. Voilà la vrai utilité du forum :top

@+

Gilles



Edité par cassiope01 Le 20/05/2015 à 16h41
____________________
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."

Web    
Le 02/06/2015 à 09h57

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 601
Salut Cassiopee,

Code VB :
 
jsem$ = word$("Mar Mer Jeu x Ven Sam x Dim Lun",int((j/7-int(j/7))*10)+1)
 

Pour le code du calendrier avec des X dans la liste des jours, d''où cela peut-il venir ? il faudrait que j'étudie l'équation plus en détail, cet ajout de X dans la chaîne avait surement une raison d'être. Le plaisir d'aboutir à un résultat juste malgré une équation complexifiée à souhait :) .

Autrement pour l'analyse de ton code, j'avance peu à peu; J'ai été bloqué pendant une semaine à cause de circonstances extérieures, mais j'ai repris la lecture : pour l'instant c'est que de l'apprentissage des instructions, il n'y a rien qui bloque au niveau du raisonnement, d'où mon silence sur ce fil.

A+
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 02/06/2015 à 11h48

Libertynaute Expert

Groupe: Membre

Inscrit le: 19/02/2011
Messages: 767
Au risque de racompter des carabistouilles, il me semble que c'était une adaptation de la formule anglaise pour lesquel le premier jour de la semaine n'est pas le Lundi mais le Dimanche...

@+
____________________
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."

Web    
Le 02/06/2015 à 14h32

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2200
C'est assez bizarre ce truc; parce qu'avec word$ les "X" comptent comme des mots et ça fait une semaine de 9 jours.
Ou me trompe-je ?
____________________
Roro

   
Le 02/06/2015 à 15h44

Libertynaute Expert

Groupe: Membre

Inscrit le: 19/02/2011
Messages: 767
Avec word$() c'est pas toujours ce qu'il y a dans la chaine qui compte, mais plutôt le chiffre qu'il y a après... surtout si celui-ci doit être le résultat d'une opération !
La chaine peut donc aussi bien être adaptée afin d'obtenir ce que l'on veut.
Quoi qu'il en soit la formule de Christophe est simplifiée et fonctionne tout aussi bien apparemment.



Edité par cassiope01 Le 02/06/2015 à 15h51
____________________
Devise Shadocks : "Mieux vaut mobiliser son intelligence pour des conneries, que mobiliser sa connerie pour des choses intelligentes"
Coluche disait : "C'est parce que la vitesse de la lumière est plus rapide que celle du son que certains peuvent paraîtrent brillants jusqu'à ce qu'ils ouvrent la bouche."

Web    
Le 02/06/2015 à 19h06

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 601
A première vue ce n'est qu'une histoire d'arrondi dans la formule :

j/7 = 1792.57143
j/7-int(j/7) = 0.57142857
int((j/7-int(j/7))*10) = 5
int((j/7-int(j/7))*10)+1) = 6
Sam Sam

j/7 = 1792.71429
j/7-int(j/7) = 0.71428571
int((j/7-int(j/7))*10) = 7
int((j/7-int(j/7))*10)+1) = 8
Dim Dim


donc on met un X à la septième position, puisque la formule la zappe. Même chose entre 3 et 5.

(extrait du résultat du code ci-dessous)
Code VB :
 
for j = 12541 to 12551
 
 
    a = j/7
    b = (a - int(a))
    c = int(b * 10)
    d = c + 1
 
    jsem$ = word$("Mar Mer Jeu x Ven Sam x Dim Lun",d)
    ksem$ = word$("Mar Mer Jeu x Ven Sam x Dim Lun",int((j/7-int(j/7))*10)+1)
 
    print " j/7 = ";a
    print " j/7-int(j/7) = ";b
    print " int((j/7-int(j/7))*10) = ";c
    print " int((j/7-int(j/7))*10)+1) = ";d
 
    print jsem$;" ";ksem$
    print
 
next
 
 


Pourquoi pas...
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 02/06/2015 à 19h32

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2200
Trop fort ! :clap
____________________
Roro

   
Le 18/06/2015 à 18h20

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 601
Salutations !

J'avance dans l'analyse du code de cassiopee.

Ce petit fichier qui m'affiche les listes de chois quand on passe sur la zone sensible. je n'en suis que là, ce n'est pas encore fonctionnel car je n'ai pas étudié le reste. mais c'est un bon début.

Je le met en pièce jointe plutôt qu'en simple code, car je ne sais pas ce que donnent les retour chariots et retours à la ligne du forum.

fable le corbeau et le renard test cassiopee.txt

A+

un petit édit pour constater que le lien sur le fichier l'ouvre, alors que je voulais simplement qu'on puisse le copier coller comme un fichier normal. Il fallait peut-être que j'"attache" le fichier ? Avec un clic droit et "enregistrer la cible sous..." on devrait s'en sortir, je pense. Dites-moi si ça coince...

Et un edit bis pour dire qu'il faut charger ce fichier en l'ouvrant avec le code de cassiopee pour qu'on puisse voir le résultat de l'analyse. Bin oui c'est logique, mais si je vous refourgue tout ça tel quel après plusieurs semaines d'inactivité sur la discussion, vous aurez peut-être du mal à voir ce qu'il faut faire^^



Edité par Christophe Le 18/06/2015 à 18h44
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   
Le 01/07/2015 à 22h41

Modérateur

Groupe: Modérateur

Inscrit le: 09/02/2015
Messages: 601
Pas de nouvelles depuis le 18/06 et probablement pas avant quelques temps, car je suis en train de remplacer mon précédent ordi qui a rendu l'âme, je change d'OS, d'applications, d'une partie du matériel. Il y a toujours deux trois trucs qui coincent, donc là encore je n'ai momentanément plus le temps de me pencher sur la programmation. Mais je ne vous oublie pas, et j'ai toujours un petit PC sur lequel faire tourner JustBasic :top

A+
____________________
Just BASIC v2.0 :
  • utilisation courante avec GNU/Linux Mageia6 + Wine (Pas trouvé d'incohérences ou de bug de compilation à ce jour)
  • utilisation occasionnelle ou vérification/débugage difficile avec Windows XP sur un petit eeepc

   

 |  |

1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie