精华内容
下载资源
问答
  • java打印数字三角形
    千次阅读
    2021-02-26 14:17:53

    void printTriangle(int n)

    {

    // build an auxiliary 2D array

    final int t[][] = new int[n][n];

    int i = 1;

    for (int s = n - 1; s <= 2 * (n - 1); s++)

    {

    for (int x = s - n + 1; x < n; x++)

    {

    t[x][s - x] = i++;

    }

    }

    // print the array

    for (int y = 0; y < n; y++)

    {

    for (int x = 0; x < n; x++)

    {

    if (t[x][y] > 0)

    {

    System.out.printf("%3d", t[x][y]);

    }

    else

    {

    System.out.printf(" ");

    }

    }

    System.out.println(); // start new line

    }

    }

    >构建一个大小为n的辅助2D数组.

    >按照对角线的方式将数字放入数组中,从1到n.代码中的s表示x y sum.每个对角线的总和是恒定的.在第一对角线(最长的一个)中,和等于n-1.在第二对角线中,和为1,n.在最后的“对角线”(右下角)中,总和为2 *(n – 1).这正是我们的循环:for(int s = n – 1; s< = 2 *(n - 1); s).得到和和x我们可以用简单的减法得到y,y = s - x.

    >打印阵列.数组的每个单元格都用0(int的默认值)初始化.因此,如果单元格为零,我们只打印3个空格,以保留三角形的形状.

    PS.我的代码是为“教育目的”而编写的:)以简单的方式展示如何完成它.它没有针对速度和内存进行优化.

    更多相关内容
  • java 简单数字三角形打印

    千次阅读 2020-02-02 14:49:38
    右三角形打印我们要打印这样的数字三角形 看一下代码 for(int i=1;i<=5;i++){ for(int k=0;k<5-i;k++){ System.out.print(" "); } for(int j=i;j>0;j–){ System.out.print(j); } System.out.println(); } ...

    右三角形打印在这里插入图片描述我们要打印这样的数字三角形

    看一下代码
    for(int i=1;i<=5;i++){
    for(int k=0;k<5-i;k++){
    System.out.print(" ");
    }
    for(int j=i;j>0;j–){
    System.out.print(j);
    }
    System.out.println();
    }
    运行这段代码,我们就能得到图片的结果
    原理
    我们使用了3次循环
    一个循环嵌套着两个循环
    第一个被嵌套的循环用来打印空格
    第二个被嵌套循环用来打印数字
    通过这个方法,我们可以打印很多三角形

    展开全文
  • 1、根据手动输入数字打印数字的直角三角形(直角在右上方) 2、根据手动输入数字打印数字的直角三角形(直角在左下方) 3、根据手动输入数字打印数字的直角三角形(直角在右下方) 4、根据手动输入...

    目录

    1、根据手动输入数字,打印该数字的直角三角形(直角在右上方)

    2、根据手动输入数字,打印该数字的直角三角形(直角在左下方)

    3、根据手动输入数字,打印该数字的直角三角形(直角在右下方)

    4、根据手动输入数字,打印该数字的直角三角形(直角在左上方)

    5、根据手动输入数字,打印该数字的等边三角形(正三角形)

    6、根据手动输入数字,打印该数字的等边三角形(倒三角形)


    1、根据手动输入数字,打印该数字的直角三角形(直角在右上方)

    例如:输入数字为5,打印如下所示图形

    1 2 3 4 5 
       1 2 3 4 
          1 2 3 
             1 2 
                1  

        public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            System.out.println("请输入一个数字: ");
            int howManyRows = input.nextInt();
            for (int row = 1; row <= howManyRows+1; row++) {
                for (int col = 1; col <= row - 1; col++) {
                    System.out.print("  ");
                }
                for (int col = 1; col <= howManyRows-row +1; col++) {
    
                    System.out.print(col+" ");
                }
                System.out.println();
            }
        }

    2、根据手动输入数字,打印该数字的直角三角形(直角在左下方)

    例如:输入数字为5,打印如下所示图形


    5 4 
    5 4 3 
    5 4 3 2 
    5 4 3 2 1

        public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            System.out.println("请输入一个数字: ");
            int howManyRows = input.nextInt();
            for (int row = 1; row <= howManyRows ; row++) {
                for (int col = howManyRows; col > howManyRows - row ; col--) {
                    System.out.print(col+" ");
                }
                System.out.println();
            }
        }

    3、根据手动输入数字,打印该数字的直角三角形(直角在右下方)

    例如:输入数字为5,打印如下所示图形    

                  5 
               4 5 
            3 4 5 
         2 3 4 5 
      1 2 3 4 5 

       public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            System.out.println("请输入一个数字: ");
            int howManyRows = input.nextInt();
            for (int row = 0; row < howManyRows ; row++) {
                for (int col = 1 ; col <= howManyRows-row; col++){
                    System.out.print("  ");
                }
                for (int col = howManyRows-row ; col <= howManyRows; col++) {
                    System.out.print(col+" ");
                }
                System.out.println();
            }
        }

    4、根据手动输入数字,打印该数字的直角三角形(直角在左上方)

    例如:输入数字为5,打印如下所示图形    

    5 4 3 2 1 
    5 4 3 2 
    5 4 3 
    5 4 

       public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            System.out.println("请输入一个数字: ");
            int howManyRows = input.nextInt();
            for (int row = 0; row <= howManyRows; row++) {
                for (int col = 5; col > row ; col--) {
                    System.out.print(col+" ");
                }
                System.out.println();
            }
        }

    5、根据手动输入数字,打印该数字的等边三角形(正三角形)

    例如:输入数字为5,打印如下所示图形

            5
          4  5 
        3  4  5 
      2  3  4  5 
    1  2  3  4  5 

        public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            System.out.println("请输入一个数字: ");
            int howManyRows = input.nextInt();
            for (int row = 0; row < howManyRows ; row++) {
                for (int col = howManyRows ; col > row;col--){
                    System.out.print(" ");
                }
                for (int col = howManyRows-row ; col <= howManyRows; col++) {
                    System.out.print(col+" ");
                }
    
                System.out.println();
            }
        }

    6、根据手动输入数字,打印该数字的等边三角形(倒三角形)

    例如:输入数字为5,打印如下所示图形    

    1 2 3 4 5 
     2 3 4 5 
      3 4 5 
       4 5 
        5

       public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            System.out.println("请输入一个数字: ");
            int howManyRows = input.nextInt();
            for (int row = 0; row < howManyRows ; row++) {
                for (int col = 0; col <= row - 1; col++) {
                    System.out.print(" ");
                }
                for (int col = row+1 ; col <= howManyRows; col++) {
                    System.out.print(col+" ");
                }
                System.out.println();
            }
        }

    总结:可以是数字显示的形式打印三角形,也可以是 ' * '号形式打印三角形

    思路:1、首先要考虑要什么形式的三角形,考虑循环次数(第一层循环)

               2、那些三角形空格怎么做的,也是要考虑每行要空多少空格也是在(第二层循环)(不需                  要空格的不考虑这一步)

               3、从哪个数字开始,每行的特点(第二层循环)

    展开全文
  • 打印数字三角形的一些小小的改进

     Java语言程序设计与数据结构(基础篇)第5章 课后练习题_leonard_pku的博客-CSDN博客_java第五章课后编程题

     首先感谢大佬的启发,本人只是在大佬的基础上进行的一点点小小的改进

    package com.Project2;
    import java.util.Scanner;
    
    public class Test17 { public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.println("请输入一个整数:");
        int number = input.nextInt();
        for (int i = 0; i < number; i++)    //一行一行的输出
        {
            for (int j = 0; j < number - i - 1; j++)    //输出空格
                System.out.printf("    ");
            for (int j = i +1 ;j > 0; j--)    //输出1及其左边的数字
                System.out.printf("%4d", j );
            for (int j = 0; j <  i; j++)   //输出1(不含)其右边的数字
                System.out.printf("%4d",j + 2);
            for (int j = 0; j < number - i - 1; j++)    //输出空格
                System.out.printf("    ");
    
    
            System.out.println();
        }
    
    }
    
    }
    

    其实只是换了个角度理解,但是感觉上简单了不少。

    展开全文
  • 使用java打印三角形

    2021-10-03 17:37:47
    打印三角形: 1.了解for循环 语法结构: for(初始化变量;判断条件;更新变量){ …代码块/循环体… } 执行顺序: 1.第一次进入到循环中,初始化变量1次 2.判断条件 - 结果必须是boolean类型 2.1...
  • Java - 打印三角形

    2021-01-13 20:23:04
    解决思路:先输出空格形式的倒置的三角形,每行输出行数 n*2-1 数量的" * “,得到三角形(为了显示方便,将” “替换成”-") 代码: import java.util.Scanner; public class Triangle { public static void ...
  • Java打印直角三角形

    2021-03-04 00:53:14
    public class Test14 { public static void main(String[] args) { //控制行数 for (int i = 1; i <= 5; i++) { for (int j = 1; j <= i; j++) { System.out.print("*"); } ... System.o
  • 如何在java打印数字三角形

    千次阅读 2021-07-16 15:14:13
    I need to produce a triangle as shown:122333444455555and my code is:int i, j;for(i = 1; i <= 5; i++){for(j = 1; j <= i; j++){System.out.print(i);}System.out.print("\n");}Producing a triangle the...
  • JAVA实现打印三角形

    2021-12-08 10:50:46
    总结就是:外层循环控行数内层循环控个数(最外层的for循环控制打印的行数,内层的循环控制打印三角形的个数) 控制台打印三角形 public static void getStar(){ Scanner input = new Scanner(System.in); ...
  • I am trying to print the following using a nested loop in Java:1 2 3 4 5 61 2 3 4 51 2 3 41 2 31 21but it's coming out like the following:1 2 3 4 5 62 3 4 5 63 4 5 64 5 65 66Here is my code:for (int i...
  • Java打印三角形(双层for循环) 1.第一个三角形: 打印样式: 外层for循环控制行数,内层for循环控制“*”的个数 public static void demo01(){ //行数:4行 for(int i=1;i<=4;i++){ /* 找规律: 第一行...
  • Java打印三角形

    2021-05-23 09:12:15
    Java打印三角形 思路详解:打印三角形就是把一个矩形分为4分,取中间两份,左右两份输出空值即可 public class Trangle { public static void main(String[] args) { //打印三角形5行 for (int i = 1; i <=5; ...
  • 杨辉三角形数字排列,可以把它看成一个数字表,其基本特征是两侧数值为1,其他位置的数值是其正上方的数值与左上角数值之和.创建YanghuiTriangle类,在该类的主方法中创建一个二维数组,并指定二维数组的第一维长度,这...
  • 打印正直角三角形,代码如下: public class Dome2 { public static void main(String[] args) { //星星行数 for (int i = 0; i < 5; i++) { //星星个数 for (int j = 0; j <= i; j++) { ...
  • 1、实现直角三角形效果: 源代码:package square;public class SanJiao {public static void main(String[] args) {int i, j;for (i = 0; i < 10; i++) {for (j = 0; j < 9 - i; j++) {// 打印空格System.out...
  • import java.util.Scanner; public class San { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); System.out.print("请输入一个数字 "); int n=scanner.nextInt(); for...
  • 使用java打印直角三角形(朝左)

    万次阅读 2018-06-02 14:35:59
    声明:图形的打印考验的是逻辑思维能力,与计算机语言熟练程度无关。逻辑思维能力弱的同鞋,做不了研发可以做开发。一、效果图代码:package com.test; /** * 直角三角形 * @author PETER * */ public class ...
  • 打印任意大小的空心三角形java
  • 打印出杨辉三角形(要求打印出10行) 思路 找规律,除了第一和第二行,其余每行都是开头结尾是1 且数字等于上一行左右两边的和 为了格式好看,用二维数组,默认全是0,遇到有数字就赋值,没数字的保持0,打印的...
  • 打印数字三角形

    千次阅读 2019-10-24 10:41:51
    程序目标:打印数字三角形。(重点在于找规律) 数据:需要打印的行数。 步骤: 1.提示用户输入需要打印的行数; 2.根据所需输出的三角形进行for循环嵌套; 3.重点在于找出每一行的规律,注意使用printf来控制...
  • 效果如图: 思路:找规律,每一排的"*"个数依次为:1,3,5,7...,2n-1;... System.out.print("请输入要打印三角形的行数:"); int n; //这里加了while死循环用来避免输入的数值不合理等情况 while(.
  • JAVA 打印三角形

    2020-12-19 07:37:13
    3、建立1号空白三角形 可以看,第一行是输出4个空格,第二行输出3个空格,第三行输出2个,第四行输出1个,第五行没有 从这个规律可以看出,是依次递减的规律,那么如何实现呢? 我们可以想象从1到5,中间有四个数字...
  • * 功能:使用for循环嵌套打印直角三角形 * 作者:孤梦 * 日期:2022年03月08日 */ public class practice02 { public static void main(String[] args) { int i, j; //定义两个变量 for (i = 1;i <= 9; i+...
  • class T { public static void main(String[] args) { int i,j,k=1; System.out.println("直角三角形,左上"); for(i=5;i!=0;--i) { for(j=i;j!=0;--j) System.out.print("*"); System.out.println(); } Sys...
  • 思路分析 代码实现 拓展 用Java输出空心菱形 思路分析: 先死后活 优化: 缺点: 代码实现 方法2(上下部分) 目标: 思路分析 先死后活 优化: 缺点: 代码实现
  • import java.util.*; public class Pascals_triangle_print { public static void main(String[] args) { Scanner line = new Scanner(System.in); System.out.println("How many lines do you want to ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,222
精华内容 2,888
关键字:

java打印数字三角形

友情链接: DepartmentTreeView.rar