site de Fabien Torre


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>
site de Fabien Torre, université de Lille