Je suppose que ça correspond à la partie suivante ? « J'ai trouvé une solution ou la personne va sur le fichier .mozilla / xxxxxx.default-release >>>il fait un clic droit dessus et en bas de la fenêtre on lui propose "revenir à la version précédente…">>>"restaurer depuis quand" et là il peut choisir la date de restauration. » Enfin, dans l'explorateur de fichiers et non le menu du navigateur, je te l'accorde.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Sinon, le premier paragraphe dit : « Le site gdprbeetle.eu, tenu par Joost Gerritse, un avocat spécialisé, dresse un inventaire de l’ensemble des affaires relatives aux données à caractère personnelles pendantes devant la Cour de justice de l’Union européenne. » Je suppose qu'il faut comprendre la suspension juridique comme volontairement oubliés dans les cartons et attendant d'être recouvert par la poussière des cold cases :-S
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Par exemple, quand je lis : « F-Droid requires that the source code of the app is exempt from any proprietary library or ad service, according to their inclusion policy. Usually, that means that some developers will have to maintain a slightly different version of their codebase that should comply with F-Droid’s requirements. Besides, their “quality control” offers close to no guarantees as having access to the source code doesn’t mean it can be easily proofread. » Rien que ça me fait dire que son avis est partisane. Tourner les choses de sorte à faire croire que les deux gus (je prends ce nombre pour aller dans son sens et en partant du principe qu'il a aussi peu de ressources chez F-Droid pour faire le taf) qui vont revoir le code en plus de la relecture initiale du dev ne compte pas… Histoire que le quidam qui lit rapidement pense que l'auto-review du dev se suffit ou que la boutique de G fait mieux (alors qu'aucun humain ne va jamais regarder.) Et la pleurniche que les développeurs doivent maintenir deux versions ; si c'est si dérangeant pourquoi ne pas maintenir que la seule version propre (sans pisteurs) ? Et les devs qui ont une version à pub et une version payante sur l'infâme store G ont deux têtes ?
Dans le même paragraphe, il/elle poursuit par : « Saying Play Store is filled with malicious apps is beyond the point: the false sense of security is a real issue. Users should not think of the F-Droid main repository as free of malicious apps, yet unfortunately many are inclined to believe this. » Je ne vois pas le souci quand on parle de « sentiment de sécurité » vu que ça reste du ressenti… De plus, glisser ça là et en gras alors le paragraphe commence en rappelant le contrat morale, c'est un peu comme un Z qui ramène tous les maux (y compris le réchauffement climatique) aux muslmans. Il s'agit du « respect de la vie privée » avant tout, et perso quand une appli ne me piste pas et respecte mes données je me sens plus en confiance avec elle.
Plein de coups de canifs comme ça, comme si de rien n'était, après avoir commencé son article en jurant qu'il ne fait pas d'attaque gratuite et d'idéologie. Tout ça pour quand même, à coup de sophismes, remettre le choix du respect de la vie privée en cause. Ça me va très bien que ce soit F-Droid qui signe les paquets sur lesquels il s'engage : ce n'est pas une relation tri-partite comme il a voulu laisser croire …parce-que si j'ai confiance en le/la dév, et qu'il/elle génère ses paquets, je n'aurais eu qu'à récupérer les paquets sur leur site/dépôt. …la seule autorité de confiance ici c'est F-Droid, et avec elle, je sais que je vais avoir la fameuse seconde version sans la pomme empoisonnée sur le gâteau !
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Les quatre manquants sont rajoutés, ce qui porte le nombre de formes explorées à 6.
Je croise les doigts ; on ne devrait pas avoir d'erreur de division.
Consultation/Téléchargement → https://framagit.org/-/snippets/6519
Par contre, comme il n'y a pas de table de sauvegarde intermédiaire, je ne sais trop comment élimer les doublons pour l'instant. Faudra filtrer soi-même les résultats :
$ ./trouve24.sh 7712| sort | uniq
Je m'attaque à l'autre grand problème (ne retenir que les divisions entières) demain.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Il semble que la cyber-guerre a déjà bien avancée, mais elle est pour l'essentiel essentiellement économique (en témoigne l'affaire récente des sous-marins français et les reportages à charge d'Arte contre la Chine par exemple) et non militaire (si on fait fi des activité de "renseignement" comme on dit de manière politiquement correcte.)
Mais c'est un bon exercice de s'interroger sur les black-outs électroniques généralisés.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Héhé, personne pas sous Linux ; et puis si je peux en profiter pour la libérer un peu plus de ces pièges (passer de gratuiciel, certes sans garantie de rester éternellement gratuit, à partagiciel en démo, certes pas cher, c'est pareil qu'une prise d'otage si les gens n'ont pas d'alternative ou on trop pris goût pour aller voir ailleurs si on y est.)
Je n'étais pas encore tombé sur le bogue que tu mentionnes et c'est vrai que c'est assez étrange et un poil agaçant bien que pas bloquant dans l'absolu. Vraiment bizarre.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Merci pour le retour. C'est vrai que les trucs qui mettent une éternité pour se lancer ça laisse le temps de prendre un café et ça donne pas une bonne impression de productivité quand on ne les lance pas régulièrement/souvent. Le truc que je reproche le plus à Electron pour ma part c'est surtout la consommation mémoire, et on peut rajouter des bugs étranges parfois.
La personne étant de type Michu et non dev, je ne peux pas aller dans le sens Scite (que j'apprécie bien) + txt2tags (il faudra que je teste un de ces quatre cette alternative à pandoc.)
Par ailleurs, comme on est dans un contexte Markdown, Focuswriter ne répond pas au besoin immédiat. Mais je mets ça de côté comme alternatif aux traitements de texte qui vous enferment dans un format (ici, avec RTF et ODT on n'a que du standard interopérable …normalement)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Les deux liens que tu donnes sont clairement des hommages (on devrait rajouter ce tag et supprimer celui de deuil qui fait plus penser à un avis de décès), au sens de témoignage de respect pour les accomplissements, raison pour laquelle ça ne choque pas. Même là, je dis juste qu'il s'agit d'apporter juste une information biographique (personne née/morte/enterrée à telle date à tel endroit, comme une stèle funéraire… pas besoin d'entrer dans les détails des derniers instants…)
Il faudra créer une section dédiée pour que ces news deviennent des nécrologies. ;-)
On est d'accord qu'il n'y a pas de raison d'avoir un long fil de discussion qui en plus tourne un peu en rond.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Désolé, je n'ai pas encore eu le temps de mettre en ligne, j'ai priorisé le commentaire expliquant l'approche à mon code jetable (il faudrait nettoyer un peu plus pour que ce soit présentable… bon, j'ai rajouté des commentaires à l'instant …parce-que des fonctions dont on n'a pas la signature ça va être dur à maintenir)
J'ai fait une version "épurée" car j'aime bien l'approche mix de parenthèses et permutations des nombres.
Ouf, mes explications ici ont été assez claires pour permettre de reconstituer l'ensemble …et l'adapter/épurer (ne pas s'enquiquiner avec les divisions)
Mais le plus gênant est quand même l'arrondi des divisions, cela ne respecte pas les règles du jeux donc ce n'est pas très utilisable.
Les règles n'étaient pas très claires pour moi. :-S Pour une fois que je n'ai pas voulu chipoter (et ai supposé qu'on faisait tous les calculs dans …à tort) Il a fallu être devant le cas (en testant en ligne) pour se rendre compte que la page donnait des résultats en flottants. Du coup je suis allé jeter un œil au source de la page (heureusement tout est en JS et pas caché, mais mon ECMAScript est un peu rouillé et je n'ai pas su voir/dire si c'est intentionnel ou si c'est une erreur de codage : seul-e l'auteur-e peut le dire)
Je vais corriger cela dans une v2 dans l'une des manières suivantes (à voir ce qui est plus simple en shell)
Soit au moment du calcul on sait dire que la division ne sera pas entière (tester s'il y a un reste ?) et donc on squeeze (ce qui fait un cas computed en moins dans l'exploration)
Soit au niveau de la solution on s'assure (par un calcul dans dans mon idée immédiat, et qu'il faudrait essayer de restreindre seulement aux cas où il y a un opérateur de division) qu'on retombe sur nos pattes… (si la vérification n'est pas concluante on aura eu un computed mais toujours pas de solved bien qu'étant arrivé dans la fonction d'affichage)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
POSIX shell, j'insiste :-D Ça devrait fonctionner aussi dash/ash avec lequel je teste. C'est juste qu'on évite des trucs propres à bash/ksh??/pdksh/zsh/etc ; mais ce faisant on s'évite certaines facilités (comme les tableaux et certaines formes de tests)
J'ai encore des /0 […] ; et je ne comprends pas le "$7" dans solution2.
J'ai oublié de corriger mon post (rédigé certes offline pour avoir le temps de tester un peu et donc présenter un POC au lieu d'une théorie, mais j'ai du zapper dans les aller-retours rédaction-débogage)
Dans la boucle for du second type type, j'avais mis deux tests (juste avant le calcul) au lieu du seul mentionné :
Avec les commutativités (additions et multiplications) et les priorités (multiplications et divisions) on devrait retomber sur l'un des 4 cas précédemments énumérés…
Mais je dis ça au doigt mouillé ; faudrait que je prenne le temps faire la preuve mathématique.
Par exemple avec 7 7 1 2 je m'attends au résultat ((7*7)-1)/2
Justement avec les priorités, ((7*7)-1)/2 est (7*7-1)/2 ; ce qui me fait dire qu'il manque éventuellement les cas (solutions5) et (solutions6) ainsi que (solutions0) tout simplement ?
On peut facilement les rajouter… Le plus dur étant en fait, de détecter pour chaque type de solutions les divisions par zéro…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
J'ai joué un peu puis me suis dis "c'est un boulot pour une machine".
Ou pas… Ce genre de jeux (le compte est bon) est une façon d'évaluer l'aptitude de calculs mentaux et l'intuition (plutôt la capacité d'estimation) face aux combinaisons de nombres. Évaluer une machine, ou tricher, a peu d'intérêt ici.
Ceci dit, l'informatique y est utile pour évaluer des conjectures mathématiques ou explorer certains aspects algorithmiquement (notamment tout ce qui touche aux arbres de décision, dont il n'est pas question ici puisqu'on emploie la force brute.) Il me semble d'ailleurs avoir vu passer deux articles sur le sujet, dont un dans Tangente si j'ai bonne mémoire.
À noter que le programme donne des solutions invalides qui n'utilisent pas tous les nombres, il faut filtrer. Je n'ai pas non plus implémenté la division qui me paraissait plus compliquée qu'utile à l'époque pour le compte est bon.
Du coup, je vais relever le défi, histoire de me changer les idées après une journée harassante de travail. Et pour épicer un peu la chose, l'implémentation sera en shell POSIX…
Bien, je passe sur l'étape de la saisie des nombres et du contrôle des entrées (toujours.)
Je ne vais pas non plus stocker les solutions, mais plutôt les sortir au fil de l'eau.
Comme on n'a pas de structure de tableau (en KSh, BASh et probablement ZSh, oui) je vais utiliser une variable par nombre (mais il n'y en a heureusement que quatre) !
Mon idée est qu'on va faire une boucle sur la liste de nombres.
Dans un langage comme RPL, on va juste faire quatre tours en décalant…
\<<
1 4 FOR i
4 ROLL
@process
NEXT
\>>
Pour la plupart des autres langages, non Forth-like on va utilier un tableau et décaler le curseur dans la boucle (tout en prenant tous les éléments, c'est juste pour changer l'ordre à chaque itération.)
Bon, on ne gère pas de tableau et heureusement il n'y a que quatre nombres.
Ces quatre lignes sont trompeuses (ça m'a servi à valider le fonctionnement, mais) il y a en fait vingt-quatre permutations (prises en compte dans la version finale.)
Le processus va consister à appliquer les quatre opérateurs… de sorte à couvrir tous les cas…
On peut les énumérer, mais par peur d'oublier, je boucle pareillement pour les quatre opérations… (l'optimisation serait de déboucler …parce que sinon on aura des doublons du fait la commutativité, mais cet exercice se fera plus tard.)
process0(){for o1 in '+''-''*''/'dofor o2 in '+''-''*''/'do
process1 "$o1""$o2""$@"donedone}
process1(){localo1="$1"localo2="$2"localn1="$3"localn2="$4"localn3="$5"localn4="$6"for o3 in '+''-''*''/'dotest$(((n1 $o1 n2)$o3(n3 $o2 n4))) -eq 24&&
solution1 "$n1""$o1""$n2""$n3""$o2""$n4""$o3"done}
solution1(){localr1=$(($1$2$3))localr2=$(($4$5$6))echo"$1$2$3=$r1; $4$5$6=$r2; $r1$7$r2=24"}
Bon, c'est pas tout ça. Dans ce truc brutalement automatique, il ne faut pas oublier de gérer la division par zéro…
En plus du second processus, on va appeler un troisième dans la même boucle (c'est du « quick and dirty » et il doit être possible de fusionner les deux…)
Comme c'est bête/brute et méchant/truand, il m'annonce vingt réponses qui pourraient se ramener à 10 du fait des symétries et on a exploré deux mille huit cents combinaisons dont on aurait pu se passer du quart je pense.
J'ai exploré ici les formes (c'est (8-5)*(7+1) ou (1+3)*(2-8) par exemple) et (c'est 3*(2-1)*8 par exemple) ; mais pas et ! Il s'agit d'une part d'un jet rapide, et d'autre part ce ne serait pas pertinent en shell car je soupçonne qu'il y aura des doublons et/ou même des triplons. Cependant, avec ces ajouts, on devrait arriver aux trois mille septante douze…
Petit bémol cependant : les calcul ici sont fait sur des entiers et c'est problématique pour les divisions car le hollandais volant l'entend flottant… (si j'en crois la fonction randomizeNumbers() qui pourtant fait un Math.floor(), à moins que ce ne soit à cause du evalMath(cell1, operator, cell2) dans la fonction evalResultat() ?) Je pense pouvoir corriger cela facilement, ce qui réduira le nombre de solutions proposées.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
La suite est presque prête. Ce sera une dépêche si plus de gens le signifient en plussant ton commentaire. La valeur à atteindre est 16 (parce-que 0xF simplement)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
Petite confusion de ma part : ce sont les parenthèses et non les crochets pour ce que j'avais à l'esprit, et il faut rajouter le croisillon et le pourcentage…
[^] # Re: Firefox
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au message Comment retrouver l'historique effacé Firefox sous Linux Mint. Évalué à 2.
Je suppose que ça correspond à la partie suivante ? « J'ai trouvé une solution ou la personne va sur le fichier .mozilla / xxxxxx.default-release >>>il fait un clic droit dessus et en bas de la fenêtre on lui propose "revenir à la version précédente…">>>"restaurer depuis quand" et là il peut choisir la date de restauration. » Enfin, dans l'explorateur de fichiers et non le menu du navigateur, je te l'accorde.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: du verbe pendre ?
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien Un inventaire des dossiers « données personnelles » pendants devant la Cour de justice de l’UE. Évalué à 2.
Avec de jolies pinces à linge ;-D À moins que…

Sinon, le premier paragraphe dit : « Le site gdprbeetle.eu, tenu par Joost Gerritse, un avocat spécialisé, dresse un inventaire de l’ensemble des affaires relatives aux données à caractère personnelles pendantes devant la Cour de justice de l’Union européenne. » Je suppose qu'il faut comprendre la suspension juridique comme volontairement oubliés dans les cartons et attendant d'être recouvert par la poussière des cold cases :-S
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Autres corrections
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 2.
Merci beaucoup ! J'imagine que ce ne fut pas évident et que vous y avez passé un temps certain…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: avec des pincettes
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Cyber guerre ou pas finalement. Évalué à 10.
Ah tu connaissais pas la fiole de Powell qui prouvait que le méchant Hussein arrosait sa population avec une arme bactérienne ?

Alors qu'au fond, c'est lui le véritable sanguinaire…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Désaccord de principe
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien F-Droid: how is it weakening the Android security model ?. Évalué à 9.
Article quand même biaisé je trouve.
Par exemple, quand je lis : « F-Droid requires that the source code of the app is exempt from any proprietary library or ad service, according to their inclusion policy. Usually, that means that some developers will have to maintain a slightly different version of their codebase that should comply with F-Droid’s requirements. Besides, their “quality control” offers close to no guarantees as having access to the source code doesn’t mean it can be easily proofread. » Rien que ça me fait dire que son avis est partisane. Tourner les choses de sorte à faire croire que les deux gus (je prends ce nombre pour aller dans son sens et en partant du principe qu'il a aussi peu de ressources chez F-Droid pour faire le taf) qui vont revoir le code en plus de la relecture initiale du dev ne compte pas… Histoire que le quidam qui lit rapidement pense que l'auto-review du dev se suffit ou que la boutique de G fait mieux (alors qu'aucun humain ne va jamais regarder.) Et la pleurniche que les développeurs doivent maintenir deux versions ; si c'est si dérangeant pourquoi ne pas maintenir que la seule version propre (sans pisteurs) ? Et les devs qui ont une version à pub et une version payante sur l'infâme store G ont deux têtes ?
Dans le même paragraphe, il/elle poursuit par : « Saying Play Store is filled with malicious apps is beyond the point: the false sense of security is a real issue. Users should not think of the F-Droid main repository as free of malicious apps, yet unfortunately many are inclined to believe this. » Je ne vois pas le souci quand on parle de « sentiment de sécurité » vu que ça reste du ressenti… De plus, glisser ça là et en gras alors le paragraphe commence en rappelant le contrat morale, c'est un peu comme un Z qui ramène tous les maux (y compris le réchauffement climatique) aux muslmans. Il s'agit du « respect de la vie privée » avant tout, et perso quand une appli ne me piste pas et respecte mes données je me sens plus en confiance avec elle.
Plein de coups de canifs comme ça, comme si de rien n'était, après avoir commencé son article en jurant qu'il ne fait pas d'attaque gratuite et d'idéologie. Tout ça pour quand même, à coup de sophismes, remettre le choix du respect de la vie privée en cause. Ça me va très bien que ce soit F-Droid qui signe les paquets sur lesquels il s'engage : ce n'est pas une relation tri-partite comme il a voulu laisser croire …parce-que si j'ai confiance en le/la dév, et qu'il/elle génère ses paquets, je n'aurais eu qu'à récupérer les paquets sur leur site/dépôt. …la seule autorité de confiance ici c'est F-Droid, et avec elle, je sais que je vais avoir la fameuse seconde version sans la pomme empoisonnée sur le gâteau !
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: un petit peu plus (de divisions)
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal résoudre "trouve 24". Évalué à 2. Dernière modification le 25 février 2022 à 01:42.
Les quatre manquants sont rajoutés, ce qui porte le nombre de formes explorées à 6.
Je croise les doigts ; on ne devrait pas avoir d'erreur de division.
Consultation/Téléchargement → https://framagit.org/-/snippets/6519
Par contre, comme il n'y a pas de table de sauvegarde intermédiaire, je ne sais trop comment élimer les doublons pour l'instant. Faudra filtrer soi-même les résultats :
Je m'attaque à l'autre grand problème (ne retenir que les divisions entières) demain.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
# on y est pas déjà ?
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Cyber guerre ou pas finalement. Évalué à 4.
Il semble que la cyber-guerre a déjà bien avancée, mais elle est pour l'essentiel essentiellement économique (en témoigne l'affaire récente des sous-marins français et les reportages à charge d'Arte contre la Chine par exemple) et non militaire (si on fait fi des activité de "renseignement" comme on dit de manière politiquement correcte.)
Mais c'est un bon exercice de s'interroger sur les black-outs électroniques généralisés.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Le souci
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au message [résolu] alternatives à Typora. Évalué à 3.
Héhé, personne pas sous Linux ; et puis si je peux en profiter pour la libérer un peu plus de ces pièges (passer de gratuiciel, certes sans garantie de rester éternellement gratuit, à partagiciel en démo, certes pas cher, c'est pareil qu'une prise d'otage si les gens n'ont pas d'alternative ou on trop pris goût pour aller voir ailleurs si on y est.)
Je n'étais pas encore tombé sur le bogue que tu mentionnes et c'est vrai que c'est assez étrange et un poil agaçant bien que pas bloquant dans l'absolu. Vraiment bizarre.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Rechercher des alternatives
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au message [résolu] alternatives à Typora. Évalué à 3.
Merci pour le retour. C'est vrai que les trucs qui mettent une éternité pour se lancer ça laisse le temps de prendre un café et ça donne pas une bonne impression de productivité quand on ne les lance pas régulièrement/souvent. Le truc que je reproche le plus à Electron pour ma part c'est surtout la consommation mémoire, et on peut rajouter des bugs étranges parfois.
La personne étant de type Michu et non dev, je ne peux pas aller dans le sens Scite (que j'apprécie bien) + txt2tags (il faudra que je teste un de ces quatre cette alternative à pandoc.)
Par ailleurs, comme on est dans un contexte Markdown, Focuswriter ne répond pas au besoin immédiat. Mais je mets ça de côté comme alternatif aux traitements de texte qui vous enferment dans un format (ici, avec RTF et ODT on n'a que du standard interopérable …normalement)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Rechercher des alternatives
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au message [résolu] alternatives à Typora. Évalué à 2.
Merci, je l'avais mis en évaluation aussi suite à un autre commentaire. ;-)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Un sacré jeu de piste
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse à la dépêche RFC Fast Kernel Headers très prometteur pour le noyau Linux. Évalué à 2. Dernière modification le 24 février 2022 à 16:40.
C'est exactement ce que font certaines boîtes avec les partages Windows…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: morts de quoi ?
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse à la dépêche En mémoire d’Erik « alphageek » Jan Tromp et de Brett Person, contributeurs de Slackware. Évalué à 1. Dernière modification le 24 février 2022 à 16:36.
Les deux liens que tu donnes sont clairement des hommages (on devrait rajouter ce tag et supprimer celui de deuil qui fait plus penser à un avis de décès), au sens de témoignage de respect pour les accomplissements, raison pour laquelle ça ne choque pas. Même là, je dis juste qu'il s'agit d'apporter juste une information biographique (personne née/morte/enterrée à telle date à tel endroit, comme une stèle funéraire… pas besoin d'entrer dans les détails des derniers instants…)
Il faudra créer une section dédiée pour que ces news deviennent des nécrologies. ;-)
On est d'accord qu'il n'y a pas de raison d'avoir un long fil de discussion qui en plus tourne un peu en rond.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: un petit peu plus (de divisions)
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal résoudre "trouve 24". Évalué à 2.
Corrigé …par l'ajout d'un test supplémentaire que j'ai probablement zappé à cause de la fatigue.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: un petit peu plus (de divisions)
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal résoudre "trouve 24". Évalué à 2.
Désolé, je n'ai pas encore eu le temps de mettre en ligne, j'ai priorisé le commentaire expliquant l'approche à mon code jetable (il faudrait nettoyer un peu plus pour que ce soit présentable… bon, j'ai rajouté des commentaires à l'instant …parce-que des fonctions dont on n'a pas la signature ça va être dur à maintenir)
C'est maintenant en ligne https://framagit.org/-/snippets/6519
Ouf, mes explications ici ont été assez claires pour permettre de reconstituer l'ensemble …et l'adapter/épurer (ne pas s'enquiquiner avec les divisions)
Les règles n'étaient pas très claires pour moi. :-S Pour une fois que je n'ai pas voulu chipoter (et ai supposé qu'on faisait tous les calculs dans
…à tort) Il a fallu être devant le cas (en testant en ligne) pour se rendre compte que la page donnait des résultats en flottants. Du coup je suis allé jeter un œil au source de la page (heureusement tout est en JS et pas caché, mais mon ECMAScript est un peu rouillé et je n'ai pas su voir/dire si c'est intentionnel ou si c'est une erreur de codage : seul-e l'auteur-e peut le dire)
Je vais corriger cela dans une v2 dans l'une des manières suivantes (à voir ce qui est plus simple en shell)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: un petit peu plus (de divisions)
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal résoudre "trouve 24". Évalué à 2.
POSIX shell, j'insiste :-D Ça devrait fonctionner aussi
dash/ashavec lequel je teste. C'est juste qu'on évite des trucs propres àbash/ksh??/pdksh/zsh/etc ; mais ce faisant on s'évite certaines facilités (comme les tableaux et certaines formes de tests)J'ai oublié de corriger mon post (rédigé certes offline pour avoir le temps de tester un peu et donc présenter un POC au lieu d'une théorie, mais j'ai du zapper dans les aller-retours rédaction-débogage)
Dans la boucle
fordu second type type, j'avais mis deux tests (juste avant le calcul) au lieu du seul mentionné :J'ai ensuite remplacé les deux tests par un seul qui fusionne les deux…
Le
$7est$o3; mais on peut réarranger l'ordre si ça simplifie la lecture et la compréhension.Pas possible ! Je les ai testé séparément sur ton exemple et ça m'a bien renvoyé les quatre résultats (pour 1344 calculs) suivants :
Oui et c'était le premier pan de mon défi :-D
Je viens d'en trouver un avec l'exemple de "le_poney" :-D (dans la sortie suivante, je n'ai activé que solutions2)
C'est le cas
1 / (7 - 7) + 2qui devrait pouvoir se corriger sans trop de difficulté. Je fais ça tout à l'heure.“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: un petit peu plus (de divisions)
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal résoudre "trouve 24". Évalué à 2. Dernière modification le 24 février 2022 à 14:08.
Avec les commutativités (additions et multiplications) et les priorités (multiplications et divisions) on devrait retomber sur l'un des 4 cas précédemments énumérés…
Mais je dis ça au doigt mouillé ; faudrait que je prenne le temps faire la preuve mathématique.
Justement avec les priorités,
(solutions5) et
(solutions6) ainsi que
(solutions0) tout simplement ?
((7*7)-1)/2est(7*7-1)/2; ce qui me fait dire qu'il manque éventuellement les casOn peut facilement les rajouter… Le plus dur étant en fait, de détecter pour chaque type de solutions les divisions par zéro…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Snif
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien Sven Guckes verstorben. Évalué à 2.
C'est donc un nom connu de LinuxFr :-) C'est triste, il avait beaucoup d'énergie (ardeur dans la promotion du libre) à revendre. Qu'il repose en paix.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
# un petit peu plus (de divisions)
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal résoudre "trouve 24". Évalué à 4. Dernière modification le 24 février 2022 à 03:44.
C'est ballot …parce que, justement dans un lien posté récemment, que l'absence de pisteurs est un des ingrédients du succès.
https://linuxfr.org/users/gilcot/liens/wordle-is-pretty-damn-smart-in-many-subtle-ways
Ou pas… Ce genre de jeux (le compte est bon) est une façon d'évaluer l'aptitude de calculs mentaux et l'intuition (plutôt la capacité d'estimation) face aux combinaisons de nombres. Évaluer une machine, ou tricher, a peu d'intérêt ici.
Ceci dit, l'informatique y est utile pour évaluer des conjectures mathématiques ou explorer certains aspects algorithmiquement (notamment tout ce qui touche aux arbres de décision, dont il n'est pas question ici puisqu'on emploie la force brute.) Il me semble d'ailleurs avoir vu passer deux articles sur le sujet, dont un dans Tangente si j'ai bonne mémoire.
Du coup, je vais relever le défi, histoire de me changer les idées après une journée harassante de travail. Et pour épicer un peu la chose, l'implémentation sera en shell POSIX…
Bien, je passe sur l'étape de la saisie des nombres et du contrôle des entrées (toujours.)
Je ne vais pas non plus stocker les solutions, mais plutôt les sortir au fil de l'eau.
Comme on n'a pas de structure de tableau (en KSh, BASh et probablement ZSh, oui) je vais utiliser une variable par nombre (mais il n'y en a heureusement que quatre) !
Mon idée est qu'on va faire une boucle sur la liste de nombres.
Dans un langage comme RPL, on va juste faire quatre tours en décalant…
Pour la plupart des autres langages, non Forth-like on va utilier un tableau et décaler le curseur dans la boucle (tout en prenant tous les éléments, c'est juste pour changer l'ordre à chaque itération.)
Bon, on ne gère pas de tableau et heureusement il n'y a que quatre nombres.
Ces quatre lignes sont trompeuses (ça m'a servi à valider le fonctionnement, mais) il y a en fait vingt-quatre permutations (prises en compte dans la version finale.)
Le processus va consister à appliquer les quatre opérateurs… de sorte à couvrir tous les cas…
On peut les énumérer, mais par peur d'oublier, je boucle pareillement pour les quatre opérations… (l'optimisation serait de déboucler …parce que sinon on aura des doublons du fait la commutativité, mais cet exercice se fera plus tard.)
Bon, c'est pas tout ça. Dans ce truc brutalement automatique, il ne faut pas oublier de gérer la division par zéro…
En plus du second processus, on va appeler un troisième dans la même boucle (c'est du « quick and dirty » et il doit être possible de fusionner les deux…)
Enfin, on pense à ajouter les compteurs.
Comme c'est bête/brute et méchant/truand, il m'annonce vingt réponses qui pourraient se ramener à 10 du fait des symétries et on a exploré deux mille huit cents combinaisons dont on aurait pu se passer du quart je pense.
(c'est
(c'est
et
! Il s'agit d'une part d'un jet rapide, et d'autre part ce ne serait pas pertinent en shell car je soupçonne qu'il y aura des doublons et/ou même des triplons. Cependant, avec ces ajouts, on devrait arriver aux trois mille septante douze…
J'ai exploré ici les formes
(8-5)*(7+1)ou(1+3)*(2-8)par exemple) et3*(2-1)*8par exemple) ; mais pasPetit bémol cependant : les calcul ici sont fait sur des entiers et c'est problématique pour les divisions car le hollandais volant l'entend flottant… (si j'en crois la fonction
randomizeNumbers()qui pourtant fait unMath.floor(), à moins que ce ne soit à cause duevalMath(cell1, operator, cell2)dans la fonctionevalResultat()?) Je pense pouvoir corriger cela facilement, ce qui réduira le nombre de solutions proposées.“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Retour d'erreur ?
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au message renommage de fichiers en masse. Évalué à 3.
Il y la structure et les checks nécessaires qui sont indiqué dans l'exemple que j'avais pointé (on est un peu loin de ce qui a été fait.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Quai d'Orsay
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Évolution des Conditions Générales. Évalué à 3.
Excellent ! Merci tout plein.
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
# palme de la boule de cristal
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au lien « La France va-t-elle interdire la vente de PC sans OS ? ». Évalué à 2.
En même temps, ce n'était qu'une question de délai…
https://linuxfr.org/users/mcdoil74/journaux/ordi-baby-microsoft-windows#comment-1021358
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Ça ferait une bonne dépêche je trouve
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 2.
La suite est presque prête. Ce sera une dépêche si plus de gens le signifient en plussant ton commentaire. La valeur à atteindre est 16 (parce-que
0xFsimplement)“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Autres corrections
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal rétrospective sur la mise en page en console. Évalué à 2.
Je me suis fait un
diffde toutes les corrections et c'est monstrueux…https://paste.chapril.org/?ad03e7cef7a32484#nVrrtCqfPzhHxtsyRHpHucPm6G5m67zJtaF85nSasxN
(352 lignes de diff pour 1380 dans le source, soit le quart mais il y a dedans les trois lignes de contexte par défaut…)
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Un sacré jeu de piste
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse à la dépêche RFC Fast Kernel Headers très prometteur pour le noyau Linux. Évalué à 4.
Il y a certainement une …mono piste…
“It is seldom that liberty of any kind is lost all at once.” ― David Hume
[^] # Re: Attendre un caractère après les deux points
Posté par Gil Cot ✔ (site web personnel, Mastodon) . En réponse au journal Voter pour virer les emojis de Gitlab. Évalué à 2.
Petite confusion de ma part : ce sont les parenthèses et non les crochets pour ce que j'avais à l'esprit, et il faut rajouter le croisillon et le pourcentage…
Pour le reste, c'est plus classique et on retrouve bien l'idée de second niveau
“It is seldom that liberty of any kind is lost all at once.” ― David Hume