Feat(2nd): Bilan pour la 2nd1 sur le tri

This commit is contained in:
Bertrand Benjamin 2018-09-24 14:21:45 +02:00
parent 73760fff6b
commit 5ec73e0097
6 changed files with 144 additions and 5 deletions

Binary file not shown.

View File

@ -0,0 +1,96 @@
\documentclass[a4paper,10pt, landscape]{classCours}
\usepackage{listings}
\definecolor{darkWhite}{rgb}{0.94,0.94,0.94}
\lstset{
aboveskip=1mm,
belowskip=-1mm,
backgroundcolor=\color{darkWhite},
basicstyle=\footnotesize,
breakatwhitespace=false,
breaklines=true,
captionpos=b,
commentstyle=\color{red},
deletekeywords={...},
escapeinside={\%*}{*)},
extendedchars=true,
framexleftmargin=16pt,
framextopmargin=3pt,
framexbottommargin=3pt,
frame=tb,
keepspaces=true,
keywordstyle=\color{blue},
language=Python,
literate=
{²}{{\textsuperscript{2}}}1
{}{{\textsuperscript{4}}}1
{}{{\textsuperscript{6}}}1
{}{{\textsuperscript{8}}}1
{}{{\euro{}}}1
{é}{{\'e}}1
{è}{{\`{e}}}1
{ê}{{\^{e}}}1
{ë}{{{e}}}1
{É}{{\'{E}}}1
{Ê}{{\^{E}}}1
{û}{{\^{u}}}1
{ù}{{\`{u}}}1
{â}{{\^{a}}}1
{à}{{\`{a}}}1
{á}{{\'{a}}}1
{ã}{{\~{a}}}1
{Á}{{\'{A}}}1
{Â}{{\^{A}}}1
{Ã}{{\~{A}}}1
{ç}{{\c{c}}}1
{Ç}{{\c{C}}}1
{õ}{{\~{o}}}1
{ó}{{\'{o}}}1
{ô}{{\^{o}}}1
{Õ}{{\~{O}}}1
{Ó}{{\'{O}}}1
{Ô}{{\^{O}}}1
{î}{{\^{i}}}1
{Î}{{\^{I}}}1
{í}{{\'{i}}}1
{Í}{{\~{Í}}}1,
morekeywords={*,...},
numbers=left,
numbersep=10pt,
numberstyle=\tiny\color{black},
rulecolor=\color{black},
showspaces=false,
showstringspaces=false,
showtabs=false,
stepnumber=1,
stringstyle=\color{gray},
tabsize=4,
title=\lstname,
}
\pagestyle{empty}
\geometry{left=10mm,right=10mm, top=7mm, bottom=7mm}
\author{}
\title{}
\date{}
\begin{document}
\begin{minipage}{0.5\textwidth}
\begin{center}
{\Large
\textbf{Tri par Maximum}
}
\end{center}
\includegraphics[height=500pt, width=370pt, keepaspectratio]{./fig/2nd1_max_diagramme}
\end{minipage}
\begin{minipage}{0.5\textwidth}
\lstinputlisting[language=Python]{tri_max.py}
\includegraphics[height=280pt, width=390pt, keepaspectratio]{./fig/2nd1_max}
\end{minipage}
\hfill
\end{document}

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 KiB

View File

@ -107,18 +107,23 @@ Productions d'élèves
+---------+---+---+---+---+---+
| Classes | 1 | 2 | 3 | 4 | 6 |
+=========+===+===+===+===+===+
| Symétrique foireux | | 3 | 3 | 3 | 3 |
| Symétrique foireux | 3 | 3 | 3 | 3 | 3 |
+---------+---+---+---+---+---+
| Min/max | | 2 | 2 | 2 | 4 |
| Min/max | 3 | 2 | 2 | 2 | 4 |
+---------+---+---+---+---+---+
| Bulles | | 1 | 2 | 2 | 1 |
| Bulles | 0 | 1 | 2 | 2 | 1 |
+---------+---+---+---+---+---+
| Bulles amélioré | | 0 | 0 | 0 | 0 |
| Bulles amélioré | 0 | 0 | 0 | 0 | 0 |
+---------+---+---+---+---+---+
| Insertion | | 0 | 1 | 0 | 0 |
| Insertion | 1 | 0 | 1 | 0 | 0 |
+---------+---+---+---+---+---+
Ce que j'appelle symétrique foireux est le tri où les élèves cherchent à faire 2 tas (les grandes les petites) en comparant les couples de cartes puis de bricoler une méthode pour joindre les tas. Ils y arrivent pour 4 cartes, parfois 6. Un groupe a trouvé une astuce pour 5, en imaginant une carte supplémentaire. Ceux qui ont réussi à faire quelque chose qui marche on, après avoir fait des tas, réalisé un tri à bulles.
En passant voir les élèves, un groupe avait réussi à trouver une version amélioré du tri à bulles. Malheureusement, aucun écrit n'a réussi à décrire cette méthode.
Bilans proposés avec les productions d'élèves:
- `2nd1 <./B_2nd_1.pdf>`_
- `2nd2 <./B_2nd_2.pdf>`_
- `2nd3 <./B_2nd_3.pdf>`_
- `2nd4 <./B_2nd_4.pdf>`_

View File

@ -0,0 +1,38 @@
##### Initialisation
# la zone pioche
pioche = [101011, 110111, 100111, 101010, 101100]
# la zone défausse
defausse = []
# la zone triée
triees = []
##### Tri
# tant qu'il reste des nombres dans cartes
# len compte les éléments d'une liste
while len(pioche) > 0:
# Tant qu'il y a des cartes dans la pioche
# On prend la première carte grâce au .pop()
carte_max = pioche.pop()
# On va la comparer avec toutes les autres
while len(pioche) > 0:
# On prend une autre carte
carte = pioche.pop()
if carte_max > carte:
# Si elle est plus petit, on l'ajoute dans la defausse
defausse.append(carte)
else:
# Sinon c'est l'autre qu'on defausse
defausse.append(carte_max)
# et on garde la carte tirée dans la main
carte_max = carte
# On ajoute la carte max dans les cartes triées
triees.append(carte_max)
# La defausse redevient la pioche
pioche = defausse
# On vide la defausse
defausse = []
##### Fin
# On affiche les cartes triées
print(triees)