• [^] # Re: Super projet

    Posté par (site web personnel, Mastodon) . En réponse à la dépêche Une calculatrice scientifique libre sous Linux (materiel). Évalué à 4. Dernière modification le 16 octobre 2014 à 15:01.

    en quoi le basic est plus simple à utiliser que le python

    Ok, un exemple. Je veux un programme tout con, qui demande une valeur A, et exécute 2x√3xA2 et affiche le résultat (2 fois racine carré de 3, fois A au carré)

    Voyons comment faire ça par exemple avec le langage de cette bonne vieille Casio 8500G, langage qui est encore plus primitif que le Basic (mais on arrive à faire quelques trucs avec comme un puissance 4 etc).

    Le programe, le voici :

     ?→A:2x√3xA2◢
    

    Et... c'est tout. En python (que je ne maitrise pas beaucoup), je doute que ça prenne aussi peu de place, que ce soit aussi simple à écrire. L'utilisateur ici a juste à apprendre l'instruction "?→" pour savoir comment demander une valeur et la stocker dans une variable. Et comment afficher le résultat d'une formule: "◢". Et pour exécuter la formule, ben il a juste à la taper directement comme il le ferait sans programme, comme il a l'habitude de faire avec sa calculatrice...

    Une condition ?

     ?→A:A>0⇒2x√3xA2◢"erreur"
    

    (si A >0, on exécute la formule sinon on affiche "erreur")
    Bon je reconnais que c'est assez cryptique quand on est habitué aux langages moderne. Mais là encore, si on a lu une fois le manuel, ça reste très simple.

    Comme je te sens sceptique, même exemple, mais avec un autre langage de calculatrice que je connaissais très bien : le RPN (hp48 powwa), et qui est beaucoup plus évolué mais qui reste "simple" par rapport à python par exemple (sans contrainte d'indentation et autre).

     << "Saisissez A" PROMPT → A
     '2*√3*A^2' →NUM
     >>
    

    Et avec une condition :

     << "Saisissez A" PROMPT → A
     << IF 'A>0' THEN
     '2*√3*A^2' →NUM
     ELSE
     "ERREUR" 0 DISP WAIT
     END 
     >>
     >>
    

    ou en "pure" RPL, sans notation algébrique

     << "Saisissez A" PROMPT → A
     << IF A 0 > THEN
     2 3 √ * A SQ *
     ELSE
     "ERREUR" 0 DISP WAIT
     END 
     >>
     >>
    

    L'équivalent en python, ça donne quoi ? (vraie question)