鱼C论坛

 找回密码
 立即注册
查看: 529|回复: 4

好人一生平安,求助各位大佬

[复制链接]
发表于 2024-3-21 10:55:06 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
完成以下算法题并提交运行“结果截图”和“代码文件”:

打印出杨辉三角,输入n<=30

样例输入:

1

样例输出:

1



样例输入:

3

样例输出:

1

1 1

1 2 1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-3-21 10:55:22 | 显示全部楼层
杨辉三角是一个三角形的数字图案,其中每个数值是位于它上方两个数之和。现在我们来解决这个问题。

算法思路:
1. 创建一个二维列表,用于存储杨辉三角的数字。
2. 使用两层循环来填充二维列表:
   a. 外层循环控制行数,从第一行到第n行。
   b. 内层循环控制列数,从第一列到第n列。
   c. 对于每个位置(i, j),如果j等于0或者j等于i,那么当前位置的值为1;否则,其值为上一行同列和前一列的值之和。
3. 遍历二维列表,按照格式打印出杨辉三角。

下面是具体实现的代码:
def print_yanghui_triangle(n):
    triangle = [[0] * (i+1) for i in range(n)]
    
    for i in range(n):
        for j in range(i+1):
            if j == 0 or j == i:
                triangle[i][j] = 1
            else:
                triangle[i][j] = triangle[i-1][j] + triangle[i-1][j-1]
    
    for row in triangle:
        for number in row:
            print(number, end=' ')
        print()

n = int(input("请输入要打印的杨辉三角的行数:"))
print_yanghui_triangle(n)

你可以将以上代码保存为一个.py文件,然后运行,并输入要打印的杨辉三角的行数。程序会输出杨辉三角的图案。

希望这个回答对你有帮助,如果还有任何问题,欢迎继续提问!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-3-21 11:14:38 | 显示全部楼层
这不是Java耶
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-21 11:14:57 | 显示全部楼层


非常抱歉,给您带来了困扰。以下是Java语言的实现示例:
import java.util.Scanner;

public class YanghuiTriangle {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        
        System.out.print("请输入要打印的杨辉三角的行数:");
        int n = input.nextInt();
        
        printYanghuiTriangle(n);
    }
    
    public static void printYanghuiTriangle(int n) {
        int[][] triangle = new int[n][n];
        
        for (int i = 0; i < n; i++) {
            for (int j = 0; j <= i; j++) {
                if (j == 0 || j == i) {
                    triangle[i][j] = 1;
                } else {
                    triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];
                }
            }
        }
        
        for (int i = 0; i < n; i++) {
            for (int j = 0; j <= i; j++) {
                System.out.print(triangle[i][j] + " ");
            }
            System.out.println();
        }
    }
}
您可以将以上代码保存为一个Java文件(如`YanghuiTriangle.java`),然后使用Java编译器进行编译运行。在控制台中输入要打印的杨辉三角的行数后,程序会输出相应的杨辉三角图案。希望这次回答对您有所帮助,如果还有其他问题,请随时提问!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-21 11:22:53 | 显示全部楼层

哈哈你要问他问题,然后叫他指定用什么语言实现
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-21 20:07

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表