【问题标题】:How to code a two dimensional triangular list in python with the formula of i**2 + j**2?如何在python中用i**2 + j**2的公式编写一个二维三角列表?
【发布时间】:2020-12-07 17:02:34
【问题描述】:

我正在尝试解决这个练习题。

一) 提示用户输入 n = 正整数的值

b) 分配一个包含 n 行的二维三角形列表,第一行长度为 1,第二行长度为 2,依此类推,最后一行长度为 n

c) 编写嵌套循环 = 外循环和内(嵌套)循环来迭代 2d 列表中的所有元素。 如果外部循环的循环计数器为 i,内部(嵌套)循环的循环计数器为 j,则将数组元素的值设置为 i^2 + j^2

d) 将列表打印到控制台,使显示看起来像这样

0

1 2

4 5 8

9 10 13 18

16 17 20 25 32

25 26 29 34 41 50

这是我到目前为止所做的。

n = int(input("Please enter a positive integer for n: "))
while n <= 0:
    n = int(input("Error: Please enter a positive integer for n: "))
for i in range(n):
    for j in range(i + 1):
        print(i**2 + j**2)

我还没有弄清楚如何制作三角形。我知道它应该使用列表,但我还没有得到它。如果有人有任何提示,那将非常有帮助!谢谢!

【问题讨论】:

  • 您收到了反对票,因为您没有展示自己的尝试。这通常被认为是不尊重的,因为您似乎期望其他人为您编写代码。更好地展示你迄今为止所做的事情,无论它可能多么少或被误导 =)
  • 这个问题没有python。使用tour 阅读有关How to Ask 的信息,了解如何创建minimal reproducible example

标签: python 2d nested-lists triangular


【解决方案1】:

按照说明操作...

# a) prompt the user
n = int(input("n: "))

# b) allocate a 2d triangular list
triangular = [ [0]*(i+1) for i in range(n) ]

# c) nested loops...
for i in range(n):
    for j in range(i+1):
        triangular[i][j] = i**2 + j**2

# d) print the list
for row in triangular: print(*row)

示例运行:

n: 5
0
1 2
4 5 8
9 10 13 18
16 17 20 25 32

【讨论】:

    猜你喜欢
    • 2016-09-19
    • 2021-09-20
    • 2017-04-28
    • 2021-10-25
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 2013-11-15
    相关资源
    最近更新 更多