J'ai rencontré un sujet très intéressant aujourd'hui. J'ai utilisé JS pour construire un graphique pyramidal composé de chaînes. Je pense personnellement qu'un tel sujet est très utile pour exercer la pensée logique et appliquer les connaissances de base. j’en discuterai avec vous. Partagez-le avec tout le monde.
Tout d'abord, publiez les résultats en cours d'exécution. Vous constaterez rapidement que c'est le résultat de l'observation de la pyramide de côté et du dessus, et compte également le nombre de pierres (caractères) utilisées.
Le code est composé de quatre fonctions, qui peuvent être transmises dans n'importe quelle chaîne de construction.
//从侧面看金字塔 function watchPyramidFromTheSide(characters) { var str = ""; for(var i=characters.length-1;i>=0;i--){ for(var j=0;j<i;j++){ str += " "; } var num = 2 * characters.length - 1 - j * 2; for(j=0;j<num;j++){ str += characters.charAt(i); } for(j=0;j<i;j++){ str += " "; } if(i>0){ str += "\n"; } } return str; } //从上方看金字塔 function watchPyramidFromAbove(characters) { var matrix = []; var str = ""; //边最长为 var sideLongest = characters.length * 2 - 1; for(var i=0;i<characters.length;i++){ var chr = characters.charAt(i); for(var j=i;j<sideLongest-i;j++){ if(!matrix[j]){ matrix[j] = new Array(sideLongest); } for(var k=i;k<sideLongest-i;k++){ matrix[j][k] = chr; } } } //组合字符串 for(i=0;i<matrix.length;i++){ str += matrix[i].join(""); if(i<matrix.length-1){ str += "\n"; } } return str; } //能看到的金字塔字符数 function countVisibleCharactersOfThePyramid(characters) { return Math.pow(characters.length * 2 - 1,2); } //金字塔总字符数 function countAllCharactersOfThePyramid(characters) { var len = characters.length; var count = 0; while(len >= 1){ count += Math.pow(2 * len - 1,2); len--; } return count; }
Ce qui précède est le contenu de JavaScript pour construire une pyramide de chaînes. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www. php.cn) !