Forum Programmation.shell Urgent, s'il vous plait

Posté par  .
Étiquettes : aucune
0
9
mar.
2006
Bonjour,
J'ai un probleme urgent comme ca, j'ai un fichier de 4 colonnes comme ci-dessous:

i xG yG zG
1 0.5 0.5 1.0
2 0.5 1.0 1.0
3 0.0 1.5 -0.5
... ... ... ...
n ... ... ...

i varie de 1 à n. xG, yG,zG sont des coordonnées de l'indice i selon x, y, z.
Je veux faire une programme qui peut mettre des indices i dans un autre fichier comme la condition suivante.
Mettre des i qui obéissent la loi : 0< xG^2+yG^2+zG^2<= R1^2 dans le fichier 1
R1^2<= xG^2+yG^2+zG^2<= R2^2 dans le fichier 2
et etc.
R1,R2,... sont des constantes connues. Veuillez m'aider s'il vous plait. Merci beaucoup
  • # awk devrait pouvoir t'aider

    Posté par  . Évalué à 2.

    ou le Perl si tu préfère.

    Si tu n'as pas le temps d'apprendre awk, je veux bien te le faire contre rémunération.
    • [^] # Re: awk devrait pouvoir t'aider

      Posté par  . Évalué à 0.

      sinon le probleme m'interesse a titre d'exercice, mais je ne comprend pas trop ce que tu veux faire.
    • [^] # Re: awk devrait pouvoir t'aider

      Posté par  . Évalué à -4.

      S'il vous plait, mon prof me pousse depuis longtemps mais j'ai pas encore de résultat. Si tu peux m'aider, je ne t'oublierai pas. Merci bcp
      • [^] # Re: awk devrait pouvoir t'aider

        Posté par  . Évalué à 3.

        Sérieusement, je veux bien t'aider mais ton probleme n'est pas clair. Par contre aider ne signifie pas faire le boulot a ta place.

        Je pense que pour commencer tu n"''as pas une idée claire de ce que tu dois faire (ou alors tu l'exprime mal).

        Comme dis plus bas, R&,R2... sortent de ou?
        • [^] # Re: awk devrait pouvoir t'aider

          Posté par  . Évalué à -2.

          Mon probleme est de isoler les indices i de la colonne 1 qui obéissent les conditions comme j'ai écrit là haut.
          R1, R2 sont des constantes connues, tu peux donner une valeur de R1, R2 comme tu veux, par exemple: R1=3, R2=12
          • [^] # Re: awk devrait pouvoir t'aider

            Posté par  . Évalué à 0.

            while read i x y z <&3; do
            printf '%s\n' "$x"
            done 3< toto

            Quelques explications:
            while read i x y z <&3; do #lecture du descripteur de fichier 3 et affectation de chaque élément séparé par IFS dans les variables i,x,y,z
            printf '%s\n' "$i" # afficher i
            done 3< toto # fermer la boucle et lire le fichier toto en entree sur le descripteur 3.

            Je te laissefaire le reste ...
            • [^] # Re: awk devrait pouvoir t'aider

              Posté par  . Évalué à 1.

              une petite incohérence s'est glissée dans mon post. La trouveras-tu?
            • [^] # Re: awk devrait pouvoir t'aider

              Posté par  . Évalué à 2.

              pour les tests, il y a :
              if [ test ]
              then
              action
              fi

              en faisant deux ou trois tests dans la boucle mentionnée ci dessus tu devrais t'en sortir.

              Est-ce que ca te convient?
      • [^] # Re: awk devrait pouvoir t'aider

        Posté par  . Évalué à 3.

        > mon prof me pousse depuis longtemps

        pas assez fort, semble-t-il...

        > mais j'ai pas encore de résultat.

        eh non... d'où la création de ton compte aujourd'hui...

        > Si tu peux m'aider, je ne t'oublierai pas

        qu'entends précisément par "je ne t'oublierai pas" ? :-)
        • [^] # Re: awk devrait pouvoir t'aider

          Posté par  . Évalué à 2.

          En fait je pensais que le problème était plus intéressant que ça. Mais non c'est juste un bête exercice.

          Ma proposition de faire le travail tient toujours, contre rémunération ou don (ça par exemple : http://www.jumptec.de/product/data/dimmpc/dimm386e.html).
        • [^] # Re: awk devrait pouvoir t'aider

          Posté par  . Évalué à 3.

          je pense que 50 euros sur un compte Paypal me parait une juste remuneration pour eviter un avertissement voir une bulle.

          si tu propose en awk et en perl tu approche le 20 faudrait viser le 70 euros. car il pourras justifier son retard:

          -ben oui awk me parraissait plus lent, ajors j'ai essayé en perl, voila le resultat de mes travaux... desolé pour le retard.

          bref avec ta carte bleue tu peut etre le chouchou du prof, sortir avec sa fille etc...

          mais fait gaffe des fois que celui qui t'aide c'est ton prof, le monde est petit
          • [^] # Re: awk devrait pouvoir t'aider

            Posté par  . Évalué à 2.

            Tant qu'a faire si c'est pour un truc a rendre, autant donner les explications qui vont avec, et là faut voir le temps que ça prend.

            Je lui ai déjà donné une piste, s'il a besoin de plus, ou s'il ne comprend pas, à lui de demander. Ce serait même très bien qu'il poste son code histoire de voir comment il s'en est sorti.
  • # Oui

    Posté par  . Évalué à -2.

    Je peux te le faire en Java, mais uniquement sur Suse Enterprise Corporate Edition.
    • [^] # Re: Oui

      Posté par  . Évalué à 0.

      ce que je comprend pas c'est de ou tu sos tes R1, R2, etc, et surtout combien il y en a.
  • # URGENT§§§§

    Posté par  (site web personnel) . Évalué à 7.

    Je profite de ce journal de qualitai pour laisser un message :

    Mon chef de projet me demande un cahier des charges pour ce soir.
    Si vous en avez un à me faire passer, merci de vous dépêcher !!!
  • # Urgent, s'il vous plait

    Posté par  . Évalué à 6.

    Bonjour,

    Moi aussi je suis passé par là.
    Rien que voir le titre, je sais directement de quoi il en retourne.

    Tu as un programme à rendre ...
    Tu t'es pris à la dernière minute ...
    Tu n'as pratiquement plus de temps ... (peut être est-il déjà passé !)

    Je dis qu'une seule chose :
    Pourquoi remettre au lendemain ce qu'on peut faire aujourd'hui?
  • # j'ajouterai

    Posté par  . Évalué à 4.

    un cours sur bash (en anglais)
    http://docs.cs.up.ac.za/programming/linux/abs-guide/

    google t'en donnera d'autres éventuellement en français.

    Y a aussi de bons bouquins sur le sujet chez o reilly.
    • [^] # Re: j'ajouterai

      Posté par  (site web personnel) . Évalué à 2.

      Soyons sympa : http://www.shellunix.com/awk.html Franchement ton pb.o fait 3 lignes ! Et le code une 20aine !
      une fonction qui prend en argument 2 variable R1,R2
      pour chaque ligne du fichier 
        fonction qui fait le calcul res=xG^2+yG^2+zG^2
        puis tester le resultat  R1^2<= $res<= R2^2
        si ok > echo $ligne 
        si nonok > rien
      
      
      prog principal : prends la liste R
      
      Last_R=$LIST_R[ 0]
      i=1
      for R in $LIST_R[ i]
       {
       tonfichier=file$R_Last$R
       tafonction($R_Last,$R) > $tonfichier
       }

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.