我很好奇如何编写这样的代码:
##
##
####
####
####
####
######
######
######
######
######
######
########
########
########
########
########
########
########
########
Run Code Online (Sandbox Code Playgroud)
这是我尝试过的:
public class Main {
public static void main(String[] args) {
for (int i = 0; i <= 8; i += 2) {
for (int j = 0; j < i; j++) {
System.out.print('#');
}
System.out.println();
}
}
}
Run Code Online (Sandbox Code Playgroud)
此代码显示:
##
####
######
########
Run Code Online (Sandbox Code Playgroud)
但它不会像有多少个字符那样打印行数。
所以基本上,它增加 2,然后它显示与循环内字符数量相同的行数。我想不通。
第三个嵌套的 for 循环是什么样的?
我正在学习 Haskell,目前正在尝试重写此代码:
case class Coord(x: Int, y: Int)
def buildBoard(coords: [Coord]): String = {
var str = ""
for (i <- 0 to 30) {
for (j <- 0 to 40) {
if (coords.exists(c => c.x == i && c.y == j))
str += "x "
else
str += "o "
}
str += "\n"
}
str
}
Run Code Online (Sandbox Code Playgroud)
这为我正在编写的命令行游戏构建了一个简单的板。我可以重写它的最简单方法是什么?我不是在寻找任何表演性的东西
我使用元组来实现Coord类型:
type Coordinate = (Int, Int)
type Coordinates = [Coordinate]
Run Code Online (Sandbox Code Playgroud)
我非常感谢那些提供帮助的人。我设法使用列表理解完成了工作。我的想法是摆脱之前代码的“迭代方法”。事实上,我想将一组“虚拟”坐标转换为一个字符串,这是我的做法:
type Coordinate = (Int, Int)
type Coordinates …Run Code Online (Sandbox Code Playgroud) haskell for-loop nested-loops code-translation nested-for-loop
var t1 = new Date().getTime()
for (let i = 0; i < 100; i++) {
for (let j = 0; j < 1000; j++) {
for (let k = 0; k < 10000; k++) {
}
}
}
var t2 = new Date().getTime()
console.log('first time', t2 - t1)
for (let i = 0; i < 10000; i++) {
for (let j = 0; j < 1000; j++) {
for (let k = 0; k < 100; k++) {
}
} …Run Code Online (Sandbox Code Playgroud)我正在编写一个函数来确定矩阵的元素是否复杂。我希望该函数返回 aTrue或 a False。我有这段代码,但它似乎没有按预期工作:
def confirm_matrix(M):
row_1_length = len(M[0])
if len(M)>0:
for row in M:
if type(row) is not list or tuple:
return False
for row in M[1:]:
if len(row)!= row_1_length:
return False
for row in M:
for element in row:
try:
isinstance(element, complex) == True
return True
except:
return False
confirm_matrix([[1j,1j],[2j,2j]])
Run Code Online (Sandbox Code Playgroud)
我期望得到 aTrue但这给出了False. 我可以在我的代码中改进什么?
在 C++ 中,当我制作嵌套 For 循环并尝试计算阶乘时...我没有得到正确的阶乘...我不知道为什么。例如,5 的阶乘是 120,但这里的结果是 34560。为什么?这是代码:
int fact=1;
for (int number=1; number<=10; number++) {
for (int i=1; i<=number; i++)
fact=fact*i;
cout <<"factorial of "<<number<<"="<<fact<<"\n";
}
Run Code Online (Sandbox Code Playgroud)
这是如图所示:
for-loop ×3
c++ ×1
haskell ×1
java ×1
javascript ×1
list ×1
matrix ×1
nested-loops ×1
performance ×1
python ×1
python-3.x ×1