%  En préambule,  les  sources metapost.  Si  vous lancez  latex  sur ce  fichier,  il vous  placera
% automatiquement le fichier .mp dans le répertoire courant. 
\begin{filecontents*}{limfonc.mp}

input newcourbes;

beginfig(27);
drawdblarrow (0,0)--(0,3cm) dashed evenly withcolor blue ;
drawdblarrow (0,3cm)--(7cm,3cm) dashed evenly withcolor blue;
draw (0,0)--(2cm,3cm);
label.llft(btex $A$ etex,(0,0));
label.ulft(btex $H$ etex,(0,3cm));
dotlabel.lrt(btex $M(x)$ etex,(2cm,3cm));
label.top(btex $B$ etex,(7cm,3cm));
label.lft(btex $18$m etex,(0,1.5cm)) withcolor blue;
label.top(btex $30$m etex,(3.5cm,3cm)) withcolor blue;

endfig;

end

\end{filecontents*}


\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}          % les bons codes pour les bonnes lettres
\usepackage{listings}% pour les listings informatiques
\usepackage[frenchb]{babel}
\usepackage{keystroke}% pour les touches du clavieru
\usepackage{filecontents} % pour inclure des dossiers externes (ici metapost)
\usepackage{amsmath,amsfonts,amsthm,geometry,pst-all}
\usepackage{amssymb}
\geometry{a4paper,left=1cm,right=1cm,top=1cm,bottom=1cm,noheadfoot}
\usepackage{pifont}
\usepackage{graphicx}
%\usepackage{yhmath} %pour faire un arc de cercle $\wideparen{AB}$ 
\usepackage{eurosym} % pour avoir le symbole euro \euro
\pagestyle{empty}
\setlength{\parindent}{0cm}
\usepackage{multicol}
\usepackage{slashbox} %pour barrer une cellule d'un tableau
\usepackage{color}
\usepackage{mathrsfs, wasysym} % mathscfs donne accès aux lettres curvilignes
\usepackage{pstricks,pstricks-add,pst-math,pst-xkey} % packages utiles pour le pstricks
\usepackage{multirow,colortbl,tabularx} % packages utilisés dans un tableau (tabular)
\usepackage{array}
\usepackage{calc,fp}

\makeatletter
\define@key[psset]{}{transpalpha}{\pst@checknum{#1}\pstranspalpha}
\psset{transpalpha=1}
\def\psfs@transp{%
  \addto@pscode{/Normal .setblendmode \pstranspalpha .setshapealpha }%
  \psfs@solid}
%%%%%%%%%%%%%%%%%%%%%%%%%% Ceci sert lorsqu'on remplit une figure géométrique

\newcounter{numero}
\newcommand{\partie}{
\addtocounter{numero}{1}%
\textbf{\psframebox*[fillcolor=black!60]{\textbf{\white Partie \arabic{numero}:}}}\quad}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% incrémente le numéro de la partie

\setlength\leftmargini{0.73cm}
\renewcommand{\labelenumi}{\psframebox*[fillcolor=black!25]{\textbf{\white{\arabic{enumi}.}}}}
\setlength\leftmarginii{0.40cm}
\renewcommand{\labelenumii}{\textbf{\alph{enumii}.}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% définition des items

\newcounter{degradecadre}
\newcounter{ptinit}
\newcounter{ptfin}
\newcounter{ycadreinit}
\newcounter{ycadrefin}
\newcommand{\cadre}[2]{\begin{pspicture}(0,0)(19,1.4)
	\multido{\i=1+1}{16}{
		\multido{\n=1+1}{2}{
			\FPeval{\degradecadre}{90-\i*4}
			\FPeval{\ptinit}{1.1875*(\i-1)}
			\FPeval{\ptfin}{1.1875*(\i-1)+1.1875}
			\FPeval{\ycadreinit}{(\n-1)*1.4}
			\FPeval{\ycadrefin}{(\n-1)*1.4+0.1}
			\psframe[fillstyle=solid,fillcolor=black!\degradecadre,linestyle=none](\ptinit,\ycadreinit)(\ptfin,\ycadrefin)}}
	\psframe[fillstyle=solid,fillcolor=black!90,linestyle=none](0,0)(0.1,1.4)
	\psframe[fillstyle=solid,fillcolor=black!26,linestyle=none](18.9,0)(19,1.4)
	\rput(9.5,1){#1} \rput(9.5,0.4){#2}
\end{pspicture}\par}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% cadre et titre

\newcounter{degrade}
\newcounter{ptdepart}
\newcounter{ptfinal}
\def\lignetirets{\begin{pspicture}(0,0)(19,0.2)
	\multido{\i=1+1}{16}{
		\FPeval{\degrade}{90-\i*4}
		\FPeval{\ptdepart}{1.2*(\i-1)}
		\FPeval{\ptfinal}{1.2*(\i-1)+1}
		\psframe[fillstyle=solid,fillcolor=black!\degrade,linestyle=none](\ptdepart,0)(\ptfinal,0.2)}
\end{pspicture}\par}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ligne tirets

\renewcommand\rmdefault{phv}

\newcommand{\procedure}[3]{
	\setlength{\arrayrulewidth}{1.8pt}
	\begin{tabularx}{#1}[t]{|X}
		\rowcolor[gray]{0.6}
		\textcolor{white}{#2}\\ 
		\cellcolor{gray!20}
		#3\\
	 \hline
	\end{tabularx}
	\setlength{\arrayrulewidth}{0.6pt}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% crée les cadres pour Procédure; en paramètre, on met le texte

\newcommand\R{{\mathbb R}} % les réels
\newcommand\Q{{\mathbb Q}} % les rationnels
\newcommand\Z{{\mathbb Z}} % les entiers relatifs
\newcommand\D{{\mathbb D}} % les décimaux
\newcommand\N{{\mathbb N}} % les entiers naturels
\newcommand\bC{{\mathbb C}} % les complexes
\newcommand\bc{{\mathscr C}} % pour les courbes
\newcommand\Pl{\mathscr{P}} % pour les plans
\newcommand\Oij{$\left(O;~\vec{i},~\vec{j}\right)$} % pour nommer un repère (O;i,j)
\newcommand\cad{c'est-à-dire}
\newcommand\e{\mathrm{e}} %pour écrire correctement le nombre e
\renewcommand\i{\mathrm{i}} %pour écrire correctement le nombre i
\renewcommand\d{\,\text{d}} % pour avoir un d droit dans l'intégrale

\newcommand{\ve}[1]{\overrightarrow{#1}} %pour les vecteurs
\newcommand{\Cnp}[2]{\displaystyle{{#1 \choose #2}}} % pour les p parmi n
\newcommand{\systeme}[2]{\left\{\begin{array}{l}
	#1\\
	#2\\
\end{array}\right.} % pour créer un système de deux équations

\makeatletter
\newlength{\@longarc}
\newcommand{\arc}[1]{\settowidth{\@longarc}{$#1$}
	\addtolength{\@longarc}{-0.2em}
	\unitlength \@longarc
	\ensuremath{
		\stackrel{\begin{picture}(1,0.2)
			\qbezier(0,0)(0.5,0.2)(1,0)
		\end{picture}}
		{#1}
	}}




%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%   Pour les listings de code et les réponses du logiciel


\usepackage{bold-extra,fancyvrb}
\usepackage[scaled=0.85]{luximono}
\DefineVerbatimEnvironment{boxedverbatim}{Verbatim}{gobble=2,frame=single,framesep=4mm,label=\textit{\small
    Réponse du logiciel}}

\definecolor{0.9white}{rgb}{0.9,0.9,0.9}
\definecolor{0.2white}{rgb}{0.2,0.2,0.2}


\lstloadlanguages{XCAS}
\lstset{numbers=none,language=XCAS,xleftmargin=10pt,%
keywordstyle =\color{0.2white}\bfseries\usefont{OT1}{cmtt}{b}{n},basicstyle=\ttfamily,commentstyle=\normalfont\scriptsize\itshape,%\small,
    backgroundcolor=\color{0.9white},breaklines=true}
   

\newcommand\Prog[1]{{\bfseries\ttfamily #1}}

\newcommand{\code}[1]{\texttt{#1}}


% %%% un ; avec un peu d'espace autour pour les intervalles
\newcommand{\pv}{\ensuremath{\: ; \,}}

%%%%%%%%%%%%%%%%%%%%% pour créer un arc de cercle
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Début du document %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\graphicspath{{/home/moi/Figures/FigXCAS/}} %% chemin vers les figures à adapter à votre config

\begin{document}
\setlength{\unitlength}{1mm}

\cadre{\LARGE \emph{ROMÉO,  JULIETTE, DESCARTES ET... LE REQUIN}}{\Large  \emph{Recherche du minimum
    d'une fonction avec XCAS}}


\textbf{Compétences mathématiques\::}\par
	\hspace{1cm} $\bullet$ Généralités sur les fonctions. Sens de variation. Extremum.

\textbf{Compétences informatiques\::}\par
	\hspace{1cm}   $\bullet$    Géométrie   dynamique.   Calcul    algébrique.   Boucle   «~TANT
        QUE~». Distinction fonction/expression.

\textbf{Prérequis\::}\par
	\hspace{1cm} $\bullet$ Avoir déjà utilisé \Prog{XCAS}

\lignetirets


\partie \textbf{ROMÉO ET JULIETTE}\\
\procedure{\linewidth}{Le  problème}{Roméo,  situé en  R,  est  pressé  d'aller rejoindre  Juliette,
  située en J, et de lui offrir une rose. La situation est sschématisée sur la figure suivante~:
\begin{center}
  \includegraphics[height=5cm]{romeo.eps}
\end{center}
Nous  voudrions déterminer  le  trajet  le plus  court  sachant que  \[HR=5{\rm  m}, \quad  KJ=7{\rm
  m}\quad{\rm et} \quad HK=18{\rm m}\]
}

\begin{enumerate}
\item \textbf{Recherche graphique}\\
\begin{enumerate}


\item Placez les points H, R, K et J avec la commande \code{point}.
\item Tracez la ligne brisée RHKJ en rouge avec une épaisseur de 3.
\item Créez un paramètre $x$ qui symbolisera l'abscisse du point mobile M représentant l'endroit où
  Roméo cueille la fleur~:~vous utiliserez comme d'habitude la commande \code{assume}.
\item Créez le point M.
\item Tracez la ligne brisée représentant le trajet de Roméo en bleu avec une épaisseur de 3.
\item Créez la fonction $h$ qui à $x$ associe la longueur du trajet. Si on se contente d'écrire
  \begin{lstlisting}
    h:=longueur(R,M)+longueur(M,J)
  \end{lstlisting}
le $h$  crée ne sera pas  une \emph{fonction} mais une  \emph{expression}, c'est-à-dire un  nombre réel~:~c'est le
même problème en mathématiques~! Pour transformer une expression dépendant de $x$ en une fonction de
$x$, on utilise la commande \code{unapply}~:

\begin{lstlisting}
  h:=unapply(longueur(R,M)+longueur(M,J),x)
\end{lstlisting}

\item Tracez le graphe de la fonction $h$ dans la même fenêtre, en vert. On pourra régler la fenêtre
  en cliquant sur \code{Cfg}.
\item Créez le point $m$ de cette courbe d'abscisse $x$.
\item Donnez  alors un  encadrement à  une unité  près de la  valeur de  $x$ corresondant  au trajet
  minimum.

\end{enumerate}
\item \textbf{Recherche d'une valeur approchée du minimum}\\

\begin{enumerate}

\item Exprimez à  l'aide d'une phrase contenant «~tant que~» une  méthode permettant de caractériser
  le minimum de la courbe à $10^{-6}$ près.
\item Commentez ce script~:

  \begin{lstlisting}
X:=7.4+10^(-6):;
Y:=h(7.4):;
tantque evalf(h(X))<Y faire
    Y:=evalf(h(X));
    X:=evalf(X+10^(-6));
ftantque:; 
X-10^(-6)
  \end{lstlisting}

\item  Écrivez enfin  une procédure  \code{mini(xo,p)} qui  donnera une  approximation du  minimum à
  $10^{-p}$ près en partant de $x=x_0$.

\end{enumerate}
\end{enumerate}



\partie \textbf{LES DENTS DE LA MER}\\
\procedure{\linewidth}{Le  problème}{

Albert est un fervent adepte de la plongée sous-marine. Alors qu'il se trouve en $A$ et s'émerveille devant la beauté du paysage
aquatique, il aperçoit au loin un requin d'une taille qui le dissuade de poursuivre plus avant son exploration des fonds marins et décide
de rejoindre son bateau situé en $B$. À quel endroit doit-il rejoindre la surface pour que le temps de parcours soit minimal~?

\begin{center}
  \includegraphics[height=3cm]{limfonc.27}
\end{center}


Grâce à l'adrénaline secrétée par la portion médullaire de ses
glandes surrénales, Albert se déplace à la vitesse de
$7,2\,km.h^{-1}$ sous l'eau et à la vitesse de $9\,km.h^{-1}$ en
surface. On supposera que la surface de l'eau est rectiligne, que
la dérive due au courant est nulle et que la trajectoire d'Albert
est une ligne brisée.}

En vous inspirant de l'exemple précédent, donnez une approximation de la solution à $10^{-6}$ près.

\vspace{1cm}


\partie \textbf{LOI DE DESCARTES}\\
\procedure{\linewidth}{Le  problème}{

\begin{center}
{\bf Connaissez-vous la loi de Descartes pour la reflexion~?} 

\bigskip

  \includegraphics[height=3cm]{Reflexion.1}
\end{center} 

On  a $\theta_1=-\theta_2$ et donc la normale au point d'incidence représente la bissectrice de
l'angle géométrique formé par les rayons incident et réfléchi. 


\bigskip

Supposons que  nous disposions d'un faisceau  lumineux rectiligne émis en  un point R et  situé à 18
mètres d'un mur.

 Il se refléchit
sur un miroir  plan de longueur 18 mètres situé  5 mètres en-dessous du point R.  Le problème est de
savoir comment orienter le faisceau afin d'éclairer un point du mur situé 6 mètres au-dessus du miroir.

}



Répondez à la  question en vous inspirant des  problèmes précédents. Une fois la  figure faite, vous
aurez besoin de la commande \code{resoudre(équation,inconnue)} qui résout l'équation \code{équation}
d'inconnue \code{inconnue}.




\end{document}




%%% Local Variables: 
%%% mode: latex
%%% TeX-master: t
%%% End: 
