Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions fonctions/fig-fonctions-cours-1.tikz
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
\node[right] at (1,-1.5) {\texttt{...}};
\node[right] (F) at (1,-2) {\texttt{return}};

\draw[<-,>=latex,ultra thick, red] (A.north) to[bend left] (7,3) node[right] {mot reserv\'e "\texttt{def}"};
\draw[<-,>=latex,ultra thick, red] (A.north) to[bend left] (7,3) node[right] {mot r\'eserv\'e "\texttt{def}"};
\draw[<-,>=latex,ultra thick, red] (B.north) to[bend left] (7,2.2) node[right] {nom bien choisi};
\draw[<-,>=latex,ultra thick, red] (C.north) to[bend left] (7,1.4) node[right] {parenth\`eses};
\draw[<-,>=latex,ultra thick, red] (D.north) to[bend left] (7,0.6) node[right] {deux points};
Expand All @@ -21,4 +21,4 @@

\draw[<-,>=latex,ultra thick, red] (F.south) to[bend right] (7,-2.5) node[right] {fin de la fonction};

\end{tikzpicture}
\end{tikzpicture}
24 changes: 17 additions & 7 deletions guide/guide-python.tex
Original file line number Diff line number Diff line change
Expand Up @@ -81,13 +81,23 @@ \subsection{Définition d'une fonction}
%---------------------------------------------------
\subsection{Fonction avec un paramètre}

\phmnote{Proposition d'introduire ici les paramètres : un ou
plusieurs paramètres. C'est la notion de paramètre qui importe, pas
le nombre de paramètres.}

\mybox{
\myfigure{0.7}{
\tikzinput{../fonctions/fig-fonctions-cours-2}
} }
%---------------------------------------------------
\subsection{Fonction avec plusieurs paramètres}

\phmnote{Proposition de mentionner ici les autres caractéristiques
\og avancées\fg{} des fonctions : documentation, instruction
\ci{return}, renvoyer plusieurs valeurs. (Mais pas le fait qu'une
fonction puisse admettre plusieurs paramètres.) Ajouter un exemple
d'utilisation d'une fonction renvoyant plusieurs valeurs.}

\mybox{
\myfigure{0.7}{
\tikzinput{../fonctions/fig-fonctions-cours-3}
Expand Down Expand Up @@ -136,7 +146,7 @@ \subsection{Variable locale}
\begin{itemize}
\item Bien évidemment \ci{ma_fonction(3)} renvoie \ci{4}.

\item Si je pose \ci{y = 5} alors \ci{ma_fonction(y)} renvoie \ci{6}. Mais attention, la valeur de \ci{y} n'a pas changé, elle vaut toujours \ci{5}.
\item Si la valeur de \ci{y} est \ci{5}, alors \ci{ma_fonction(y)} renvoie \ci{6}. Mais attention, la valeur de \ci{y} n'a pas changé, elle vaut toujours \ci{5}.

\item Voici la situation problématique qu'il faut bien comprendre :
\begin{center}
Expand Down Expand Up @@ -164,7 +174,7 @@ \subsection{Variable locale}
\defi{variables locales}.
Elles n'existent pas en dehors de la fonction.

\item S'il existe une variable dans une fonction qui porte le même nom qu'une variable dans le programme (comme le \ci{x} dans l'exemple ci-dessus), c'est comme si il y avait deux variables distinctes ; la variable locale n'existant que dans la fonction.
\item Si une variable dans une fonction porte le même nom qu'une variable dans le programme (comme le \ci{x} dans l'exemple ci-dessus), il y a deux variables distinctes ; la variable locale n'existant que dans la fonction.

\end{itemize}

Expand Down Expand Up @@ -229,7 +239,7 @@ \subsection{Arguments optionnels}
\section{Modules}

%---------------------------------------------------
\subsection{Utilisé un module}
\subsection{Utiliser un module}

\begin{itemize}
\item \ci{from math import *} \quad Importe toutes les fonctions du module \ci{math}. Pour pouvoir utiliser par exemple la fonction sinus par \ci{sin(0)}. C'est la méthode la plus simple et c'est celle que nous utilisons dans ce livre.
Expand Down Expand Up @@ -327,7 +337,7 @@ \subsection{Erreurs de nom}

\begin{itemize}

\item \ci{if y != 0: y = y - 1} \quad \Python{} renvoie le message \emph{NameError: name 'y' is not defined} si la variable \ci{y} n'a pas encore de valeur.
\item \ci{if y != 0: y = y - 1} \quad \Python{} renvoie le message \emph{NameError: name 'y' is not defined} si la variable \ci{y} n'a pas encore été définie.

\item Cette erreur peut aussi se produire si les minuscules/majuscules ne pas scrupuleusement respectées.
\ci{variable}, \ci{Variable} et \ci{VARIABLE} sont trois noms de variables différents.
Expand Down Expand Up @@ -368,13 +378,13 @@ \subsection{Exercice}
%---------------------------------------------------
\subsection{Autres problèmes}

Le programme se lance mais s’interrompt en court de route ou bien ne fait ce que tu veux ? C'est là que les ennuis commencent, il faut décafardiser le code ! Il n'y a pas de solutions générales mais seulement quelques conseils :
Le programme se lance mais s’interrompt en court de route ou bien ne fait pas ce que tu veux ? C'est là que les ennuis commencent, il faut décafardiser le code ! Il n'y a pas de solutions générales mais seulement quelques conseils :
\begin{itemize}
\item Un code propre, bien structuré, bien commenté, avec des noms de variables et de fonctions bien choisis est plus facile à relire.

\item Teste ton algorithme à la main avec papier/crayon pour les cas faciles.
\item Teste ton algorithme à la main avec papier/crayon p our les cas faciles.

\item N'hésite pas à afficher les valeurs des variables, pour voir leur évolution au cours du temps. Par exemple \ci{print(i,liste[i])} dans une boucle.
\item N'hésite pas à afficher les valeurs des variables, pour voir leur évolution au cours du temps. Par exemple \ci{print(i,liste[i])} dans une boucle. \phmnote{Ce n'est pas une bonne pratique. L'usage d'un dévermineur permettant de visualiser les valeurs associées aux variables et l'exécution pas à pas est à conseiller.}

\item Est-ce que le programme fonctionne avec certaines valeurs et pas d'autres ? As-tu pensé aux cas extrêmes ? Est-ce que $n$ est nul alors que ce n'est pas autorisé ? Est-ce que la liste est vide, alors que le programme ne gère pas ce cas ? etc.
\end{itemize}
Expand Down
6 changes: 3 additions & 3 deletions sialors/fig-sialors-cours-1.tikz
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,15 @@
\node[right] at (1,-2.1) {\texttt{...}};
\node[right] (F) at (0,-2.8) {\texttt{instructions suivantes}};

\draw[<-,>=latex,ultra thick, red] (A.north) to[bend left] (9,3) node[right] {mot reserv\'e "\texttt{if}"};
\draw[<-,>=latex,ultra thick, red] (A.north) to[bend left] (9,3) node[right] {mot r\'eserv\'e "\texttt{if}"};
\draw[<-,>=latex,ultra thick, red] (B.north) to[bend left] (9,2) node[right] {une condition};
\draw[<-,>=latex,ultra thick, red] (C.north) to[bend left] (9,1) node[right] {deux points};

\draw[|-|,ultra thick, red] (5.5,-0.3)--++(0,-2.1);
\draw[ultra thick, red] (5.5,-1.2) to[bend right] (10,-0.5) node[right] {bloc d'instructions indent\'e};
\node[right,red] at (10,-1.25) {sera \'ex\'ecut\'e uniquement};
\node[right,red] at (10,-1.25) {sera ex\'ecut\'e uniquement};
\node[right,red] at (10,-1.9) {si la condition est v\'erifi\'ee};

\draw[<-,>=latex,ultra thick, red] (F.east) to[bend left] (9,-3.2) node[right] {suite du programme};

\end{tikzpicture}
\end{tikzpicture}
6 changes: 3 additions & 3 deletions sialors/fig-sialors-cours-2.tikz
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,13 @@


\draw[|-|,ultra thick, red] (5.5,-0.3)--++(0,-2.1);
\draw[ultra thick, red] (5.5,-1.2) to[bend right] (10,-0.5) node[right] {bloc \'ex\'ecut\'e};
\draw[ultra thick, red] (5.5,-1.2) to[bend right] (10,-0.5) node[right] {bloc ex\'ecut\'e};
\node[right,red] at (10,-1.3) {si la condition est v\'erifi\'ee};


\draw[|-|,ultra thick, red] (5.5,-3.1)--++(0,-1.5);

\draw[ultra thick, red] (5.5,-3.9) to[bend right] (10,-3.5) node[right] {bloc \'ex\'ecut\'e};
\draw[ultra thick, red] (5.5,-3.9) to[bend right] (10,-3.5) node[right] {bloc ex\'ecut\'e};
\node[right,red] at (10,-4.3) {si la condition n'est pas v\'erifi\'ee};

% \draw[<-,>=latex,ultra thick, red] (F.east) to[bend left] (9,-3.2) node[right] {suite du programme};
Expand All @@ -39,4 +39,4 @@



\end{tikzpicture}
\end{tikzpicture}
4 changes: 2 additions & 2 deletions tantque/fig-tantque-cours.tikz
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@

\draw[|-|,ultra thick, red] (5.5,-0.3)--++(0,-2.1);
\draw[ultra thick, red] (5.5,-1.2) to[bend right] (10,-0.5) node[right] {bloc d'instructions indent\'e};
\node[right,red] at (10,-1.25) {sera \'ex\'ecut\'e tant que};
\node[right,red] at (10,-1.25) {sera ex\'ecut\'e tant que};
\node[right,red] at (10,-1.9) {la condition est v\'erifi\'ee};

\draw[<-,>=latex,ultra thick, red] (F.east) to[bend left] (9,-3.2) node[right] {suite du programme};

\end{tikzpicture}
\end{tikzpicture}