Posté par jseb .
Évalué à 10.
Dernière modification le 31 mars 2023 à 12:39.
Question: écris un programme en Forth qui affiche un point en mode vga 320×200 sous msdos
Réponse : Voici un exemple de programme Forth qui affiche un point en mode VGA 320x200 sous MS-DOS :
\ Constantes pour la configuration VGA
decimal
320 constant screen-w
200 constant screen-h
256 constant screen-colors
\ Configuration de la carte graphique VGA
: init-vga ( -- )
13 0e 01 03 8d 0a 8c 8e 07 17 09 00 06 05 00 0f
[email protected] 0 0 0
[email protected] [email protected] [email protected] [email protected]
[email protected] [email protected] [email protected] [email protected]
[email protected] [email protected] [email protected] [email protected] ;
\ Afficher un point en position x, y avec la couleur spécifiée
: plot ( x y color -- )
screen-w * + 320 * swap
screen-h * + 4* + mov
dup @ swap or swap !
;
\ Initialiser la carte graphique VGA
init-vga
\ Afficher un point rouge en position x=100, y=100
100 100 4 plot
J'ai demandé MS-DOS afin de donner un cadre simple au problème (lui demander ça sous linux ou windows eut été un peu déloyal).
Le désassemblage de « 13 0e 01 03 8d 0a 8c 8e 07 17 09 00 06 05 00 0f » est étrange.
Je m'attendais à une initialisation du mode VGA (mov ax,13h int 10h , en gros, avec une boucle de nettoyage du segment video).
Je suggère donc de remettre le Forth au programme, les étudiants seront obligés de travailler par eux-même pendant quelques années. Jusqu'à que le volume de données soit suffisant et que les profs passent à Brainfuck.
Discussions en français sur la création de jeux videos : IRC libera / #gamedev-fr
L'autre jour, j'avais un truc pénible à faire en JS (manipulation de tableaux avec sommes dans tous les sens, juste pour une utilisation).
Chat-GPT me l'a fait, le code est assez variable d'un coup sur l'autre, mais il l'a fait.
Comme c'était la première fois que je l'utilisais, j'ai un peu amélioré mes demandes :
- Au début, je demandais tout avec une phrase => Ca ne fonctionnait pas parce que je demandais trop de choses d'un coup
- Ensuite, je demandais les choses petit à petit => Au bout de quelques questions, il s’emmêlait les pinceaux
- Ensuite, je collais mon JSON, et je faisais ma demande dans un commentaire => Ca a bien marché !
- Enfin, je faisais les choses petit à petit en faisant des fonctions, avec des commentaires et en repartant des debugs.
J'ai du mal à dire si cela m'a fait gagner beaucoup de temps, car c'était la première fois que je l'utilisais, mais franchement, j'ai trouvé cela juste incroyable.
Vu que c'est chatGPT qui a recraché du code, est ce que tu pourrais le recopier ici?
Et, le Json, il avait quelle forme?
Je comprendrai que tu sois réticent à partager avec nous des secrets industriels dans du Json et du code Javascript, et que tu voudras garder tes échanges avec ChatGPT privés.
Pourquoi bloquer la publicité et les traqueurs : https://greboca.com/Pourquoi-bloquer-la-publicite-et-les-traqueurs.html
Mince, je crois que je n'ai plus accès aux échanges… Mais tu peux essayer facilement. Colles lui juste un JSON, il te dit ce qu'il comprend du JSON avec les en-têtes de colonnes, il comprend la logique.
Moi, je suis juste bluffé, c'est un truc de dingue… Je ne cherche pas la petite bête (je ne dis pas cela pour toi :)), le code n'est sans doute pas parfait, des fois, ça ne fonctionne pas du premier coup. Mais, dans 1 an, 2 ans, 5 ans, il le sera.
Alors, on peut faire l'autruche, mais, pour moi, c'est une mauvaise idée, on devrait juste regarder les alternatives libres aujourd'hui…
C'est un peu comme les frameworks, ça fonctionne, mais le code généré est souvent horrible, consomme plein de ressources ram et cpu, juste pour un bout de fonctionnalité.
Alors que lorsque cette fonctionnalité est codée à la main, ça prends plusieurs jours, mais c'est ultra-efficace.
Pour des libs comme jquerry, il y avait eu du refactoring, mais j'ai oublié de quoi il était question.
Pourquoi bloquer la publicité et les traqueurs : https://greboca.com/Pourquoi-bloquer-la-publicite-et-les-traqueurs.html
Tu peux voir cela comme cela, mais, à mon avis, tu te trompes… Regarde ce que faisait une IA il y a 2 ans et ce que cela peut te pondre aujourd'hui.
Et bien, si ça n'est pas parfait, aujourd'hui, ok, mais demain, ça le sera.
Peux tu me faire une fonction qui ordonne ce JSON par superficie ?
import json def trier_villes_par_superficie(json_str):
# Charger le JSON
data = json.loads(json_str)
# Trier la liste des villes par superficie croissante
villes_triees = sorted(data["villes"], key=lambda ville: ville["superficie"])
# Construire un nouveau JSON trié
data_trie = {"villes": villes_triees}
json_trie = json.dumps(data_trie, indent=2)
return json_trie
Explications :
La fonction trier_villes_par_superficie prend en paramètre une chaîne de caractères représentant un JSON contenant les données des villes.
Elle commence par charger le JSON en utilisant la fonction json.loads.
Ensuite, elle trie la liste des villes en utilisant la fonction sorted en spécifiant la clé de tri à utiliser (lambda ville: ville["superficie"] signifie que l'on trie par la valeur de la clé "superficie" de chaque ville).
Elle construit un nouveau JSON trié à partir de la liste triée de villes en utilisant la fonction json.dumps.
Enfin, elle retourne la chaîne de caractères représentant le JSON trié.
Désolé, donc, là, il s'est trompé il a trié par ordre alphabétique les superficies :)
C'est trié par ordre alphabétique et pas par ordre croissant
Je suis désolé pour cette erreur. Voici la fonction modifiée pour trier les villes par ordre croissant de superficie :
import json
def trier_villes_par_superficie(json_str):
# Charger le JSON
data = json.loads(json_str)
# Trier la liste des villes par superficie croissante
villes_triees = sorted(data["villes"], key=lambda ville: ville["superficie"])
# Construire un nouveau JSON trié
data_trie = {"villes": villes_triees}
json_trie = json.dumps(data_trie, indent=2)
return json_trie
Posté par sobriquet .
Évalué à 2.
Dernière modification le 31 mars 2023 à 20:42.
C'est une préoccupation légitime. Pour tester, j'ai demandé à ChatGPT d'écrire une fonction en C pour chercher une chaîne dans un texte. Il a produit une implémentation naïve, pas optimisée, sans commentaire. Si je lui précise que je veux un code optimisé et bien commenté, il utilise les bons algorithmes et ajoute des commentaires décents, bien que parfois triviaux. Il a juste du mal à indiquer dans le code quel algorithme d'optimisation il a employé, malgré ma demande. J'ai fait plusieurs essais, mais je n'ai pas testé les codes produits.
Cela doit beaucoup dépendre du langage, plus ou moins à la mode.
Avec Ada, la réponse a toujours l'air sympa, mais complètement fausse (erreurs grossières de syntaxe, mélange avec du C…). Bref, cela me rappelle toujours un sketch (de je ne sais plus qui) sur les produits discount et Alain DELO(I)N.
La presse relate l'aventure d'un politicien fameux ayant fait rédigé un discours par ChatGPT. Il trouve cela fascinant. Pour moi les perspectives seraient plutôt abyssales ici.
— Bientôt les programmes des présidentielles écrit par IA.
— Croire que les gens peuvent être intéressés à vous écouter déblatérer des heures durant sur des sujets dont vous êtes parfaitement ignorant, n'est-ce pas là une gageur ? Les discours écrit par des nègres, soulignaient déjà le peu d'intérêt pour le travail des élites politiques. Mais au moins pouvait-on supputer que les sous-traitants aient été sélectionnés sur la base de leurs convictions plutôt qu'uniquement sur leur capacité à baratiner. Oser passer la vitesse supérieur en choisissant une machine connue pour sa capacité à raconter des âneries, voilà ce que seul un politicien français semble pouvoir oser.
# il arrive à copier/coller n'importe quoi, comme un vrai étudiant.
Posté par jseb . Évalué à 10. Dernière modification le 31 mars 2023 à 12:39.
Question: écris un programme en Forth qui affiche un point en mode vga 320×200 sous msdos
Réponse : Voici un exemple de programme Forth qui affiche un point en mode VGA 320x200 sous MS-DOS :
J'ai demandé MS-DOS afin de donner un cadre simple au problème (lui demander ça sous linux ou windows eut été un peu déloyal).
Le désassemblage de « 13 0e 01 03 8d 0a 8c 8e 07 17 09 00 06 05 00 0f » est étrange.
Je m'attendais à une initialisation du mode VGA (mov ax,13h int 10h , en gros, avec une boucle de nettoyage du segment video).
Donc déjà, ce n'est pas ça.
Je suggère donc de remettre le Forth au programme, les étudiants seront obligés de travailler par eux-même pendant quelques années. Jusqu'à que le volume de données soit suffisant et que les profs passent à Brainfuck.
Discussions en français sur la création de jeux videos : IRC libera / #gamedev-fr
# Génération en JS
Posté par Cyprien (site web personnel) . Évalué à 5.
L'autre jour, j'avais un truc pénible à faire en JS (manipulation de tableaux avec sommes dans tous les sens, juste pour une utilisation).
Chat-GPT me l'a fait, le code est assez variable d'un coup sur l'autre, mais il l'a fait.
Comme c'était la première fois que je l'utilisais, j'ai un peu amélioré mes demandes :
- Au début, je demandais tout avec une phrase => Ca ne fonctionnait pas parce que je demandais trop de choses d'un coup
- Ensuite, je demandais les choses petit à petit => Au bout de quelques questions, il s’emmêlait les pinceaux
- Ensuite, je collais mon JSON, et je faisais ma demande dans un commentaire => Ca a bien marché !
- Enfin, je faisais les choses petit à petit en faisant des fonctions, avec des commentaires et en repartant des debugs.
J'ai du mal à dire si cela m'a fait gagner beaucoup de temps, car c'était la première fois que je l'utilisais, mais franchement, j'ai trouvé cela juste incroyable.
[^] # Re: Génération en JS
Posté par GG (site web personnel) . Évalué à 4.
Vu que c'est chatGPT qui a recraché du code, est ce que tu pourrais le recopier ici?
Et, le Json, il avait quelle forme?
Je comprendrai que tu sois réticent à partager avec nous des secrets industriels dans du Json et du code Javascript, et que tu voudras garder tes échanges avec ChatGPT privés.
Pourquoi bloquer la publicité et les traqueurs : https://greboca.com/Pourquoi-bloquer-la-publicite-et-les-traqueurs.html
[^] # Re: Génération en JS
Posté par Cyprien (site web personnel) . Évalué à 3.
Mince, je crois que je n'ai plus accès aux échanges… Mais tu peux essayer facilement. Colles lui juste un JSON, il te dit ce qu'il comprend du JSON avec les en-têtes de colonnes, il comprend la logique.
Moi, je suis juste bluffé, c'est un truc de dingue… Je ne cherche pas la petite bête (je ne dis pas cela pour toi :)), le code n'est sans doute pas parfait, des fois, ça ne fonctionne pas du premier coup. Mais, dans 1 an, 2 ans, 5 ans, il le sera.
Alors, on peut faire l'autruche, mais, pour moi, c'est une mauvaise idée, on devrait juste regarder les alternatives libres aujourd'hui…
[^] # Re: Génération en JS
Posté par GG (site web personnel) . Évalué à 2.
C'est un peu comme les frameworks, ça fonctionne, mais le code généré est souvent horrible, consomme plein de ressources ram et cpu, juste pour un bout de fonctionnalité.
Alors que lorsque cette fonctionnalité est codée à la main, ça prends plusieurs jours, mais c'est ultra-efficace.
Pour des libs comme jquerry, il y avait eu du refactoring, mais j'ai oublié de quoi il était question.
Pourquoi bloquer la publicité et les traqueurs : https://greboca.com/Pourquoi-bloquer-la-publicite-et-les-traqueurs.html
[^] # Re: Génération en JS
Posté par Cyprien (site web personnel) . Évalué à 1.
Tu peux voir cela comme cela, mais, à mon avis, tu te trompes… Regarde ce que faisait une IA il y a 2 ans et ce que cela peut te pondre aujourd'hui.
Et bien, si ça n'est pas parfait, aujourd'hui, ok, mais demain, ça le sera.
[^] # Re: Génération en JS
Posté par Cyprien (site web personnel) . Évalué à 2. Dernière modification le 31 mars 2023 à 17:54.
Je te mets un exemple de ce que je viens de construire :
Bien sûr, voici un exemple de JSON avec les 20 plus grandes villes de France, leur population, leur superficie et leur maire :
{
"villes": [
{
"nom": "Paris",
"population": 2190327,
"superficie": 105.4,
"maire": "Anne Hidalgo"
},
{
"nom": "Marseille",
"population": 861635,
"superficie": 240.6,
"maire": "Michèle Rubirola"
},
{
"nom": "Lyon",
"population": 515695,
"superficie": 47.9,
"maire": "Grégory Doucet"
},
{
"nom": "Toulouse",
"population": 479553,
"superficie": 118.3,
"maire": "Jean-Luc Moudenc"
},
{
"nom": "Nice",
"population": 342295,
"superficie": 71.9,
"maire": "Christian Estrosi"
},
{
"nom": "Nantes",
"population": 313288,
"superficie": 65.19,
"maire": "Johanna Rolland"
},
{
"nom": "Strasbourg",
"population": 280966,
"superficie": 78.26,
"maire": "Jeanne Barseghian"
},
{
"nom": "Montpellier",
"population": 280300,
"superficie": 56.88,
"maire": "Michael Delafosse"
},
{
"nom": "Bordeaux",
"population": 257804,
"superficie": 49.36,
"maire": "Pierre Hurmic"
},
{
"nom": "Lille",
"population": 232787,
"superficie": 34.83,
"maire": "Martine Aubry"
},
{
"nom": "Rennes",
"population": 216815,
"superficie": 50.39,
"maire": "Nathalie Appéré"
},
{
"nom": "Reims",
"population": 182592,
"superficie": 46.9,
"maire": "Arnaud Robinet"
},
{
"nom": "Le Havre",
"population": 170352,
"superficie": 46.95,
"maire": "Édouard Philippe"
},
{
"nom": "Saint-Étienne",
"population": 170049,
"superficie": 79.97,
"maire": "Gaël Perdriau"
},
{
"nom": "Toulon",
"population": 166527,
"superficie": 42.84,
"maire": "Hubert Falco"
},
{
"nom": "Grenoble",
"population": 161792,
"superficie": 18.13,
"maire": "Éric Piolle"
}
}
Explications :
La fonction trier_villes_par_superficie prend en paramètre une chaîne de caractères représentant un JSON contenant les données des villes.
Elle commence par charger le JSON en utilisant la fonction json.loads.
Ensuite, elle trie la liste des villes en utilisant la fonction sorted en spécifiant la clé de tri à utiliser (lambda ville: ville["superficie"] signifie que l'on trie par la valeur de la clé "superficie" de chaque ville).
Elle construit un nouveau JSON trié à partir de la liste triée de villes en utilisant la fonction json.dumps.
Enfin, elle retourne la chaîne de caractères représentant le JSON trié.
Voici un exemple d'utilisation de la fonction :
etc. etc.
[^] # Re: Génération en JS
Posté par Cyprien (site web personnel) . Évalué à 3.
Désolé, donc, là, il s'est trompé il a trié par ordre alphabétique les superficies :)
Je suis désolé pour cette erreur. Voici la fonction modifiée pour trier les villes par ordre croissant de superficie :
import json
def trier_villes_par_superficie(json_str):
# Charger le JSON
data = json.loads(json_str)
# Trier la liste des villes par superficie croissante
villes_triees = sorted(data["villes"], key=lambda ville: ville["superficie"])
# Construire un nouveau JSON trié
data_trie = {"villes": villes_triees}
json_trie = json.dumps(data_trie, indent=2)
return json_trie
[^] # Re: Génération en JS
Posté par sobriquet . Évalué à 2. Dernière modification le 31 mars 2023 à 20:42.
C'est une préoccupation légitime. Pour tester, j'ai demandé à ChatGPT d'écrire une fonction en C pour chercher une chaîne dans un texte. Il a produit une implémentation naïve, pas optimisée, sans commentaire. Si je lui précise que je veux un code optimisé et bien commenté, il utilise les bons algorithmes et ajoute des commentaires décents, bien que parfois triviaux. Il a juste du mal à indiquer dans le code quel algorithme d'optimisation il a employé, malgré ma demande. J'ai fait plusieurs essais, mais je n'ai pas testé les codes produits.
[^] # Re: Génération en JS
Posté par shuihuzhuan . Évalué à 2.
Cela doit beaucoup dépendre du langage, plus ou moins à la mode.
Avec Ada, la réponse a toujours l'air sympa, mais complètement fausse (erreurs grossières de syntaxe, mélange avec du C…). Bref, cela me rappelle toujours un sketch (de je ne sais plus qui) sur les produits discount et Alain DELO(I)N.
[^] # Re: Génération en JS
Posté par Cyprien (site web personnel) . Évalué à 3.
Il faut comprendre le fonctionnement, son jeu de données, c'est internet donc, plus il a d'exemples, mieux ca fonctionne…
# Bientôt le programme politique
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 3.
La presse relate l'aventure d'un politicien fameux ayant fait rédigé un discours par ChatGPT. Il trouve cela fascinant. Pour moi les perspectives seraient plutôt abyssales ici.
— Bientôt les programmes des présidentielles écrit par IA.
— Croire que les gens peuvent être intéressés à vous écouter déblatérer des heures durant sur des sujets dont vous êtes parfaitement ignorant, n'est-ce pas là une gageur ? Les discours écrit par des nègres, soulignaient déjà le peu d'intérêt pour le travail des élites politiques. Mais au moins pouvait-on supputer que les sous-traitants aient été sélectionnés sur la base de leurs convictions plutôt qu'uniquement sur leur capacité à baratiner. Oser passer la vitesse supérieur en choisissant une machine connue pour sa capacité à raconter des âneries, voilà ce que seul un politicien français semble pouvoir oser.
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.