Trouver le maximum de plusieurs variables, ordonner

Accueil Forums Programmation WIMS Programmation d’exercices OEF Trouver le maximum de plusieurs variables, ordonner

Vous lisez 5 fils de discussion
  • Auteur
    Messages
    • #3637
      Joël
      Participant
      Up
      0
      Down
      ::

      Bonjour,

      Après plusieurs essais infructueux avec la fonction max, j’ai relu la doc pour me rendre compte que la fonction max ne cherche le maximum que de deux nombres.

      C’est un peu dommage, j’ai donc une petite routine:

      \matrix{datas=\a,\b,\c,\d}
      \real{maxi=\datas[1;1]}
      \integer{nb=items(\datas)}
      \for{j=2 to \nb}{
      \real{maxi=max(\maxi,\datas[1;\j])}

      Y aurait-il une solution plus compacte, une slib existante que je n’aurais pas vu, ou la possibilité d’implémenter ce code dans les slib, ou dans créer un qui ordonnerait la matrice ligne dans le sens croissant.

      Merci.

      • Ce sujet a été modifié le il y a 7 années et 2 mois par Joël.
    • #3641
      bernadette
      Maître des clés
      Up
      0
      Down
      ::

      En effet je fais cela avec pari

      \matrix{datas=pari([\a,\b,\c,\d])}

      \text{datas=pari(vecmax([\a,\b,\c,\d]))}
      dans ce cas suffit.

      ?vecmax
      vecmax(x,{&v}): largest entry in the vector/matrix x. If v is present, set it
      to the index of a largest entry (indirect max).

      Je n’ai pas testé, j’espère ne pas avoir oublié de parenthèses !

    • #3645
      Joël
      Participant
      Up
      0
      Down
      ::

      Merci, je n’avais pas encore utilisé pari, ça marche impeccable.

      Est-il possible de mettre ce genre d’astuce dans l’aide?

      • Cette réponse a été modifiée le il y a 7 années et 2 mois par Joël.
      • Cette réponse a été modifiée le il y a 7 années et 2 mois par Joël.
    • #3651
      bernadette
      Maître des clés
      Up
      0
      Down
      ::

      Dans la classe ouverte de développement, il y a un pdf d’introduction à GP/Pari
      qui doit parler de ce genre de choses (je l’ai écrit il y a très longtemps).

      L’avantage de Pari/GP (dont on n’utilise pas les possibilités bien sûr, puisque c’est un logiciel de théorie des nombres) est qu’il est très rapide au démarage,
      contrairement à d’autres, ce qui est important dans wims …
      et que les développeurs s’intéressent à la marge à wims, en particulier des
      questions de rétrocompatibilité …

      Bernadette

    • #3654
      bernadette
      Maître des clés
      Up
      0
      Down
      ::

      En restant dans wims, on pourrait aussi faire

      \text{datas=wims(sort numeric items 4,6,3,5)}
      \text{max=\datas[-1]}

      On peut aussi utiliser cela pour des mots !

      \text{data=wims(sort items toto,tata,titi,tutu)}
      \text{s=\data[-1]}
      • Cette réponse a été modifiée le il y a 7 années et 2 mois par bernadette.
    • #3668
      Joël
      Participant
      Up
      0
      Down
      ::

      Merci pour cette autre approche effectivement renseignée dans l’aide technique.

Vous lisez 5 fils de discussion
  • Vous devez être connecté pour répondre à ce sujet.