Accueil › Forums › Programmation WIMS › Programmation d’exercices OEF › Trouver le maximum de plusieurs variables, ordonner
Étiqueté : max maximum slib ordonner
- Ce sujet contient 5 réponses, 2 participants et a été mis à jour pour la dernière fois par Joël, le il y a 7 années et 10 mois.
-
AuteurMessages
-
-
31 janvier 2017 à 21:11 #3637JoëlParticipant::
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 10 mois par Joël.
-
1 février 2017 à 08:08 #3641bernadetteMaître des clés::
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 !
-
1 février 2017 à 13:26 #3645
-
1 février 2017 à 20:02 #3651bernadetteMaître des clés::
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
-
1 février 2017 à 22:44 #3654bernadetteMaître des clés::
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 10 mois par bernadette.
-
3 février 2017 à 08:38 #3668
-
-
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.