Source de tp1proc.html
1: <!DOCTYPE html>
2: <html lang="fr">
3: <head>
4: <title>Figures avec procédures JavaScript</title>
5: <meta charset="utf-8" />
6: </head>
7: <body>
8:
9: <h1>Figures avec procédures JavaScript</h1>
10:
11: <script>
12:
13: /* Crée une case avec un caractère c à l'intérieur */
14: function unecase (c) {
15: document.write('<td>');
16: document.write(c);
17: document.write('</td>');
18: }
19:
20: /* Répète n fois le caractère c */
21: function repeter (c,n) {
22: for (let i=1 ; i<=n ; i=i+1) {
23: unecase(c);
24: }
25: }
26:
27: /* Affiche une ligne de n fois le caractère c */
28: function lignepleine (c,n) {
29: document.write('<tr>');
30: repeter(c,n);
31: document.write('</tr>');
32: }
33:
34: /* Affiche une ligne de taille n, avec le caractère c1 utilisé pour les bords, c2 pour l'intérieur */
35: function lignecreuse (c1,c2,n) {
36: document.write('<tr>');
37: unecase(c1);
38: repeter(c2,n-2);
39: unecase(c1);
40: document.write('</tr>');
41: }
42:
43: /* Dessine un carré creux nxn, avec le caractère c1 utilisé pour les bords, c2 pour l'intérieur */
44: function carrecreux (c1,c2,n) {
45: document.write('<table border="1">');
46: lignepleine (c1,n);
47: for (let i=1 ; i<=n-2 ; i=i+1) {
48: lignecreuse (c1,c2,n);
49: }
50: lignepleine (c1,n);
51: document.write('</table>');
52: }
53:
54: /* Dessine un carré nxn plein de caractères c */
55: function carreplein (c,n) {
56: carrecreux(c,c,n);
57: }
58:
59:
60: /* appels aux procédures définies ci-dessus */
61:
62: carrecreux('X','o',12);
63:
64: carreplein('@',5);
65:
66: carrecreux('<img src="images/chien.jpg" width="100" />','<img src="images/chat.jpg" width="100" />',8);
67:
68: </script>
69:
70: </body>
71: </html>