π
<-
Chat plein-écran
[^]

Cahier algorithmique 2nde Bordas 2018: retour calculatrices

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude majestyofgaia » 10 Mai 2018, 21:26

parisse a écrit:D'un point de vue algorithmique, je trouve qu'il est bien plus formateur d'utiliser une librairie pixelisee (comme set_pixel sur la Numworks, PIXON sur la Prime, ...) pour faire tracer une courbe.


Ok, mais existe-t-il un équivalent sur Python ?

parisse a écrit:L'utilisation de matplotlib et numpy n'apporte presque rien, on construit les arguments d'une commande qui fait tout le travail, et il y a pas mal de ce que j'appelle "incantations" (les import, le arange, la syntaxe de la liste en comprehension, sans parler de l'installation complementaire).


En fait mon objectif était de me rapprocher un maximum de quelque chose qu'ils connaissaient, en l'occurrence le menu table de leur calculatrice :

1 - le paramétrage du tableau : Start, End, Step correspondent presque exactement aux 3 arguments de arange. La seule différence est que sur Casio, la borne "end" est incluse, alors qu'elle est exclue sur arange.

De plus, la fonction range ne permet pas d'avoir un pas décimal, donc je me suis reporté sur la fonction arange de numpy.

2 - Sur Casio, cela crée une liste de coordonnées de points. Les abscisses sont définies par les paramètres ci-dessus, et les images sont calculées à partir de la formule donnée dans Y1. Là encore, il y a un parallèle important.

3 - Je comprends l'objection sur la compréhension de listes, mais c'est une écriture très intuitive, c'est la raison pour laquelle j'avais tenté le coup.

4 - Quand on appuie sur exe après la création du tableau, on obtient aussitôt un nuage de points dont les coordonnées sont dans le tableau. Lorsqu'on utilise la fonction plot, c'est exactement ce qu'il se passe.

parisse a écrit: Si on veut juste expliquer le principe de discretisation pour tracer une courbe, je pense qu'il vaut bien mieux utiliser plot(exp(x),x=0..4,xstep=0.001) ou l'equivalent sur la calculatrice, ca apporte autant sans risquer de perdre des eleves dans les details des incantations.


Mais ça c'est si l'objectif est de faire le lien entre algorithmique et construction de courbe non ? Donc niveau seconde par exemple. Mais une fois le concept compris, on peut utiliser des fonctions (comme dans mon activité de Ts par exemple) qui tracent directement non ? C'est un peu comme la fonction max. On l'explique une fois, et ensuite on utilise directement la fonction donnée par la distribution.
Avatar de l’utilisateur
majestyofgaiaVIP+
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 75%
 
Messages: 104
Inscription: 17 Nov 2013, 16:20
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude blouson » 11 Mai 2018, 02:38

Tout ça est très intéressant mais c'est du niveau de quel lycée ? Ou alors le niveau des enfants a augmenté d'un seul coup je sais pas , j'ai même vu un bouquin sur amazon " javascript pour les kids ( dès 10 ans ) " :#fou#:
Avatar de l’utilisateur
blouson
Niveau 2: MI2 (Membre Initié)
Niveau 2: MI2 (Membre Initié)
Prochain niv.: 66.7%
 
Messages: 135
Inscription: 16 Fév 2018, 05:37
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude majestyofgaia » 11 Mai 2018, 06:32

Dans la même collection, il y a Python pour les kids, dès 14 ans, et ça va pltôt loin je trouve. Ils parlent même de classes d'objets.

Sinon, au Royaume Uni, il semble qu'ils proposent la programmation dès l'âge de 7 ans (KS3), mais je n'ai pas d'exercices types sous la main pour voir. Par contre, j'ai trouvé un lot de fiches en pdf qui leur est destiné : http://www.codingclub.co.uk/codecards/CC-CodeCards.pdf
Avatar de l’utilisateur
majestyofgaiaVIP+
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 75%
 
Messages: 104
Inscription: 17 Nov 2013, 16:20
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

En ligne

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude parisse » 11 Mai 2018, 07:17

majestyofgaia a écrit:
parisse a écrit:D'un point de vue algorithmique, je trouve qu'il est bien plus formateur d'utiliser une librairie pixelisee (comme set_pixel sur la Numworks, PIXON sur la Prime, ...) pour faire tracer une courbe.


Ok, mais existe-t-il un équivalent sur Python ?

Certainement, par exemple https://en.wikibooks.org/wiki/Python_Imaging_Library/Editing_Pixels

parisse a écrit:L'utilisation de matplotlib et numpy n'apporte presque rien, on construit les arguments d'une commande qui fait tout le travail, et il y a pas mal de ce que j'appelle "incantations" (les import, le arange, la syntaxe de la liste en comprehension, sans parler de l'installation complementaire).


En fait mon objectif était de me rapprocher un maximum de quelque chose qu'ils connaissaient, en l'occurrence le menu table de leur calculatrice :

1 - le paramétrage du tableau : Start, End, Step correspondent presque exactement aux 3 arguments de arange. La seule différence est que sur Casio, la borne "end" est incluse, alors qu'elle est exclue sur arange.
...

C'est exactement ce que j'ai voulu dire par faire tracer une courbe a partir d'une discretisation, et s'il s'agit de faire ca, je ne vois aucun interet a utiliser Python+numpy+matplotlib, car c'est nettement plus complique qu'a la calculatrice (ou avec un logiciel qui le fait avec une commande built-in comme Xcas avec plot(exp(x),x=0..4,xstep=0.001)). Il y a plusieurs instructions purement liees au choix du langage informatique (les import), ou l'utilisation de arange dans numpy pour faire la discretisation parce que range ne le fait pas (ca n'a aucun interet mathematique de savoir pourquoi les concepteurs de Python n'ont pas permis un pas non entier pour range!) et ca n'apporte rien d'un point de vue algorithmique, les eleves ne font pas eux-memes la boucle de discretisation des abscisses. En fait j'ai l'impression que les eleves jouent le role de secretaire assez passivement, j'ai du mal a croire que beaucoup seraient capables de creer cette suite d'instructions par eux-memes ou qu'ils seraient capables de la retrouver quelques semaines plus tard, alors qu'a la calculatrice j'espere bien que si!
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 78%
 
Messages: 3511
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude Bisam » 11 Mai 2018, 08:01

Je pense comme parisse qu'il est plus important de faire comprendre aux élèves que le tracé d'une courbe passe nécessairement par une discrétisation... et du coup de la leur faire étudier, puis "calculer" et enfin la mettre en pratique dans un algorithme.
Il est d'ailleurs assez instructif d'un point de vue algorithmique de transformer une liste de points sous forme de couples (abscisse, ordonnée) en 2 listes d'abscisses et d'ordonnées.

La partie où l'on fait tracer est alors la récompense.

L'intérêt est que l'on puisse également faire tracer autre chose que des fonctions... par exemple des polygones ou même un cercle.
En plus, ça fait le lien avec la notion de trajectoire vue en physique.

Du coup, on utilise "matplotlib" uniquement pour ne pas avoir à créer une routine qui affiche des segments.

Mais je ne veux pas empiéter sur les platebandes du lycée...
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.6%
 
Messages: 5665
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude majestyofgaia » 11 Mai 2018, 08:45

Bisam a écrit:Mais je ne veux pas empiéter sur les platebandes du lycée...


Au contraire ! Dans ma carrière j'ai presque eu plus de formations par des profs de primaire ou collège que de Lycée, donc pour une fois que des enseignants du supérieur me donnent leur avis, j'en profite ! :)

Bisam a écrit:Je pense comme parisse qu'il est plus important de faire comprendre aux élèves que le tracé d'une courbe passe nécessairement par une discrétisation... et du coup de la leur faire étudier, puis "calculer" et enfin la mettre en pratique dans un algorithme.
Il est d'ailleurs assez instructif d'un point de vue algorithmique de transformer une liste de points sous forme de couples (abscisse, ordonnée) en 2 listes d'abscisses et d'ordonnées.

La partie où l'on fait tracer est alors la récompense.


Je vais peut-être paraître insistant, mais c'est peut-être parce que je passe à côté de quelque chose : ce principe là, on peut le voir en seconde non ? Puis sur le long terme, introduire matplotlib sur des listes pour aller plus vite.

Par exemple, en seconde ça pourrait donner ceci :

Code: Tout sélectionner
import matplotlib.pyplot as plt

def f(x):
    return x**2

h = 0.5

a = -4
b = 4

i = a

while i <= 4 :
    plt.plot(i, f(i), linestyle = 'none', marker = 'o', color = 'blue')
    i = i + h
   
plt.savefig("Courbes.png")

plt.show()



Bisam a écrit:L'intérêt est que l'on puisse également faire tracer autre chose que des fonctions... par exemple des polygones ou même un cercle.


Oui je comprends bien, on peut aussi citer la méthode de Monte-Carlo pour une approximation de pi (c'est dans le programme, dans la partie probas continues). Je voulais faire ça sur Python avec mes Ts, et vu le succès très relatif de ma précédente activité sur Python, je leur ai demandé de le faire sur Casio (ils connaissent bien mieux le Casio basic). De plus, pour l'aspect graphique, c'est plus simple et le rendu n'est pas si mal.
Avatar de l’utilisateur
majestyofgaiaVIP+
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 75%
 
Messages: 104
Inscription: 17 Nov 2013, 16:20
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude Bisam » 11 Mai 2018, 09:05

Comme je l'ai laissé entendre, je suis très loin de connaître parfaitement ce qui est demandé et encore moins ce qui est réellement pratiqué au lycée.
Au vu de tes réponses et du temps que tu sembles avoir consacré à la question, tu sais certainement mieux que moi dans quel ordre introduire les différentes notions.

Mes remarques étaient surtout fondées sur ce que j'avais pu constater comme connaissances de mes élèves de Sup (il y a 2 ans et plus) : beaucoup ne savaient même pas qu'une courbe était tracée par des segments. Du coup, beaucoup ne comprenaient pas pourquoi quand ils demandaient à leur calculette le tracé d'une courbe comportant une asymptote verticale, certains voyaient l'asymptote tracée et d'autres non.
Mais si tu dis que c'est déjà fait en seconde maintenant...
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.6%
 
Messages: 5665
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile

En ligne

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude parisse » 11 Mai 2018, 09:19

majestyofgaia a écrit:Je vais peut-être paraître insistant, mais c'est peut-être parce que je passe à côté de quelque chose : ce principe là, on peut le voir en seconde non ? Puis sur le long terme, introduire matplotlib sur des listes pour aller plus vite.

Par exemple, en seconde ça pourrait donner ceci :

Code: Tout sélectionner
import matplotlib.pyplot as plt

def f(x):
    return x**2

h = 0.5

a = -4
b = 4

i = a

while i <= 4 :
    plt.plot(i, f(i), linestyle = 'none', marker = 'o', color = 'blue')
    i = i + h
   
plt.savefig("Courbes.png")

plt.show()


Je trouve que ce script a une philosophie completement differente du precedent, et est bien plus interessant pedagogiquement parlant, il n'introduit que matplotlib (numpy ne sert a rien qu'a utiliser arange dans l'exemple precedent) et ne l'utilise que pour tracer le point (et affichage/export). Le seul petit reproche que je lui fais c'est d'utiliser une boucle while (donc avec initialisation et incrementation en-dehors de la ligne du mot-clef) et pas une boucle for alors qu'on connait le nombre d'iterations a l'avance, mais ca c'est un biais du langage Python et une des raisons pour lesquelles je n'aime pas ce langage. Ensuite, en terminale S, on peut en faire une fonction utilisateur et lui passer la fonction f en argument (ou a la rigueur laisser la variable f en variable globale).
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 78%
 
Messages: 3511
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude majestyofgaia » 11 Mai 2018, 09:58

Bisam a écrit:Mes remarques étaient surtout fondées sur ce que j'avais pu constater comme connaissances de mes élèves de Sup (il y a 2 ans et plus) : beaucoup ne savaient même pas qu'une courbe était tracée par des segments. Du coup, beaucoup ne comprenaient pas pourquoi quand ils demandaient à leur calculette le tracé d'une courbe comportant une asymptote verticale, certains voyaient l'asymptote tracée et d'autres non.
Mais si tu dis que c'est déjà fait en seconde maintenant...


Après on fait avec les élèves et les effectifs que l'on a. J'ai la chance d'avoir de petits effectifs et une salle d'informatique assez souvent disponible et ça doit jouer. Certains anciens élèves, qui viennent parfois nous revoir, nous disent qu'ils ont des camarades avec un bac S qui n'ont jamais réellement fait d'algorithme. Ils en ont recopié un ou deux ou en ont complété un ou deux, sur l'ensemble des 3 ans. Alors certes, il y a probablement de l'exagération des élèves, mais je peux concevoir que tout le monde n'a pas les moyens matériels de faire ce qui est demandé.

Par rapport au programme de seconde, voici les éléments qui me conduisent à en parler :

"Il s’agit également d’apprendre aux élèves à distinguer la courbe représentative d’une fonction des
dessins obtenus avec un traceur de courbe ou comme représentation de quelques données."

et dans les commentaires :

"Même si les logiciels traceurs de courbes permettent d’obtenir rapidement la représentation graphique d’une fonction définie par une formule algébrique, il est intéressant, notamment pour les fonctions définies par morceaux, de faire écrire aux élèves un algorithme de tracé de courbe."

Après je reconnais que j'approfondis pas plus que ça le sujet, et j'y serai plus vigilent dorénavant.

parisse a écrit:Je trouve que ce script a une philosophie completement differente du precedent, et est bien plus interessant pedagogiquement parlant, il n'introduit que matplotlib (numpy ne sert a rien qu'a utiliser arange dans l'exemple precedent) et ne l'utilise que pour tracer le point (et affichage/export). Le seul petit reproche que je lui fais c'est d'utiliser une boucle while (donc avec initialisation et incrementation en-dehors de la ligne du mot-clef) et pas une boucle for alors qu'on connait le nombre d'iterations a l'avance, mais ca c'est un biais du langage Python et une des raisons pour lesquelles je n'aime pas ce langage. Ensuite, en terminale S, on peut en faire une fonction utilisateur et lui passer la fonction f en argument (ou a la rigueur laisser la variable f en variable globale).


J'en prends bonne note. Je peux privilégier ce type d'algorithme sans trop de soucis. Mais sinon je n'avais pas réfléchi : le nombre d'itérations on l'a : (b-a)/h donne le nombre de sous-intervalles donc il suffit de créer le premier point, puis de lancer une boucle for avec int((b-a)/h) itérations. Je mets int à cause de range qui n'accepte que le type entier (et je suppose que mathématiquement, (b-a)/h est bien un entier, c'est généralement le cas dans les exercices du lycée).
Avatar de l’utilisateur
majestyofgaiaVIP+
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 75%
 
Messages: 104
Inscription: 17 Nov 2013, 16:20
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: Cahier algorithmique 2nde Bordas 2018: retour calculatri

Message non lude majestyofgaia » 11 Mai 2018, 20:55

A surveiller : http://www.editions-ellipses.fr/product_info.php?products_id=12701

Il y aura peut-être des pistes intéressantes à exploiter.
Avatar de l’utilisateur
majestyofgaiaVIP+
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 75%
 
Messages: 104
Inscription: 17 Nov 2013, 16:20
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

PrécédenteSuivante

Retourner vers News Divers

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 66 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1069 utilisateurs:
>1020 invités
>44 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)