Lecture des données (version 1.66 et version 1.94)

Pour toute demande d'aide sur des exemples non finalisés, c'est ici.
Les exemples aboutis et intéressants seront ajoutés aux sous-forums qui suivent.

Règles du forum
Pour toute demande d'aide pour la conception (ou la confirmation d'un code) d'une figure Asymptote, c'est ici.

J'invite ceux qui ont régulièrement des questions à poser à aller dans leur panneau de l'utilisateur pour indiquer dans la signature de leurs messages :

  1. Nom du système d'exploitation (W7 ou Ubuntu 12.04 ou ...)
  2. Version d'Asymptote et éditeur utilisé pour les figures Asymptote
  3. Distribution LaTeX et éditeur utilisé pour les tex.


On va gagner du temps dans les réponses !
OG
V.I.P.
V.I.P.
Messages : 142
Enregistré le : dim. 7 mars 2010, 22:27

Re: Lecture des données (version 1.66 et version 1.94)

Message non lu par OG » jeu. 13 mai 2010, 12:27

GM a écrit :Je ne comprends pas trop l'intérêt du while(true) puis du break.


J'ai pris cela sur un exemple de la doc officielle.
L'esprit est le même.

O.G.

DGH
Messages : 11
Enregistré le : mer. 28 avr. 2010, 14:24

Re: Lecture des données (version 1.66 et version 1.94)

Message non lu par DGH » ven. 14 mai 2010, 10:07

Bonjour,

Pour la lecture des données je voudrais mettre une condition portant sur la VERSION d'Asymptote. avec la version 1.66 j'ai le code suivant qui ne fonctionne pas

Code : Tout sélectionner

real vv=(real) version.VERSION;

if (vv < 1.94){
         file fichD=line(input("MesDonnees.dat"));
         int[] X;
        int[] Y;
        while(true){
       X.push(fichD);
      Y.push(fichD);
      if(eof(fichD)) break;
      }
}  // fin if
else
  {
   file fichD=input("MesDonnees.dat").line().word();
       int[] X;
        int[] Y;
        while(true){
       X.push(fichD);
      Y.push(fichD);
      if(eof(fichD)) break;
      }

} // fin else


Le message d'erreur concerne la ligne : file fichD=input("MesDonnees.dat").line().word();

Quelqu'un a une idée?

D.GH

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1474
Enregistré le : dim. 7 mars 2010, 14:50

Re: Lecture des données (version 1.66 et version 1.94)

Message non lu par GM » ven. 14 mai 2010, 15:37

DGH a écrit :Bonjour,
Pour la lecture des données je voudrais mettre une condition portant sur la VERSION d'Asymptote. avec la version 1.66 j'ai le code suivant qui ne fonctionne pas


Deux remarques :
  1. Rien de bien étonnant ! Ce n'est pas parce que tu mets une condition sur vv ... qu'Asymptote ne va pas analyser la syntaxe de l'ensemble du code. Comment veux-tu qu'il décèle les boucles s'il ne lit pas le code entier... et comme la version 1.66 ne connait pas la syntaxe xxxxx.line().word();, elle te le dit.
    Même si tu mets quelque du chose du genre if(.....A......) {.....B.........}, tu ne pourras pas écrire n'importe quoi pour B, sous prétexte que A est faux.
  2. Je ne comprends vraiment pas pourquoi tu veux bricoler avec une version 1.66 !?!?
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.69)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
Mes autres PC : Ubuntu 18.04LTS - Asymptote(2.66-?? git) + TexLive2018
Mon serveur : Debian Jessie - Asymptote(2.66-? git) + TexLive2018
Merci de préciser la votre !

DGH
Messages : 11
Enregistré le : mer. 28 avr. 2010, 14:24

Re: Lecture des données (version 1.66 et version 1.94)

Message non lu par DGH » ven. 14 mai 2010, 17:12

Bonjour,

GM a écrit :1) Rien de bien étonnant ! Ce n'est pas parce que tu mets une condition sur vv ... qu'Asymptote ne va pas analyser la syntaxe de l'ensemble du code. Comment veux-tu qu'il décèle les boucles s'il ne lit pas le code entier... et comme la version 1.66 ne connait pas la syntaxe xxxxx.line().word();, elle te le dit.
Même si tu mets quelque du chose du genre if(.....A......) {.....B.........}, tu ne pourras pas écrire n'importe quoi pour B, sous prétexte que A est faux.

Y a-t-il une solution ?

GM a écrit :2) Je ne comprends vraiment pas pourquoi tu veux bricoler avec une version 1.66 !?!?


Simplement si l'on a un code qui fonctionne avec la version inférieure à 1.94 puisse fonctionner avec la version récente.

D.GH

Avatar du membre
GM
Administrateur du site
Administrateur du site
Messages : 1474
Enregistré le : dim. 7 mars 2010, 14:50

Re: Lecture des données (version 1.66 et version 1.94)

Message non lu par GM » ven. 14 mai 2010, 17:21

DGH a écrit :Simplement si l'on a un code qui fonctionne avec la version inférieure à 1.94 puisse fonctionner avec la version récente.

Pourquoi tout simplement ne pas mettre à jour : asymptote et scripts ????
Index des fonctions - Exemple de lien donnant le résultat d'une recherche sur les mots 'arc' et 'triple' : http://asy.marris.fr/indexasy/?filtre=arc triple
Mes configurations (le 24/02/21) :
PC n°1 :Windows 10 - Asymptote(2.69)+MikTeX2.9 - Editeurs : Notepad++, TeXworks, Visual Studio Code.
Mes autres PC : Ubuntu 18.04LTS - Asymptote(2.66-?? git) + TexLive2018
Mon serveur : Debian Jessie - Asymptote(2.66-? git) + TexLive2018
Merci de préciser la votre !

ctop
Messages : 8
Enregistré le : jeu. 18 mars 2010, 20:32

Re: Lecture des données (version 1.66 et version 1.94)

Message non lu par ctop » ven. 14 mai 2010, 17:55

Je suis bien d'accord avec GM, les versions asymptote inférieures à 1.94 ne sont pas stables, alors pourquoi absolument
vouloir maintenir un code sur une version asymptote boguée cela n'a pas de sens...

Répondre