Arrêter un curseur

Rousseau-Wallon shared this question 1 year ago
Needs Answer

Bonsoir,

J'ai un curseur-nombre A qui peut varier entre 0 et 5. Quand je bouge A, un nombre K varie.

Je voudrais qu'il ne soit plus possible d'agir sur A lorsque K < 0 (à moins de faire repartir A dans l'autre sens, et que du coup K redevienne positif).


PS : pas obligé un curseur, ça peut être un point sur un segment, point qu'il faudrait empêcher de se déplacer dans une certaine direction si K devenait négatif

Comments (11)

photo
1

Bonjour,

Peut-être via une fonction()

photo
1

Dans mon fichier curseur, le nombre K n'est qu'un exemple. En réalité, il est impossible de trouver par calcul la valeur de A pour laquelle K = 0.

Je pensais faire un script sur A :

SoitValeur (Aold, A)

Si(K>0, SoitValeur(A,A), SoitValeur(A, Aold))

Mais ça marche pas

photo
1

tâche mystérieuse, but mystérieux, solution mystérieuse

En d'autres mots: sans un fichier test réaliste, la recherche de solution est un fouiner dans le tas de fumier.

photo
1

Bonsoir,

J'avais posté un fichier basique pensant que ce serait plus simple. Ci-joint le fichier abcdk.ggb :

4 curseurs a, b, c et d. Chacun d'eux agit sur la variable k. Si k >=0 la construction géométrique est possible, si k< 0 elle ne l'est pas. Il s'agit donc de bloquer le mouvement d'un curseur pour ne pas que k devienne négatif, c'est à dire pour que la figure reste toujours possible.


PS : a, b, c et d sont les longueurs des segments.

photo
1

Une possibilité avec script.

Voir le commentaire dans la fiche.

photo
1

Addenda : Commentaire dans le script

photo
photo
1

One solution more without timing problems.

photo
1

Bonjour,

Merci pour cette solution. Je crois que la variable K varie trop vite quand on bouge les curseurs, c'est pour ça qu'on arrive pas toujours à atteindre la position limite.

La condition K<0 peut-être écrite, pour chaque variable, par rapport à elle, puisqu'il s'agit de la possibilité de faire la figure. Ce qui donne le fichier suivant, où j'ai remplacé les curseurs par un point variable sur un segment. L'extrémité "inférieure" de ces segments est constructible, elle dépend des autres variables.

photo
1

Très beau.

photo
photo
1

Le problème maintenant c'est la possibilité de passer d'une figure à une autre : on est souvent obligé de jouer sur plusieurs curseurs.

Exemple : je pars de a = 4, b = 2, c = 2 et d = 4. Je veux obtenir la figure pour a = 8, b = 4, c = 4 et d = 8, qui existe bien puisqu'elle est deux fois plus grande que la précédente. On ne pourra pas y aller directement, il faudra faire plusieurs manips.

photo
1

Cela soulève également la question de savoir comment les valeurs doivent être saisies simultanément et ensuite ne pas être traitées séquentiellement.

Vous pouvez par exemple transférer les 4 valeurs dans une liste en cliquant sur le bouton.

Dans ce mode, la modification des 4 valeurs (curseurs) ne devrait avoir aucun effet.

Ensuite, calculez la plausibilité avec les valeurs de la liste (au lieu des valeurs de la construction). Afin de reconstruire ensuite l'ensemble de la construction.

.

Dans les coulisses, au moins la saisie et le calcul sont parallèles et indépendants de la variation de longueur intercative par côté . La présentation du résultat pourrait être la même pour les deux modes.

© 2021 International GeoGebra Institute