Java 基础-08:打印三角形

2023-05-16

目录

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、从哪个数字开始,每行的特点(第二层循环)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java 基础-08:打印三角形 的相关文章

  • Gradle 构建错误:无法从 https://repo1.maven.org/maven2/io/fabric/tools/gradle/maven-metadata.xml 加载 Maven 元数据

    我在 Android studio 中遇到 gradle 构建错误 如下所示 Error A problem occurred configuring project MyApp Could not resolve all dependen
  • Spring应用中Eureka健康检查的问题

    我正在开发一个基于 Spring 的应用程序 其中包含多个微服务 我的一个微服务充当尤里卡服务器 到目前为止一切正常 在我所有其他微服务中 用 EnableEurekaClient 我想启用这样的健康检查 应用程序 yml eureka c
  • 为 java 游戏创建交互式 GUI

    大家好 我正在创建一个类似于 java 中的 farmville 的游戏 我只是想知道如何实现用户通常单击以与游戏客户端交互的交互式对象 按钮 我不想使用 swing 库 通用 Windows 看起来像对象 我想为我的按钮导入自定义图像 并
  • Pig Udf 显示结果

    我是 Pig 的新手 我用 Java 编写了一个 udf 并且包含了一个 System out println 其中的声明 我必须知道在 Pig 中运行时该语句在哪里打印 假设你的UDF 扩展了 EvalFunc 您可以使用从返回的 Log
  • 如何在 Spring 中禁用使用 @Component 注释创建 bean?

    我的项目中有一些用于重构逻辑的通用接口 它看起来大约是这样的 public interface RefactorAwareEntryPoint default boolean doRefactor if EventLogService wa
  • 如何更改javaFX中按钮的图像?

    我正在使用javaFX 我制作了一个按钮并为此设置了图像 代码是 Image playI new Image file c Users Farhad Desktop icons play2 jpg ImageView iv1 new Ima
  • 谷歌应用程序引擎会话

    什么是java应用程序引擎 默认会话超时 如果我们将会话超时设置为非常非常长的时间 会不会产生不良影响 因为谷歌应用程序引擎会话默认情况下仅存储在数据存储中 就像facebook一样 每次访问该页面时 会话仍然永远存在 默认会话超时设置为
  • 来自 dll 的 Java 调用函数

    我有这个 python 脚本导入zkemkeeperdll 并连接到考勤设备 ZKTeco 这是我正在使用的脚本 from win32com client import Dispatch zk Dispatch zkemkeeper ZKE
  • Java 集合的并集或交集

    建立并集或交集的最简单方法是什么Set在 Java 中 我见过这个简单问题的一些奇怪的解决方案 例如手动迭代这两个集合 最简单的单行解决方案是这样的 set1 addAll set2 Union set1 retainAll set2 In
  • jdbc mysql loginTimeout 不起作用

    有人可以解释一下为什么下面的程序在 3 秒后超时 因为我将其设置为在 3 秒后超时 12秒 我特意关闭了mysql服务器来测试mysql服务器无法访问的这种场景 import java sql Connection import java
  • 像 Java 这样的静态类型语言中动态方法解析背后的原因是什么

    我对 Java 中引用变量的动态 静态类型和动态方法解析的概念有点困惑 考虑 public class Types Override public boolean equals Object obj System out println i
  • volatile、final 和synchronized 安全发布的区别

    给定一个带有变量 x 的 A 类 变量 x 在类构造函数中设置 A x 77 我们想将 x 发布到其他线程 考虑以下 3 种变量 x 线程安全 发布的情况 1 x is final 2 x is volatile 3 x 设定为同步块 sy
  • Spring Boot Data JPA 从存储过程接收多个输出参数

    我尝试通过 Spring Boot Data JPA v2 2 6 调用具有多个输出参数的存储过程 但收到错误 DEBUG http nio 8080 exec 1 org hibernate engine jdbc spi SqlStat
  • 如何访问JAR文件中的Maven资源? [复制]

    这个问题在这里已经有答案了 我有一个使用 Maven 构建的 Java 应用程序 我有一个资源文件夹com pkg resources 我需要从中访问文件 例如directory txt 我一直在查看各种教程和其他答案 但似乎没有一个对我有
  • 关键字“table”附近的语法不正确,无法提取结果集

    我使用 SQL Server 创建了一个项目 其中包含以下文件 UserDAO java public class UserDAO private static SessionFactory sessionFactory static se
  • 专门针对 JSP 的测试驱动开发

    在理解 TDD 到底是什么之前 我就已经开始编写测试驱动的代码了 在没有实现的情况下调用函数和类可以帮助我以更快 更有效的方式理解和构建我的应用程序 所以我非常习惯编写代码 gt 编译它 gt 看到它失败 gt 通过构建其实现来修复它的过程
  • 使用反射覆盖最终静态字段是否有限制?

    在我的一些单元测试中 我在最终静态字段上的反射中遇到了奇怪的行为 下面是说明我的问题的示例 我有一个基本的 Singleton 类 其中包含一个 Integer public class BasicHolder private static
  • 长轮询会冻结浏览器并阻止其他 ajax 请求

    我正在尝试在我的中实现长轮询Spring MVC Web 应用程序 http static springsource org spring docs 2 0 x reference mvc html但在 4 5 个连续 AJAX 请求后它会
  • CamcorderProfile.videoCodec 返回错误值

    根据docs https developer android com reference android media CamcorderProfile html 您可以使用CamcorderProfile获取设备默认视频编解码格式 然后将其
  • Spring Boot 无法更新 azure cosmos db(MongoDb) 上的分片集合

    我的数据库中存在一个集合 documentDev 其分片键为 dNumber 样本文件 id 12831221wadaee23 dNumber 115 processed false 如果我尝试使用以下命令通过任何查询工具更新此文档 db

随机推荐