Commit b4ee5188 authored by Quentin Duchemin's avatar Quentin Duchemin

Précision et ajout du script manquant pour la boucle for

parent 306d665d
......@@ -17,32 +17,32 @@
\item Statique (le nombre d'exécutions est fixé et ne peut pas dépendre de paramètres extérieurs)
\end{itemize}
C'est pourquoi on utilise des \textbf{boucles}
C'est pourquoi on utilise des \textbf{boucles}.
\end{block}
\end{frame}
\begin{frame}{Les boucles en théorie}
\begin{block}{Définition}
Une boucle est une structure permettant de réaliser de manière répétée une action.
Une boucle est une structure permettant de répéter un ensemble d'instructions.
Elle est composée:
\begin{itemize}
\item D'un corps: c'est l'ensemble des instructions qui seront exécutées lors d'un passage dans la boucle.
\item D'une condition de réalisation: si celle-ci est vraie, un passage est effectué
\item D'une condition de réalisation: si celle-ci est vraie, une \textbf{itération} est effectuée.
\end{itemize}
\end{block}
\begin{alertblock}{N.B}
\begin{alertblock}{Note}
La condition peut correspondre à n'importe laquelle des conditions vues précédemment.
Elle peut ne jamais être fausse. On parlera alors de \textbf{boucle infinie}.
\textit{Par exemple, 1 -eq 1 est une engendrera une boucle infinie}
\textit{Par exemple, 1 -eq 1 est une engendrera une boucle infinie.}
\end{alertblock}
\end{frame}
\subsection{La boucle tant que \ldots faire}
\subsection{La boucle tant que~\ldots faire}
\begin{frame}[fragile]{En théorie}
\begin{block}{Explications}
Elle est composée d'une condition \enquote{simple} \textit{comme celle des if} et d'un corps.
Elle est composée d'une condition et d'un corps.
Elle est de la forme :
\end{block}
\begin{Verbatim}
......@@ -57,11 +57,11 @@
\begin{block}{Concrètement}
Son fonctionnement est assez simple.
Tant que la condition est vérifiée, la boule boucle.
Tant que la condition est vérifiée, la boucle s'exécute.
\end{block}
\end{frame}
\begin{frame}[fragile]{Et en bash?}
\begin{frame}[fragile]{Et en Bash?}
En bash, la syntaxe de cette boucle est la suivante :
\begin{Verbatim}
{\large while [ condition ]}
......@@ -78,16 +78,16 @@
\begin{Verbatim}
#!/bin/bash
while [ -z $reponse ] || [ $reponse != 'oui' ]\textcolor{red}{# ou juste [ ``$reponse'' != oui ]}
while [ -z "$reponse" ] || [ "$reponse" != 'oui' ]\textcolor{red}{ # ou juste [ "$reponse" != oui ]}
do
read -p 'Dites oui : ' reponse
read -p "Dites oui : " reponse
done
\end{Verbatim}
\end{beamercolorbox}
\begin{block}{}
Ce script demandera à l'utilisateur d'entrer du texte tant que l'utilisateur n'enverra pas \enquote{oui}
Ce script demandera à l'utilisateur d'entrer du texte tant que l'utilisateur n'enverra pas \enquote{oui}.
On notera que comme pour les if, on peut utiliser les opérateurs arithmétiques
On notera que comme pour les if, on peut utiliser les opérateurs arithmétiques.
\end{block}
\end{frame}
......@@ -128,14 +128,15 @@ done
\begin{Verbatim}
#!/bin/bash
while [ "$reponse" != 'oui' ]
for file in *
do
read -p 'Dites oui : ' reponse
cat "$file"
done
\end{Verbatim}
\end{beamercolorbox}
\begin{block}{}
Ce script demandera une entrée à l'utilisateur tant que ça ne sera pas \enquote{oui}
Ce script affichera l'ensemble des fichiers du répertoire d'exécution du script. Notez que le joker \texttt{*}, comme dans le terminal, capture le contenu du répertoire courant.
\end{block}
\end{frame}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment