2017-05-19 11:17:58 +02:00
|
|
|
\documentclass[ignorenonframetext]{beamer}
|
2017-05-09 09:37:09 +02:00
|
|
|
\usepackage{graphicx}
|
2017-05-19 11:17:58 +02:00
|
|
|
% Internal links only wors with second screen on the right
|
|
|
|
% \setbeameroption{show notes on second screen}
|
|
|
|
\usetheme{Madrid}
|
|
|
|
\usecolortheme{dolphin}
|
|
|
|
|
|
|
|
% gets rid of bottom navigation bars
|
|
|
|
\setbeamertemplate{footline}[frame number]{}
|
|
|
|
|
|
|
|
% gets rid of navigation symbols
|
|
|
|
\setbeamertemplate{navigation symbols}{}
|
|
|
|
|
|
|
|
%\usetheme{Warsaw}
|
|
|
|
%\usepackage[french]{babel}
|
|
|
|
%\usepackage[utf8,utf8x]{inputenc}
|
2017-05-09 09:37:09 +02:00
|
|
|
%\usepackage[T1]{fontenc}
|
|
|
|
|
2017-05-19 11:17:58 +02:00
|
|
|
|
|
|
|
% Replace babel
|
|
|
|
\usepackage{polyglossia}
|
|
|
|
\setdefaultlanguage{french}
|
|
|
|
|
|
|
|
%% Require XeTeX
|
|
|
|
\usepackage{xltxtra}
|
|
|
|
\usepackage{fontspec}
|
|
|
|
\usepackage{xunicode}
|
|
|
|
|
2017-05-09 09:37:09 +02:00
|
|
|
\logo{
|
|
|
|
\hspace{120pt}
|
|
|
|
\includegraphics[width=2cm]{img/cesi.jpg}~
|
|
|
|
\hspace{113pt}
|
|
|
|
\includegraphics[width=1cm]{img/logo-cadoles.png}~
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
%%\setbeamertemplate{background}{\includegraphics[width=128mm]{beamer-skel/img/banner01.png}}
|
|
|
|
|
|
|
|
\title[]{Algorithmique}
|
|
|
|
|
2017-05-12 11:55:30 +02:00
|
|
|
\subtitle{CESI alternance}
|
|
|
|
\subtitle{promotion GMSI B3}
|
2017-05-09 09:37:09 +02:00
|
|
|
|
|
|
|
\author[Gwenaël Rémond]{}
|
|
|
|
|
|
|
|
%\institute[E.O.L.E]{\includegraphics[width=2cm]{beamer-skel/img/logo-eole.png}}
|
|
|
|
\institute[Cadoles]{\includegraphics[width=2cm]{img/cesi.jpg}}
|
|
|
|
|
|
|
|
%\date{{\small 8 avril 2013}}
|
|
|
|
|
|
|
|
\subject{Talks}
|
|
|
|
|
2017-05-19 11:17:58 +02:00
|
|
|
\AtBeginSection[] % Add a TOC with current section highlighted
|
|
|
|
{
|
|
|
|
\begin{frame}<beamer>
|
|
|
|
\frametitle{Plan}
|
|
|
|
\tableofcontents[currentsection]
|
|
|
|
\end{frame}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
\usepackage{hyperref}
|
|
|
|
\usepackage{hyperxmp}
|
|
|
|
\hypersetup{%
|
|
|
|
colorlinks=true,linkcolor=blue,urlcolor=blue,pdfpagemode=UseNone,
|
|
|
|
pdftitle={EAD3},
|
|
|
|
pdfsubject={Présentation technique d'EWT},
|
|
|
|
pdfauthor={EOLE},
|
|
|
|
pdfkeywords={EOLE, J-EOLE, distribution, GNU, Linux, Éducation,
|
|
|
|
nationale, Ubuntu},
|
|
|
|
pdflang={fr-FR},
|
|
|
|
pdfcopyright={Copyright © 2017 Équipe EOLE <eole@ac-dijon.fr>}, % Require XeTeX
|
|
|
|
pdflicenseurl={http://creativecommons.org/licenses/by-nc-sa/2.0/fr/},
|
|
|
|
}
|
|
|
|
|
|
|
|
\parskip=0.8em
|
|
|
|
|
2017-05-09 09:37:09 +02:00
|
|
|
\begin{document}
|
|
|
|
|
|
|
|
\frame{\titlepage}
|
|
|
|
|
2017-05-19 11:17:58 +02:00
|
|
|
\section{Introduction}
|
2017-05-09 09:37:09 +02:00
|
|
|
\begin{frame}
|
2017-05-22 17:54:40 +02:00
|
|
|
\frametitle{Objectifs}
|
2017-05-12 11:55:30 +02:00
|
|
|
|
|
|
|
\texttt{
|
2017-05-22 17:54:40 +02:00
|
|
|
"Il ne suffit pas d'avoir les mains propres, \\
|
|
|
|
il faut aussi avoir l'esprit pur."\\
|
2017-05-12 11:55:30 +02:00
|
|
|
}
|
2017-05-22 17:54:40 +02:00
|
|
|
\emph{Thalès ; VIe s. av. J.-C.}
|
2017-05-12 11:55:30 +02:00
|
|
|
|
2017-05-09 09:37:09 +02:00
|
|
|
\begin{itemize}
|
2017-05-22 17:54:40 +02:00
|
|
|
\item<1-> maîtriser et concevoir un algorithme,
|
|
|
|
\item<2-> choisir une représentation appropriée des données,
|
|
|
|
\item<3-> décomposer en sous-problèmes et affinements successifs,
|
|
|
|
\item<4-> savoir organiser son code et faire des petits programmes en python.
|
2017-05-09 09:37:09 +02:00
|
|
|
\end{itemize}
|
|
|
|
\end{frame}
|
|
|
|
|
|
|
|
\begin{frame}
|
2017-05-12 11:55:30 +02:00
|
|
|
\frametitle{L'art de programmer}
|
2017-05-22 17:54:40 +02:00
|
|
|
\texttt{GEEK SUBLIME (Vikram CHANDRA)
|
|
|
|
Une vision esthétique, littéraire, mathématique du codage}
|
|
|
|
|
2017-05-12 11:55:30 +02:00
|
|
|
\begin{itemize}
|
2017-05-22 17:54:40 +02:00
|
|
|
\item<1-> Programmer, c'est abstraire, prendre du recul.
|
|
|
|
\item<2-> Abstraire, par rapport à quoi ? Par rapport à la machine
|
|
|
|
\item<3-> Les niveaux d'abstraction par rapport à la machine
|
2017-05-12 11:55:30 +02:00
|
|
|
\end{itemize}
|
|
|
|
\end{frame}
|
|
|
|
|
|
|
|
\begin{frame}
|
|
|
|
\frametitle{Les langages de programmation}
|
|
|
|
\begin{itemize}
|
2017-05-22 17:54:40 +02:00
|
|
|
\item Qu'est-ce qu'un langage de programmation ?
|
|
|
|
\item Les grands paradigmes de programmation (procédural, objet, fonctionnel, modulaire, générique \dots)
|
|
|
|
\item L'historique des langages.
|
2017-05-12 11:55:30 +02:00
|
|
|
\end{itemize}
|
|
|
|
\end{frame}
|
|
|
|
|
2017-05-22 17:54:40 +02:00
|
|
|
\section{Algorithmique}
|
2017-05-12 11:55:30 +02:00
|
|
|
\begin{frame}
|
|
|
|
\frametitle{Les algorithmes}
|
|
|
|
\begin{itemize}
|
|
|
|
\item définition d'un algorithme
|
|
|
|
\item implémentation d'un algorithme
|
|
|
|
\item représentation d'un algorithme dans un langage cible
|
|
|
|
\end{itemize}
|
2017-05-09 09:37:09 +02:00
|
|
|
\end{frame}
|
|
|
|
|
2017-05-23 09:32:17 +02:00
|
|
|
\section{Algorithmique pour la programmation}
|
|
|
|
|
|
|
|
\begin{frame}
|
|
|
|
\frametitle{Qu'est-ce qu'un programme ?}
|
|
|
|
\begin{itemize}
|
|
|
|
\item <1-> Les expressions
|
|
|
|
\item <2-> Les déclarations
|
|
|
|
\item <3-> La REPL (Read Eval Print Loop)
|
|
|
|
\end{itemize}
|
|
|
|
\end{frame}
|
|
|
|
|
|
|
|
\begin{frame}
|
|
|
|
\frametitle{Approche générale des fonctions}
|
|
|
|
\begin{itemize}
|
|
|
|
\item Les procédures
|
|
|
|
\item La portée d'une variable
|
|
|
|
\item Les fonctions
|
|
|
|
\end{itemize}
|
|
|
|
\end{frame}
|
|
|
|
|
|
|
|
|
|
|
|
\begin{frame}
|
|
|
|
\frametitle{Les structures de contrôle}
|
|
|
|
\begin{itemize}
|
|
|
|
\item Le branchement conditionnel
|
|
|
|
\item L'itération
|
|
|
|
\item \dots
|
|
|
|
\end{itemize}
|
|
|
|
\end{frame}
|
|
|
|
|
|
|
|
\begin{frame}
|
|
|
|
\frametitle{Les structures de données}
|
|
|
|
\begin{itemize}
|
|
|
|
\item Les listes
|
|
|
|
\item Les dictionnaires
|
|
|
|
\item Les arbres, les graphes \dots
|
|
|
|
\end{itemize}
|
|
|
|
\end{frame}
|
|
|
|
|
|
|
|
\begin{frame}
|
|
|
|
\frametitle{L'état de l'art de l'agorithmique}
|
|
|
|
\begin{itemize}
|
|
|
|
\item en mathématiques
|
|
|
|
\begin{itemize}
|
|
|
|
\item algorithmique algébrique,
|
|
|
|
\item arithmétique modulaire,
|
|
|
|
\item \dots
|
|
|
|
\end{itemize}
|
|
|
|
\item en informatique
|
|
|
|
\begin{itemize}
|
|
|
|
\item en informatique fondamentale
|
|
|
|
\item en langages de programmation
|
|
|
|
\item dans touts les domaines où l'informatique intervient\dots
|
|
|
|
\end{itemize}
|
|
|
|
\item en sciences physique, en biologie
|
|
|
|
\item en sciences sociales (réseaux sociaux, auto-organisation\dots)
|
|
|
|
\end{itemize}
|
|
|
|
\end{frame}
|
|
|
|
|
|
|
|
\section{Programmation modulaire}
|
|
|
|
\begin{frame}
|
|
|
|
\frametitle{La programmation modulaire}
|
|
|
|
\begin{itemize}
|
|
|
|
\item La programmation raisonnée
|
|
|
|
\item Le paradigme modulaire vs le paradigme objet
|
|
|
|
\item exemple de programmation modulaire en python
|
|
|
|
\end{itemize}
|
|
|
|
\end{frame}
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-05-09 09:37:09 +02:00
|
|
|
|
2017-05-19 11:17:58 +02:00
|
|
|
% Not present in TOC
|
|
|
|
\appendix
|
|
|
|
|
|
|
|
\begin{frame}[label=thanks]{Remerciements}
|
|
|
|
|
|
|
|
Je remercie la communauté du logiciel libre pour tous ces
|
|
|
|
merveilleux logiciels sans lesquels si peu de choses existeraient.
|
|
|
|
|
|
|
|
Cette présentation a été réalisée grâce aux logiciels libres
|
|
|
|
suivants~:
|
|
|
|
|
|
|
|
\begin{itemize}
|
|
|
|
\item Le système de composition \LaTeX{}
|
|
|
|
\href{https://fr.wikipedia.org/wiki/TeX_Live}{TeX Live}
|
|
|
|
\item L'éditeur de texte
|
|
|
|
\href{http://www.vim.org/}{Vim}
|
|
|
|
\item L'environnement graphique
|
|
|
|
\href{http://gnome.org/}{Gnome}
|
|
|
|
\item Le système d'exploitation
|
|
|
|
\href{https://debian.org/}{Debian}
|
|
|
|
\end{itemize}
|
|
|
|
|
|
|
|
\begin{center}
|
|
|
|
% Do not mess with graphics
|
|
|
|
\hypersetup{hidelinks}
|
|
|
|
\begin{tabular}{cccccc}
|
|
|
|
\href{http://www.gnu.org}{\includegraphics[height=1.3cm]{graphics/gnu-head.pdf}} &
|
|
|
|
\href{http://www.kernel.org}{\includegraphics[height=1.2cm]{graphics/tux.pdf}} &
|
|
|
|
\href{http://www.debian.org/}{\includegraphics[height=1cm]{graphics/debian.eps}} &
|
|
|
|
\href{https://fr.wikipedia.org/wiki/TeX_Live}{\includegraphics[height=1cm]{graphics/texlive.pdf}}
|
|
|
|
\end{tabular}
|
|
|
|
\end{center}
|
|
|
|
|
|
|
|
\end{frame}
|
|
|
|
|
|
|
|
\begin{frame}[label=license]{Licence}
|
|
|
|
Cette présentation est mise à disposition sous licence\\
|
|
|
|
\href{http://creativecommons.org/licenses/by-sa/4.0}%
|
|
|
|
{Creative Commons \textsc{by-sa 4.0}}
|
|
|
|
\begin{columns}[t]
|
|
|
|
\begin{column}{5.5cm}
|
|
|
|
\begin{itemize}
|
|
|
|
\item Attribution
|
|
|
|
\end{itemize}
|
|
|
|
\end{column}
|
|
|
|
\begin{column}{6.5cm}
|
|
|
|
\begin{itemize}
|
|
|
|
\item Partage dans les mêmes conditions
|
|
|
|
\end{itemize}
|
|
|
|
\end{column}
|
|
|
|
\end{columns}
|
|
|
|
Vous pouvez obtenir une copie de la licence
|
|
|
|
\begin{block}{par Internet}
|
|
|
|
\href{http://creativecommons.org/licenses/by-nc-sa/4.0}%
|
|
|
|
{\url{http://creativecommons.org/licenses/by-nc-sa/4.0}}
|
|
|
|
\end{block}
|
|
|
|
\begin{block}{par courrier postal}
|
|
|
|
\begin{quote}
|
|
|
|
Creative Commons\\
|
|
|
|
444 Castro Street, Suite 900 Mountain View,\\
|
|
|
|
California, 94041, USA.
|
|
|
|
\end{quote}
|
|
|
|
\end{block}
|
|
|
|
\end{frame}
|
2017-05-12 11:55:30 +02:00
|
|
|
|
|
|
|
\end{document}
|