cours0708/G5a/Exercices/5.1-StringTableaux.html

196 lines
5.5 KiB
HTML
Raw Permalink Normal View History

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Palindromes</title>
</head>
<body>
<span style="font-family: Arial;">
<h1>Strings, tableaux et matrices</h1>
<h3><span style="font-weight: bold;">Palindromes</span></h3>
<span style="font-weight: bold;">1.
</span>Ecrire un programme
qui prend en argument un mot constitu&eacute;
uniquement de lettres minuscules ou majuscules (pas d'espace ni
d'accent) et qui indique si le param&egrave;tre est un palindrome
ou non.<br>
<code><br>
&nbsp;&nbsp;&nbsp; &gt; Palindrome senones<br>
&nbsp;&nbsp;&nbsp; vrai<br>
&nbsp;&nbsp;&nbsp; &gt; Palindrome
Senones<br>
&nbsp;&nbsp;&nbsp; faux </code><br>
<br>
<span style="font-weight: bold;">2.</span> adapter
ce programme pour le rendre insensible aux espaces et aux
Majuscules<br>
<code><br>
&nbsp;&nbsp;&nbsp; &gt; Palindrome Esope reste ici et
se repose<br>
&nbsp;&nbsp;&nbsp; vrai</code><br>
<br>
<span style="font-weight: bold;">3.</span>
adapter ce programme
pour le rendre insensible aux
lettres
accentu&eacute;es (cr&eacute;er une fonction qui remplace un
caract&egrave;re par sa version acceptable &ecirc;--&gt;e )<br>
<code><br>
&nbsp;&nbsp;&nbsp; &gt; Palindrome &eacute;lu par
cette crapule<br>
&nbsp;&nbsp;&nbsp; vrai<br>
</code>
<h3><span style="font-weight: bold;">Produit de
matrices</span></h3>
Ecrire un
programme Java calculant la somme et le
produit de deux matrices carr&eacute;es de m&ecirc;me taille.
<pre>&gt; java Matrices 3 1 2 3<br>Erreur de syntaxe !<br>java Matrices n A1...A(n*n) B1...B(n*n)<br>n : taille des matrices<br>A et B : les deux matrices<br>&gt; java Matrices 3 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9<br>Matrice : A<br> 1 4 7<br> 2 5 8<br> 3 6 9<br>Matrice : B<br> 1 4 7<br> 2 5 8<br> 3 6 9<br>Matrice : Somme de A et B<br> 2 8 14<br> 4 10 16<br> 6 12 18<br>Matrice : Produit de A et B<br> 30 66 102<br> 36 81 126<br> 42 96 150</pre>
<p><span style="font-family: Arial;"></span><span style="font-family: Arial;"></span></p>
</span>
<h3><span style="font-family: Arial;">
</span></h3>
<h3><span style="font-weight: bold;">Recherche
dichotomique</span></h3>
<span style="font-family: Arial;">
<p><span style="font-family: Arial;"> </span>Ecrire
un programme Java de
recherche dichotomique d'un entier dans un tableau tri&eacute;.</p>
</span><span style="font-family: Arial;">
<blockquote>
<pre>&gt; java Dichotomique 23 1 3 7 9 12 23 44 53<br>l'entier 23 se trouve &agrave; l'indice 5 du tableau<br>&gt; java Dichotomique 23 1 3 7 9 12 44 53<br>l'entier 23 ne se trouve pas dans le tableau<br><br><br></pre>
</blockquote>
<p><span style="font-family: Arial;">
<h3><span style="font-weight: bold;">Conversion</span></h3>
</span><strong></strong>Ecrire un programme Java
prenant en param&egrave;tre un entier et affichant sa valeur en
binaire, on octale et en hexad&eacute;cimale.</p>
<blockquote>
<pre>&gt; java ConvertEntier 23<br>en binaire : 23 =&gt; 10111<br>en octale : 23 =&gt; 27<br>en hexad&eacute;cimale : 23 =&gt; 17 <br></pre>
</blockquote>
<h3>Un triangle</h3>
<p><strong>1)</strong> Ecrire un programme qui
affiche un triangle isoc&egrave;le de base 2<var>n</var>-1
et de hauteur <var>n</var>. L'entier <var>n</var>
et le caract&egrave;re utilis&eacute; pour tracer le triangle
sont pass&eacute;s en argument sur la ligne de commande.</p>
<p><strong>2)</strong> Ajouter une option permettant
d'indiquer la direction du triangle : -h = horizontale, -v = verticale.</p>
<p><strong>3)</strong> Si vous ne l'avez pas
d&eacute;j&agrave; fait, ajouter les
lignes de commandes n&eacute;cessaires afin de v&eacute;rifier
les arguments pass&eacute;s
sur la ligne de commande : y-a-t-il 3 arguments ? Le premier est-il -h
ou -v ? Le second repr&eacute;sente-t-il un nombre ? Le
troisi&egrave;me ne
comporte-t-il qu'un seul caract&egrave;re ?</p>
<p>En cas d'erreur, un message&nbsp; sera affich&eacute;
et le programme&nbsp;terminera en renvoyant un code d'erreur.</p>
<h4>Exemple d'utilisation</h4>
<pre>&gt; java Triangle -v 3 A<br>A<br>AA<br>AAA<br>AA<br>A<br>&gt; java Triangle -h 4 $<br> $<br> $$$<br> $$$$$<br>$$$$$$$</pre>
<span style="font-family: Arial;">
<h3><br>
<span style="font-weight: bold;"></span></h3>
<h3><br>
</h3>
<h3><span style="font-weight: bold;">Mots
de 5 lettres </span>:</h3>
1.&nbsp; Faire un jeu qui permet
de jouer aux "mots de 5 lettres"&nbsp; (ou mastermind des mots)<br>
<ul style="font-family: Arial;">
<ul>
<li>L'ordinateur tire au
hasard un mot dans une liste de mots de 5 lettres (ex : PORTE)<br>
</li>
<li>Le joueur saisit un mot
de 5 lettres (ex : RONDE)<br>
</li>
<li>L'ordinateur enregistre
&eacute;ventuellement dans sa liste propre ce nouveau mot de 5
lettres et affiche au joueur&nbsp; le nombre de lettres correctes
&agrave; la bonne place et de lettres correctes mal
plac&eacute;es (ex : 2,1) <br>
</li>
<li>etc...</li>
<li>Le jeu se termine par la
victoire de l'ordinateur si le joueur n'a pas trouv&eacute; au
10&egrave;me&nbsp; coup</li>
</ul>
</ul>
<p>2. Faire en sorte que
l'ordinateur puisse jouer aussi et "deviner" le mot choisi par le joueur<br>
<br>
</p>
</span>
</span>
</body>
</html>