gpt4 book ai didi

javascript - 在 JavaScript 中打印给定长度的菱形的代码

转载 作者:行者123 更新时间:2023-11-28 12:12:25 25 4
gpt4 key购买 nike

所以我目前正在学习 JavaScript,并且我对在编程中完成某件事的许多不同方法感兴趣。这是我的钻石代码,它将适用于给定的奇数:

const l = 11;
let space = ' ';
let star = '*';
let i = 1;
let k;
let n = 0;

while(i <= l) {
k = (l - i)/2;
console.log(space.repeat(k) + star.repeat(i));
i = i + 2;
}

// i = i - 2;

while(i >= 2) {
i = i - 2;
k = (l - i)/2;
if(i < l) { // To get rid of repeating middle line
console.log(space.repeat(k) + star.repeat(i));
} else {
continue;
}
}

还有其他更直观的方法吗?

最佳答案

您可以采用递归方法并调用该函数,直到获得最长的星线。

function diamond(l, i = 1) {
const
STAR = '*',
SPACE = ' ',
LINE = SPACE.repeat((l - i) / 2) + STAR.repeat(i);

console.log(LINE);
if (i >= l) return;
diamond(l, i + 2);
console.log(LINE);
}

diamond(11);
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 在 JavaScript 中打印给定长度的菱形的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58330108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com