Java打印图形 九九乘法表

目录

  • 双重循环
    • 九九乘法表
    • 打印长方形
    • 打印平行四边形
    • 打印三角形
    • 打印菱形
    • 打印空心菱形
  • 三重循坏
    • 百钱买百鸡

双重循环

九九乘法表

在Java中,你可以使用嵌套的for循环来打印九九乘法表。以下是一个简单的示例:

public class Main {
    public static void main(String[] args) {
        for (int i = 1; i <= 9; i++) {
            for (int j = 1; j <= i; j++) {
                System.out.print(j + "x" + i + "=" + i * j + "\t");
            }
            System.out.println();
        }
    }
}

在这里插入图片描述

这段代码的工作原理如下:

  1. 外层循环(由变量 i 控制)负责处理乘法表的每一行。因为九九乘法表有9行,所以 i 的值从1到9。
  2. 内层循环(由变量 j 控制)负责处理每一行中的每一个乘法表达式。因为每一行的乘法表达式数量与行数相同,所以 j 的值从1到 i
  3. 在内层循环中,我们使用 System.out.print 来打印每一个乘法表达式,然后使用 System.out.println 在每一行的末尾添加一个新行。
  4. \t 是一个制表符,用于在每个乘法表达式之间添加一些空间,使输出更易读。

打印长方形

  for(int j=1;j<=4;j++){//j:控制行数
                        //*********
                        for(int i=1;i<=9;i++){//i:控制*的个数
                                System.out.print("*");
                        }
                        //换行:
                        System.out.println();
                }

打印平行四边形

for(int j=1;j<=4;j++){//j:控制行数
                        //加入空格:
                        for(int i=1;i<=(9-j);i++){//i:控制空格的个数
                                System.out.print(" ");
                        }
                        //*********
                        for(int i=1;i<=9;i++){//i:控制*的个数
                                System.out.print("*");
                        }
                        //换行:
                        System.out.println();
                }

打印三角形

for(int j=1;j<=4;j++){//j:控制行数
                        //加入空格:
                        for(int i=1;i<=(9-j);i++){//i:控制空格的个数
                                System.out.print(" ");
                        }
                        //*********
                        for(int i=1;i<=(2*j-1);i++){//i:控制*的个数
                                System.out.print("*");
                        }
                        //换行:
                        System.out.println();
                }

打印菱形

                for(int j=1;j<=4;j++){//j:控制行数
                        //加入空格:
                        for(int i=1;i<=(9-j);i++){//i:控制空格的个数
                                System.out.print(" ");
                        }
                        //*********
                        for(int i=1;i<=(2*j-1);i++){//i:控制*的个数
                                System.out.print("*");
                        }
                        //换行:
                        System.out.println();
                }
                
                //下面三角形:
                for(int j=1;j<=3;j++){//j:控制行数
                        //加入空格:
                        for(int i=1;i<=(j+5);i++){//i:控制空格的个数
                                System.out.print(" ");
                        }
                        //*********
                        for(int i=1;i<=(7-2*j);i++){//i:控制*的个数
                                System.out.print("*");
                        }
                        //换行:
                        System.out.println();
                }

打印空心菱形

//上面三角形:
                for(int j=1;j<=4;j++){//j:控制行数
                        //加入空格:
                        for(int i=1;i<=(9-j);i++){//i:控制空格的个数
                                System.out.print(" ");
                        }
                        //*********
                        for(int i=1;i<=(2*j-1);i++){//i:控制*的个数
                                if(i==1||i==(2*j-1)){
                                        System.out.print("*");
                                }else{
                                        System.out.print(" ");
                                }
                        }
                        //换行:
                        System.out.println();
                }
                
                //下面三角形:
                for(int j=1;j<=3;j++){//j:控制行数
                        //加入空格:
                        for(int i=1;i<=(j+5);i++){//i:控制空格的个数
                                System.out.print(" ");
                        }
                        //*********
                        for(int i=1;i<=(7-2*j);i++){//i:控制*的个数
                                if(i==1||i==(7-2*j)){
                                        System.out.print("*");
                                }else{
                                        System.out.print(" ");
                                }
                        }
                        //换行:
                        System.out.println();
                }

三重循坏

百钱买百鸡

百钱买百鸡是一个经典的数学问题,源自中国古代的《张丘建算经》。问题描述如下:

  • 一个农夫有100枚钱币,他需要买100只鸡。公鸡5枚钱币一只,母鸡3枚钱币一只,小鸡1枚钱币三只。请问,农夫应该如何买才能确保用完所有的钱币且买到100只鸡?
public class BaiQianMaiBaiJi {
    public static void main(String[] args) {
        for (int i = 0; i <= 20; i++) { // 公鸡最多可以买20只
            for (int j = 0; j <= 33; j++) { // 母鸡最多可以买33只
                int totalCost = 5 * i + 3 * j + (100 - i - j) / 3; // 计算总花费
                if (totalCost == 100 && (100 - i - j) % 3 == 0) { // 检查是否满足条件
                    System.out.println("公鸡数量: " + i);
                    System.out.println("母鸡数量: " + j);
                    System.out.println("小鸡数量: " + (100 - i - j));
                }
            }
        }
    }
}

在这里插入图片描述

这个程序使用两个嵌套的for循环来遍历公鸡和母鸡的可能数量。然后,它计算出总花费,并与100枚钱币进行比较。如果总花费等于100枚钱币,并且小鸡的数量是3的倍数(即小鸡数量可以被3整除),那么就找到了一个解。这个解将输出公鸡、母鸡和小鸡的数量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/364599.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Qt实现类似ToDesk顶层窗口 不规则按钮

先看效果&#xff1a; 在进行多进程开发时&#xff0c;可能会遇到需要进行全局弹窗的需求。 因为平时会使用ToDesk进行远程桌面控制&#xff0c;在电脑被控时&#xff0c;ToDesk会在右下角进行一个顶层窗口的提示&#xff0c;效果如下&#xff1a; 其实要实现顶层窗口&#xf…

sql指南之null值用法

注明&#xff1a;参考文章&#xff1a; SQL避坑指南之NULL值知多少&#xff1f;_select null as-CSDN博客文章浏览阅读2.9k次&#xff0c;点赞7次&#xff0c;收藏21次。0 引言 SQL NULL&#xff08;UNKNOW&#xff09;是用来代表缺失值的术语&#xff0c;在表中的NULL值是显示…

python打造光斑处理系统5:查看光强分布

文章目录 光斑分布峰值和均值三维分布 光斑处理&#xff1a;python处理高斯光束的图像 光斑处理系统&#xff1a;程序框架&#x1f31f;打开图像&#x1f31f;参数对话框/伪彩映射&#x1f31f;裁切ROI 光斑分布 光斑作为图像而言&#xff0c;其表现能力是有限的&#xff0c;…

Springboot-前后端分离——第三篇(三层架构与控制反转(IOC)-依赖注入(DI)的学习)

本篇主要对ControllerServiceDAO三层结构以及控制反转&#xff08;IOC&#xff09;与DI&#xff08;依赖注入&#xff09;进行总结。 目录 一、三层架构&#xff1a; Controller/Service/DAO简介&#xff1a; 二、控制反转(IOC)-依赖注入(DI): 概念介绍&#xff1a; DOC与…

EtherCAT FP介绍系列文章—UDP gateway

EtherCAT主站上的Mailbox Gateway功能&#xff0c;可以用于将EtherCAT mailbox相关协议从外部设备的工具通过邮箱网关路由到EtherCAT从站设备。在EtherCAT规范中定义的所有邮箱协议在此功能中都可用&#xff0c;例如CoE, FoE, VoE, SoE。 但是&#xff0c;这里特别注意的是Mai…

Autonomous_Exploration_Development_Environment的local_planner学习笔记

1.程序下载网址&#xff1a;https://github.com/HongbiaoZ/autonomous_exploration_development_environment 2.相关参考资料&#xff1a; https://blog.csdn.net/lizjiwei/article/details/124437157 Matlab用采样的离散点做前向模拟三次样条生成路径点-CSDN博客 CMU团队开…

Hbase-2.4.11_hadoop-3.1.3集群_大数据集群_SSH修改默认端口22为其他端口---记录025_大数据工作笔记0185

其实修改起来非常简单,但是在大数据集群中,使用到了很多的脚步,也需要修改, 这里把,大数据集群,整体如何修改SSH端口,为22022,进行总结一下: 0.hbase-2.4.11的话,hbase集群修改默认SSH端口22,修改成22022,需要修改 需要修改/opt/module/hbase-2.4.11/conf/hbase-env.sh 这里…

RocketMQ—RocketMQ快速入门

RocketMQ—RocketMQ快速入门 RocketMQ提供了发送多种发送消息的模式&#xff0c;例如同步消息&#xff0c;异步消息&#xff0c;顺序消息&#xff0c;延迟消息&#xff0c;事务消息等。 消息发送和监听的流程 消息生产者 创建消息生产者producer&#xff0c;并制定生产者组…

element-ui button 仿写 demo

基于上篇 button 源码分享写了一个简单 demo&#xff0c;在写 demo 的过程中&#xff0c;又发现了一个小细节&#xff0c;分享一下&#xff1a; 1、组件部分&#xff1a; <template><buttonclass"yss-button"click"handleClick":class"[ty…

基于python+django,我开发了一款药店信息管理系统

功能介绍 平台采用B/S结构&#xff0c;后端采用主流的Python语言进行开发&#xff0c;前端采用主流的Vue.js进行开发。 功能包括&#xff1a;药品管理、分类管理、顾客管理、用户管理、日志管理、系统信息模块。 代码结构 server目录是后端代码web目录是前端代码 部署运行…

Java的JVM学习一

一、java中的内存结构如何划分 栈和堆的区别&#xff1a; 栈负责处理运行&#xff0c;堆负债处理存储。 区域名称作用虚拟机栈用于存储正在执行的每个Java方法&#xff0c;以及其方法的局部变量表等。局部变量表存放了便器可知长度的各种基本数据类型&#xff0c;对象引用&am…

jmerter-01安装与界面介绍

文章目录 jmeter安装 jmeter安装 1.配置JDK环境 Jmeter到目前为止只支持java 8 2.解压JMeter安装包 就可以双击jmeter.bat 运行启动 3.运行过程中&#xff0c;不要关掉小黑窗 这个黑框不要关闭 jmeter图示

小程序:类型三级分类

一、效果图片 二、代码 <template><view class"customPosition"><!-- header --><navBar :border"false" :hasBack"true" :title"titleName"></navBar><!-- 查询 --><view class"search…

极易录用!并行结构!GAF-PCNN-AT格拉姆角场和双通道PCNN融合注意力机制的分类/故障识别程序!Excel导入,直接运行

适用平台&#xff1a;Matlab2023版本及以上 本程序参考中文EI期刊《电力自动化设备》12月29号网络首发文献&#xff1a;《基于格拉姆角场与并行CNN的并网逆变器开关管健康诊断》,此外&#xff0c;在此基础上进一步对模型进行复现并改进&#xff0c;该论文推出时间短&#xff0…

HTML -- 常用标签

标签 表示HTML网页内容的一个最基本的组织单元&#xff0c;类似于语文中的标点符号&#xff0c; 标签的作用&#xff1a;告诉浏览器当前标签中的内容是什么&#xff0c;以什么格式在页面中进行呈现 单标签 单标签&#xff08;只有一个标签名的标签&#xff09;的标签格式&…

Open CASCADE学习|球面上曲线长度计算

球和球面是数学和物理学中非常重要的概念&#xff0c;它们在许多领域都有广泛的应用。 球面是指所有与固定点等距离的点的集合&#xff0c;这个固定点被称为球心&#xff0c;而这个等距离的长度就是球的半径。球面是一个二维曲面&#xff0c;它是三维空间中点与距离之间关系的…

2024年美赛F题Problem F Reducing Illegal Wildlife Trade减少非法野生动物贸易的完整思路代码分享

非法的野生动物贸易会对我们的环境产生负面影响&#xff0c;并威胁到全球的生物多样性。据估计&#xff0c;它每年涉及高达265亿美元&#xff0c;被认为是全球第四大非法交易。[1]你将开发一个由数据驱动的5年项目&#xff0c;旨在显著减少非法野生动物贸易。你的目标是说服一个…

IP协议(2) 和 数据链路层协议基础

IP协议续 1.路由选择 在复杂的网络结构中,我们需要找到一个通往终点的路线,这就是路由选择 举个例子:我们在没有手机导航之前,想去一个地方得是到一个地方问一下路的方式最终找到目的地 路由的过程,其实就是样子问路的过程 1.当IP数据包到达路由器的时候,会查看目的IP 2.路由器…

oracle 19c上安装样例数据库

样例schema的分类 HR: Human Resources OE: Order Entry PM: Product Media IX: Information Exchange SH: Sales History BI: Business Intelligence 安装样例数据库 1&#xff1a;HR的安装&#xff0c;通过dbca时候 2&#xff1a;HR的安装&#xff0c;安装完数据库后&#…

Jenkins+Allure+Pytest的持续集成

一、配置 allure 环境变量 1、下载 allure是一个命令行工具&#xff0c;可以去 github 下载最新版&#xff1a;https://github.com/allure-framework/allure2/releases 2、解压到本地 3、配置环境变量 复制路径如&#xff1a;F:\allure-2.13.7\bin 环境变量、Path、添加 F:\a…