Découvrez un cours complet sur Prolog, le langage de programmation logique. Exemples, exercices et définitions pour Terminale. Idéal pour les lycéens et passionnés d'IA.
Question 1 sur 10 10:00
[{"id":44836,"question":"Quel est le symbole utilisé en Prolog pour séparer les conditions dans une règle ?","option_a":":-","option_b":"=\u003E","option_c":"-\u003E","option_d":"::","option_e":"","option_f":"","bonne_reponse":"A","explication":"En Prolog, le symbole ':-' est utilisé pour introduire les conditions d'une règle. Par exemple, 'frère(X, Y) :- parent(Z, X), parent(Z, Y), X \\= Y.'","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0},{"id":44837,"question":"Un fait en Prolog doit toujours se terminer par un point (.).","option_a":"Vrai","option_b":"Faux","option_c":"","option_d":"","option_e":"","option_f":"","bonne_reponse":"A","explication":"Oui, en Prolog, chaque fait ou règle doit se terminer par un point pour indiquer la fin de la clause.","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0},{"id":44838,"question":"Quelle requête permet de trouver tous les parents d'une personne nommée 'amine' dans une base de connaissances contenant le fait parent(ahmed, amine) ?","option_a":"parent(X, amine).","option_b":"parent(amine, X).","option_c":"X = parent(amine).","option_d":"amine(X, parent).","option_e":"","option_f":"","bonne_reponse":"A","explication":"La requête 'parent(X, amine).' permet de trouver tous les X tels que X est parent d'amine. Ici, X serait 'ahmed'.","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0},{"id":44839,"question":"En Prolog, les variables commencent toujours par une majuscule.","option_a":"Vrai","option_b":"Faux","option_c":"","option_d":"","option_e":"","option_f":"","bonne_reponse":"A","explication":"Oui, en Prolog, les variables doivent commencer par une majuscule ou un underscore (_), tandis que les constantes commencent par une minuscule.","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0},{"id":44840,"question":"Quelle est la syntaxe correcte pour définir un fait indiquant que 'Tunis' est la capitale de la 'Tunisie' ?","option_a":"capitale(tunis, tunisie).","option_b":"Capitale(Tunis, Tunisie).","option_c":"capitale(Tunis, Tunisie).","option_d":"CAPITALE(tunis, tunisie).","option_e":"","option_f":"","bonne_reponse":"C","explication":"La syntaxe correcte est 'capitale(tunis, tunisie).', où les atomes (constantes) commencent par une minuscule.","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0},{"id":44841,"question":"Peut-on utiliser des nombres dans des faits Prolog ?","option_a":"Vrai","option_b":"Faux","option_c":"","option_d":"","option_e":"","option_f":"","bonne_reponse":"A","explication":"Oui, les nombres sont des constantes valides en Prolog et peuvent être utilisés dans des faits ou des règles.","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0},{"id":44842,"question":"Quelle requête permet de vérifier si 'amine' est un parent de 'sami' dans une base contenant le fait parent(amine, sami) ?","option_a":"parent(amine, sami).","option_b":"parent(sami, amine).","option_c":"amine = parent(sami).","option_d":"sami = parent(amine).","option_e":"","option_f":"","bonne_reponse":"A","explication":"La requête 'parent(amine, sami).' vérifie si 'amine' est un parent de 'sami'. Si le fait existe, Prolog répond 'true'.","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0},{"id":44843,"question":"En Prolog, les commentaires sont introduits par le symbole '%'.","option_a":"Vrai","option_b":"Faux","option_c":"","option_d":"","option_e":"","option_f":"","bonne_reponse":"A","explication":"Oui, les commentaires en Prolog commencent par le symbole '%' et s'étendent jusqu'à la fin de la ligne.","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0},{"id":44844,"question":"Quelle règle permet de définir que X est le grand-parent de Z si X est parent de Y et Y est parent de Z ?","option_a":"grand_parent(X, Z) :- parent(X, Y), parent(Y, Z).","option_b":"grand_parent(X, Z) :- parent(Y, X), parent(Z, Y).","option_c":"grand_parent(X, Z) :- parent(X, Z), parent(Z, Y).","option_d":"grand_parent(X, Z) :- X = parent(Y), Y = parent(Z).","option_e":"","option_f":"","bonne_reponse":"A","explication":"La règle correcte est 'grand_parent(X, Z) :- parent(X, Y), parent(Y, Z).', où X est parent de Y, et Y est parent de Z.","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0},{"id":44845,"question":"Quel est l'opérateur utilisé en Prolog pour tester l'égalité entre deux termes ?","option_a":"=","option_b":"==","option_c":"=:=","option_d":"is","option_e":"","option_f":"","bonne_reponse":"B","explication":"L'opérateur '==' teste si deux termes sont identiques, tandis que '=' effectue une unification. Par exemple, 'X = a' unifie X avec 'a', mais 'X == a' échoue si X n'est pas encore instancié.","points":1,"type":"qcm","actif":1,"section_id":null,"ordre":0}]
Chargement...
Cliquez sur une réponse pour valider
Les options de réponse ne sont pas disponibles pour cette question.