Xcas

Bonjour, un peu desoeuvré depuis l'obtention de l'agreg interne, je commence à regarder comment utiliser les logiciels qui étaient disponibles pour les oraux (ce que je n'ai pas vraiment eu le temps de faire pendant ma préparation), notamment Xcas. J'enseigne actuellement en collège, mais je me dis que ça ne peut pas me faire de mal. Hormis Geogebra et quelques trucs basiques sur tableur, mes connaissances sont très limitées... Est-ce vraiment utile de savoir manier ce genre de logiciels ? Si oui, lesquels me conseilleriez-vous ? Pour quelle utilisation ? J'utilisais Maple en prépa mais ça commence à dater...
Merci

Réponses

  • Bonjour
    Je te conseillerai Algobox qui est très bien pour que les élèves comprennent la structure d'un algorithme. La programmation sur calculatrice est en général plus facile après (et la calculatrice, ils l'emmènent partout, surtout le jour du bac). Enfin, je te dis ça, mon expérience est limitée puis que je suis moi aussi au collège mais j'ai quand même eu une seconde récemment et c'est ce que m'avait conseillé les collègues (je suis en fait dans un établissement collège/lycée). Moi aussi, après toute cette année de travail mathématique intense pour décrocher l'agrég, je trouve ça bizarre ... pour ma part je lis des livres sur l'histoire des maths... Bonne soirée
  • Ceux qui sont aujourd'hui au collège passeront le bac avec des calculatrices en "mode examen" donc sans appel possibles aux programmes. Dommage pour ce point, ils vont perdre une motivation d'apprendre à programmer.
    http://www.clubic.com/mag/lifestyle/actualite-765828-calculatrice-mode-examen-fin-antiseche.html
    Je ne trouve plus les liens vers les sites officiels.

    Sinon, seul avantage/inconvénient de XCAS au collège, c'est de montrer ce qu'on nous a toujours dit : Il faut bien comprendre le principe de ce que l'on vous aprend car pour la mise en pratique, un ordinateur ira toujours plus vite que vous.

    Avantage : je mets au défi quiconque de résoudre un système de 20 équations linéraires à 20 inconnues plus vite que XCAS. Idem pour calculer un pgcd de nombres à plusieurs centaines de chiffres, ...

    Inconvénient : Certains élèves vont interpréter la phrase comme "pas la peine d'apprendre, l'ordi sait le faire ...".

    A part cela, je ne vois pas grand chose surtout que le programme de mathématiques du collège ne demande pas des calculs nécessitant XCAS. Et d'un autre côté, il y a des programmes (comme algobox) plus simples à présenter à des collégiens, plus facile à apprendre en main et dont l'interface est plus sympa.
  • Ok merci pour vous réponses. J'irai jeter un oeil sur algobox.
  • Je déteste Algobox, qui utilise une structure complètement fermée avec des fichiers binaires.
    Je préfère encore utiliser XCas.
    Algebraic symbols are used when you do not know what you are talking about.
            -- Schnoebelen, Philippe
  • Tu préfères utiliser XCas plutôt que Algobox? Ce sont deux logiciels qui n'ont absolument pas la même utilité, et donc je vois mal comment on peut en préférer l'un à l'autre.

    - XCas est un logiciel de calcul formel (assez spartiate, mais il fait le job)
    - Algobox est un logiciel pédagogique d'initiation à l'algorithmique (plutôt bien fichu d'ailleurs je trouve)
  • Je sais, mais je n’aime pas non plus XCas et pas du tout pour la même raison.
    Je trouve que l’interface de XCas est très mal fichue même si le logiciel derrière m’a l’air très bien.
    Algobox prétend simplifier l’algorithmique au prix de contorsions pénibles (types simplistes, opérations pénibles, pas de fonctions aux dernières nouvelles, sauvegardes dans un format binaire…), autant faire du BASIC.
    Algebraic symbols are used when you do not know what you are talking about.
            -- Schnoebelen, Philippe
  • nicolas.patrois écrivait:
    > Algobox prétend simplifier l’algorithmique au
    > prix de contorsions pénibles (types simplistes,
    > opérations pénibles, pas de fonctions aux
    > dernières nouvelles, sauvegardes dans un format
    > binaire…), autant faire du BASIC.

    Je suis d'accord que les limites d'algobox sont vite atteintes, mais au collège, ça laisse de la marge.

    Après je ne veux pas reprendre le troll d'un autre post, mais il vaut mieux faire du python ;)
  • On est bien d’accord, mais avec des élèves de lycée, Python me semble hors de portée.
    Algebraic symbols are used when you do not know what you are talking about.
            -- Schnoebelen, Philippe
  • Dommage qu'Xcas ait cette interface si peu attrayante, avec en prime quelques bugs d'affichage (mais c'est gratuit).
    Maple est plus stable et son interface mieux finie (mais c'est payant).
  • Bonsoir,

    XCas est évidemment bien plus qu'un logiciel de calcul formel.
    Il n'est peut-être pas aussi joli en apparence que d'autres logiciels, mais il est très puissant : on peut s'en servir de logiciel de géométrie dynamique, de tableur, et on peut même programmer de façon très simple (la syntaxe est assez libre et on peut même écrire en français de façon assez naturelle).
    On peut bien sûr se servir de ces fonctionnalités conjointement (on peut faire le même genre de choses dans Geogebra).
    Bref, XCas est un véritable couteau-suisse pour un mathématicien ou un enseignant.
    J'ai jadis suivi une formation du PAF en région parisienne dans laquelle on nous en avait fait une introduction.
  • @Philippe M.

    Bonsoir,

    Je n'ai rien contre XCAS, je m'en sers beaucoup, c'est d'ailleurs le seul logiciel de calcul formel sur ma machine.
    Je lui trouve beaucoup de qualités !

    Mais concernant la question de ce post, "que peut apporter XCAS à un cours de math niveau collège ?"
    Personnellement, je trouve que son interface graphiqe est hors d'accès d'un collégien.

    Après au lycée, c'est un autre contexte.

  • Avec Mathematica, pour le calcul formel il n'y a, hélas, rien de mieux me semble-t-il.
    J'aime bien Maxima. B-)-
  • Salut wkmx31, en fait ma remarque faisait suite au dernier message de Tryss et je suis tout à fait d'accord avec toi.
    Maintenant je me demande si Raskolnikov cherche un logiciel pour l'utiliser avec les élèves ou pour une autre utilisation.
    Si l'on se réfère aux projets de programme pour la rentrée 2016 et qu'on suppose qu'ils seront appliqués par tous, il faudra parler de programmation au collège, et dans ce cas la question de savoir utiliser tel ou tel logiciel de programmation sera importante.
    Pour ma part, je suis déjà convaincu par l'utilisation de Python au collège.
    D'ailleurs Python peut être utile pour écrire simplement quelques applications interactives à utiliser face aux élèves.
    En voici une que j'ai écrite il y a quelques mois quand j'ai débuté en Python et qui m'a permis de faire une tâche que je faisais oralement depuis des années au collège : http://www.codeskulptor.org/#user40_GSSuvGls6PFBDdZ.py
    (Il suffit de cliquer sur Lecture en haut à gauche pour lancer le programme).
    Je me suis servi aussi de Python pour taper rapidement de petits programmes pour illustrer des simulations en seconde (des millions de lancers plutôt qu'une centaine sur la calculatrice, c'est quand même plus amusant pour aborder la notion de fluctuation d'échantillonage), en première STMG pour tracer des courbes dans le chapitre sur la loi binomiale, etc.
  • Philippe:
    On fait comment pour répondre aux calculs posés? :-D (j'ai testé ton truc en Python)
  • Ben on répond sur la feuille qui est collée dans le cahier d'exercices ! :-D
    Ce programme est destiné a être projeté par le prof au tableau.
    J'aime bien faire ça en début d'heure, dès les premières minutes : les élèves sont obligés de se concentrer et sont silencieux.
    On peut en profiter pour faire autre chose (du genre se préparer à la confrontation qui va se produire dans les trois minutes qui viennent).
  • Merci pour vos réponses. Est-ce simple d'apprendre seul à programmer sur Python ?
  • Salut Raskolnikov,

    Pour ma part, j'ai appris Python en suivant ce cours en ligne, qui reprend le 22 mai : https://www.coursera.org/course/interactivepython1
    J'ai trouvé ce cours facile et amusant.
  • Pour ceux qui ne sont pas a l'aise avec l'interface de Xcas, il existe des alternatives pour utiliser le moteur de calcul formel Giac, par exemple Qcas en natif, ou Smartcas une jolie calculatrice formelle dans votre navigateur, ou Xcas en ligne... qui sont considerees comme plus faciles a prendre en main (souvent au prix d'une perte d'une partie des fonctionnalites). Giac tourne aussi sur calculatrices (HP Prime et TI Nspire), et il y a des applis pour tablettes.
  • @Raskolnikov : Python est connu pour être un langage facile à apprendre.

    Par contre utilise un environnement de développement adéquat car avec un éditeur de texte normal, il est facile de faire une indentation du code mêlant les tabulations et les espaces. Et ça Python n'aime pas du tout ! Et tout débutant a passé du temps sur un problème de ce style ...

    Sous Windows, il existe une version portable de python qui tourne sur clé USB :
    http://portablepython.com/

    Et si je me souviens bien, c'est fourni avec PyScripter qui est pas mal comme environnement de dev.
  • Encore merci, je vais regarder tout ça!
  • C'est bien pour ca que contrairement a Python, Xcas utilise des delimiteurs de fin de bloc explicites. C'est beaucoup plus robuste, vous pouvez echanger des petits programmes Xcas sans avoir a craindre que des tabulations/espaces manges ne les rende inutilisables.
  • La question serait plutôt : pourquoi contrairement à tous les autres langages Python à utilisé ce système ?
    C'est vrai que ça fait plus propre mais dans ce cas là pourquoi accepter l'utilisation de tabulation ou d'espaces. N'accepter que l'un de deux aurait peut être été plus judicieux.
  • Une hypothese est que Python force l'indentation pour rendre apparent la structure des tests/boucles. J'ai plutot le sentiment qu'un delimiteur explicite de fin de structure est plus facile pour un debutant, surtout s'il distingue la structure comme fsi, ftantque, fpour en Xcas en syntaxe de programmation en francais (donc pas comme } en C).
  • Moi j'aimais bien le "begin" "end" du Pascal.

    Peut-être par pure notalgie car c'est avec ce langage que j'ai débuté la vraie programmation ...
  • Bon je vais m'entraîner sur Xcas et aussi tenter de programmer un peu sur Python. ça pourra toujours me servir si je demande un lycée dans les années à venir. J'ai téléchargé la version portable de Python avec Pyscripter. Je regarde "Apprendre à programmer en Python" de Gérard Swinnen. Je vais essayer d'en faire un petit peu tous les jours, en espérant que je vais progresser. J'ai déjà du mal à comprendre ce qui distingue les deux fenêtres (éditeur/interpréteur).
  • Bonjour,

    Je ne connais pas Pyscripter, j'utilise Pyzo qui me satisfait parfaitement.
    Mais le principe des deux fenêtres est le même.
    Il y a une fenêtre de commandes où on peut taper des choses en mode immédiat et voir ce que ça fait, mais c'est oublié et perdu à la fermeture du logiciel.
    Il y a un éditeur où on tape les programmes qu'on souhaite conserver pour réutilisation future.
    C'est le même principe en Matlab, Octave, Scilab entre autres.

    Cordialement,

    Rescassol
  • Ok merci !
  • Dans Xcas, en sauvegardant votre session vous sauvegardez a la fois les programmes et les lignes de commandes. Pour creer un programme, utilisez le menu Prg>Nouveau Programme, cela ouvre un assistant pour creer une fonction. Il y a aussi un assistant pour creer un test ou une boucle.
    Si votre programme s'interprete mais ne marche pas, vous pouvez le mettre au point avec debug().
  • En gros, je pourrais me contenter (à mon niveau tout du moins) d'utiliser Xcas et laisser tomber Python ?
  • Peut-on calculer une puissance "élevée" d'une matrice avec Xcas comme ^6 ou ^10!?

    Merci
  • Oui,

    et en valeur exacte. Le calcul formel est fait pour ça. Après, si les coefficients ont 35 chiffres, c'est ton problème.

    Cordialement.
  • Il faut quand meme etre patient pour 10^6; par exemple a:=1,2],[3,4; time(b:=a^(10^6)); met 3 secondes, le resultat a 730158 chiffres.
    On peut aussi avoir le resultat de facon quasi-immediate par reduction de Jordan avec matpow,
    matpow(a,10^6)
    mais il est exprime avec les valeurs propres qui ne sont pas entieres.
  • C'est déjà impressionnant d'y arriver en 3 secondes en calculant sur des entiers et donc en conservant l'exactitude du résultat !

    Effectuer des calculs avec des entiers de telles tailles sur des accumulateurs de 32 ou 64 bits demandent un sacré boulot !

    D'ailleurs pour ce genre de calculs, voit-on une grosse différence entre le 32 et 64 bits ?
  • En testant sur deux machines virtuelles, une 32 bits et une 64 bits sur le meme hote, j'ai un rapport de 10. Je ne sais pas si les timings sont tres fiable, c'est quand meme un gros rapport. L'essentiel du travail est fait par la multiplication entier multi-precision * entier court et addition entiers multi-precision par GMP, il faudrait regarder leurs benchmarks.
  • merci; que signifie cette expression "time(b:=a^(10^6))"

    B est (je présume) la matrice égale à A^6 mais je ne vois le lien avec time (=temps?)?

    Merci
  • Je pense que ça sert à calculer le temps nécessaire à la production du résultat.
    Algebraic symbols are used when you do not know what you are talking about.
            -- Schnoebelen, Philippe
  • oui, cela permet de calculer le temps necessaire et de pouvoir utiliser le resultat du calcul.
  • J'ai pas mal des problèmes sur ma machine en ce moment, mais rien de grave et comme je bosse le CAPES. Je ne changerait rien avant Juillet.
    Résultat, j'utilise une distribution Linux 32 bits et j'ai la même distribution en 64 bits sur une partition (en test).

    J'ai donc installé XCAS sur la "64 bits" et voici mes résultats :
    a:=1,2],[3,4; time(b:=a^(10^6));

    32 bits : Temps mis pour l'évaluation: 26.96
    64 bits : Temps mis pour l'évaluation: 6.96

    J'en déduis que tu dois avoir une sacré machine pour obtenir les temps que tu indiques dans une machine virtuelle.
    Et que effectivement, XCAS aime bien le 64 bits, c'est logique on est à 100% là où ça a un intérêt ...
  • Je pense que la taille du cache doit expliquer la difference de performance entre nos 2 machines, le processeur n'est pas hyper rapide.
  • @Raskolnikov
    Maintenant qu'ils vont mettre de l'algo au collège, ce serait peut être plus intéressant pour toi de te mettre à AlgoBox.
    Mais tu veux forcément rester en collège ? Une façon de "se renouveler" c'est aussi de changer de public.
  • Bonjour, je ne souhaite pas nécessairement rester en collège. Je m'étais donné plusieurs années pour obtenir l'agreg interne et c'est arrivé plus vite que prévu. Tant mieux. Du coup, je bosse (sans insister sur les démonstrations ni me prendre la tête des heures quand je ne comprends pas) les notions qui m'intéressent (comme les proba) et essaye de me mettre à la programmation (car mon niveau est proche de zéro dans ce domaine). J'ai en effet un peu de mal (après avoir bossé en moyenne une heure par jour pendant deux ans) à décrocher de ce travail quotidien, alors que je pourrais souffler et profiter de ce temps libre.
  • Bonjour, je m'essaye à Python depuis deux semaines. Je suis un novice en matière de programmation, mais j'avoue que j'y prends goût. Je me demande s'il est possible pour un enseignant débutant dans ce domaine de monter un projet en collège (une heure semaine) autour de Python. Auriez-vous des références en matière de programmation sur Python niveau collège à me conseiller ? Des projets "clé en main" sont-ils accessibles sur internet ? Est-ce déraisonnable voire présomptueux de ma part, dans la mesure où je débute et que je dois proposer rapidement ce projet et ses grandes lignes afin qu'il puisse être mis en place dès la rentrée prochaine ? Merci d'avance
  • Tu peux feuilleter le livre Python pour les kids, tu devrais trouver quelques idées même si le livre tape un peu haut pour des collégiens.
    Algebraic symbols are used when you do not know what you are talking about.
            -- Schnoebelen, Philippe
  • Merci, je vais passer chez Gibert. Sinon, j'ai vu ce lien, mais ça n'est pas très détaillé.
    http://eduscol.education.fr/experitheque/fiches/fiche9706.pdf
  • Vous devriez ouvrir un autre topic, la on est hors sujet...
Connectez-vous ou Inscrivez-vous pour répondre.