java:打印十字图

article/2025/9/15 14:08:46

java:打印十字图

题目

问题描述
小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示:..$$$$$$$$$$$$$..
..$...........$..
$$$.$$$$$$$$$.$$$
$...$.......$...$
$.$$$.$$$$$.$$$.$
$.$...$...$...$.$
$.$.$$$.$.$$$.$.$
$.$.$...$...$.$.$
$.$.$.$$$$$.$.$.$
$.$.$...$...$.$.$
$.$.$$$.$.$$$.$.$
$.$...$...$...$.$
$.$$$.$$$$$.$$$.$
$...$.......$...$
$$$.$$$$$$$$$.$$$
..$...........$..
..$$$$$$$$$$$$$..
对方同时也需要在电脑dos窗口中以字符的形式输出该标志,并能任意控制层数。输入格式
一个正整数 n (n<30) 表示要求打印图形的层数。
输出格式
对应包围层数的该标志。
样例输入1
1
样例输出1
..$$$$$..
..$...$..
$$$.$.$$$
$...$...$
$.$$$$$.$
$...$...$
$$$.$.$$$
..$...$..
..$$$$$..
样例输入2
3
样例输出2
..$$$$$$$$$$$$$..
..$...........$..
$$$.$$$$$$$$$.$$$
$...$.......$...$
$.$$$.$$$$$.$$$.$
$.$...$...$...$.$
$.$.$$$.$.$$$.$.$
$.$.$...$...$.$.$
$.$.$.$$$$$.$.$.$
$.$.$...$...$.$.$
$.$.$$$.$.$$$.$.$
$.$...$...$...$.$
$.$$$.$$$$$.$$$.$
$...$.......$...$
$$$.$$$$$$$$$.$$$
..$...........$..
..$$$$$$$$$$$$$..
提示
请仔细观察样例,尤其要注意句点的数量和输出位置。

分析

https://blog.csdn.net/jopus/article/details/19091643

既然我们找到了它的一些思路,我们再来找一些他们的关系

在这里插入图片描述

其实我的思路是,我先把最中间的十字打印出来,之后再打印外层,外层基本上就是一样的模型,一层层进行扩大的,这样是不是就可以利用递归的方法

…$$$KaTeX parse error: Can't use function '$' in math mode at position 6: .. ..$̲...$.. . . ..$KaTeX parse error: Can't use function '$' in math mode at position 2: $̲...$...$ $.$KaTeX parse error: Can't use function '$' in math mode at position 2: .$̲ $...$...$ . . ..$KaTeX parse error: Can't use function '$' in math mode at position 4: ..$̲...$.. ..$$$…

在这里插入图片描述
在这里插入图片描述
也可以先打印中间的十,再打印旁边的点,在打印旁边的十

我觉得那后面还是变为分为三个部分打印这个图形

长为:5+4n
宽为:5+4
n

# java:打印十字图
## 题目```java
问题描述
小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示:..$$$$$$$$$$$$$..
..$...........$..
$$$.$$$$$$$$$.$$$
$...$.......$...$
$.$$$.$$$$$.$$$.$
$.$...$...$...$.$
$.$.$$$.$.$$$.$.$
$.$.$...$...$.$.$
$.$.$.$$$$$.$.$.$
$.$.$...$...$.$.$
$.$.$$$.$.$$$.$.$
$.$...$...$...$.$
$.$$$.$$$$$.$$$.$
$...$.......$...$
$$$.$$$$$$$$$.$$$
..$...........$..
..$$$$$$$$$$$$$..
对方同时也需要在电脑dos窗口中以字符的形式输出该标志,并能任意控制层数。输入格式
一个正整数 n (n<30) 表示要求打印图形的层数。
输出格式
对应包围层数的该标志。
样例输入1
1
样例输出1
..$$$$$..
..$...$..
$$$.$.$$$
$...$...$
$.$$$$$.$
$...$...$
$$$.$.$$$
..$...$..
..$$$$$..
样例输入2
3
样例输出2
..$$$$$$$$$$$$$..
..$...........$..
$$$.$$$$$$$$$.$$$
$...$.......$...$
$.$$$.$$$$$.$$$.$
$.$...$...$...$.$
$.$.$$$.$.$$$.$.$
$.$.$...$...$.$.$
$.$.$.$$$$$.$.$.$
$.$.$...$...$.$.$
$.$.$$$.$.$$$.$.$
$.$...$...$...$.$
$.$$$.$$$$$.$$$.$
$...$.......$...$
$$$.$$$$$$$$$.$$$
..$...........$..
..$$$$$$$$$$$$$..
提示
请仔细观察样例,尤其要注意句点的数量和输出位置。

分析

https://blog.csdn.net/jopus/article/details/19091643

既然我们找到了它的一些思路,我们再来找一些他们的关系

在这里插入图片描述

其实我的思路是,我先把最中间的十字打印出来,之后再打印外层,外层基本上就是一样的模型,一层层进行扩大的,这样是不是就可以利用递归的方法

…$$$KaTeX parse error: Can't use function '$' in math mode at position 6: .. ..$̲...$.. . . ..$KaTeX parse error: Can't use function '$' in math mode at position 2: $̲...$...$ $.$KaTeX parse error: Can't use function '$' in math mode at position 2: .$̲ $...$...$ . . ..$KaTeX parse error: Can't use function '$' in math mode at position 4: ..$̲...$.. ..$$$…

在这里插入图片描述
在这里插入图片描述
也可以先打印中间的十,再打印旁边的点,在打印旁边的十

我觉得那后面还是变为分为三个部分打印这个图形

长为:5+4n
宽为:5+4
n

代码

import java.util.Scanner;public class 打印十字图 {public static void getResult(int n){int len=5+4*n;//长和宽都是这个长度int mid=len/2;//中间的数据,9/2=4char[][] arr=new char[len][len];//长宽都一样,对称的//先初始化图形for(int i=0;i<len;i++)for(int j=0;j<len;j++)arr[i][j]='.';//将图形初始化都为.//把中间的十字写出来for(int i=mid-2;i<=mid+2;i++){//记住他们都是从0开始的arr[mid][i]='$';//这个用了一个很巧的方法,先写的是竖着的arr[i][mid]='$';//数组里面的可以覆盖原来的值}for(int i=1;i<=n;i++){for(int j=mid-2*i;j<=mid+2*i;j++){arr[mid-2*(i+1)][j]='$';//外框竖arr[mid+2*(i+1)][j]='$';//外框右边的$arr[j][mid-2*(i+1)]='$';//外框高的$arr[j][mid+2*(i+1)]='$';//外框第的&}//左上角arr[mid-2*i][mid-2*i]='$';arr[mid-2*i-1][mid-2*i]='$';arr[mid-2*i][mid-2*i-1]='$';//右上角arr[mid+2*i][mid-2*i]='$';arr[mid+2*i+1][mid-2*i]='$';arr[mid+2*i][mid-2*i-1]='$';//右下角arr[mid+2*i][mid+2*i]='$';arr[mid+2*i+1][mid+2*i]='$';arr[mid+2*i][mid+2*i+1]='$';//左下角arr[mid-2*i][mid+2*i]='$';arr[mid-2*i-1][mid+2*i]='$';arr[mid-2*i][mid+2*i+1]='$';}for(int i=0;i<len;i++){for(int j=0;j<len;j++){System.out.print(arr[i][j]);}System.out.println();}}public static void main(String[] args) {// TODO Auto-generated method stubScanner sc=new Scanner(System.in);int n=sc.nextInt();getResult(n);}}


http://chatgpt.dhexx.cn/article/vIUoObOp.shtml

相关文章

JAVA 利用JFram,JPanel,JScrollPane简单文本框实现

****1.JFram 支持通用窗口的所有基本功能 2…JPanel是一个无边框&#xff0c;不可以被移动的&#xff0c;放大的&#xff0c;缩小的&#xff0c;或者关闭的面板&#xff0c;默认布局是FlowLayout&#xff08;也可用setLayout&#xff08;&#xff09;来设定&#xff09;** 3……

deflater java_Java Deflater finished()用法及代码示例

如果已到达压缩数据输出流的末尾&#xff0c;则java.util.zip中Deflater类的finished()函数将返回true。 函数签名&#xff1a; public boolean finished() 用法: d.finished(); 参数&#xff1a;该函数不需要参数 返回类型&#xff1a;该函数返回布尔值&#xff0c;即如果所有…

jQuery API ( 三 ) -------- 链式编程 与 修改样式方法

今天这篇文章是 jQuery API 的第三篇&#xff0c;今天心情很好&#xff0c;因为破了300粉&#xff0c;希望所有代码人前端人在编程与写作的路上都能一帆风顺&#xff0c;全都早日拿认证。okk言归正传&#xff0c;这篇文章将带大家走进链式编程的世界&#xff0c;这也是 jQuery …

jsfiddle 使用教程

最近有许多的Css 3 demo&#xff0c;因此为了方便查阅&#xff0c;就将demo部分放在 jsfiddle &#xff0c;方便日后翻阅。 这是 JSFIDDLE 的官网文档&#xff0c;都是英文&#xff0c;不过对照看还是可以的&#xff1a;官方文档 HTML区域&#xff1a; 它的HTML区域已经包含 ht…

Jfinal 框架 在Html页面使用 #if(调用java方法) #end

欢迎转发分享&#xff0c; 转发请附上本文地址&#xff1a; https://blog.csdn.net/Luoxianxun/article/details/106399780 一、实现需求 实现在html 中使用 #if(调用java类中的方法) #end&#xff1b; 二、使用技术 JFinal后台框架 JFinal 官方文档&#xff1a;https://jfi…

java文本框代码_Java Swing JTextField文本框的代码示例

1. 概述 官方JavaDocsApi: javax.swing.JTextField JTextField&#xff0c;文本框。JTextField 用来编辑单行的文本。 JTextField 常用构造方法: /* * 参数说明: * text: 默认显示的文本 * columns: 用来计算首选宽度的列数&#xff1b;如果列设置为 0&#xff0c;则首选宽度将…

java的StringBuilder、Stringjoiner

一、StringBuilder StringBuilder可以看成是一个容器&#xff0c;创建之后里面的内容是可变的。作用是提高字符串的操作效率。 注意&#xff1a;使用String创建字符串对象时&#xff0c;是不能改变字符串的内容的&#xff0c;例如&#xff1a; String s1 "aaa"; St…

swing的JTextField的介绍及其使用方法

:JTextField的(文本框)使用: JTextField 是一个轻量级组件&#xff0c;它允许编辑单行文本。 1.JTextField的常用构造方法: JTextField() 构造一个新的 TextField。 JTextField(int columns) 构造一个具有指定列数的新的空 TextField。 JTextField(String text) 构造一个用…

十字链表简介与实现(Java)

十字链表简介与实现&#xff08;Java&#xff09; 结构实现 结构 十字链表存储有向图&#xff08;网&#xff09;的方式与邻接表有一些相同&#xff0c;都以图&#xff08;网&#xff09;中各顶点为首元节点建立多条链表&#xff0c;同时为了便于管理&#xff0c;还将所有链表…

Java输出一个*号十字架

总共9行 每一行4个空格除了第五行不要空格 每一行1个*除了第五行需要9个* 利用for的循环嵌套方法&#xff0c;用三个for 从上往下 第一个for代表行数&#xff0c;第二个for代表空格数&#xff0c;第三个for代表输出的*数 做法如下:

Java 写一个简单的"十字"

如何用代码写出十字&#xff1f; 首先创建一个新的Package&#xff0c;如图&#xff1a; 取一个com.➕名字缩写和日期&#xff0c;下一行写public class 类名&#xff0c;后面加上一个{ },在它的中间写上public static void main&#xff08;String[] args){, 如图&#xff1a…

JTextField的部分常用使用方法

本篇文章将会教会大家如何使用JTextField输入框 1.创建JTextField和添加 //创建输入框 JTextField jTextField new JTextField(); //将标签添加到面板里 jPanel.add(jTextField);2设置JTextField大小坐标 //设置输入框大小 jTextField.setSize(300,100); //设置输入框坐标…

Exists 用法解释

exists的实例解析 现有两个表 a&#xff1a; b: 现有sql语句如下 select * from a where exists (select 1 from b where b.b_id a.id); 执行结果如下&#xff1a; 含义解析&#xff1a;exists 的意思是用于检查子查询是否至少会返回一行数据&#xff0c;该子查询实际上并不…

MySQL中的EXISTS用法

EXISTS 语法&#xff1a; SELECT 字段 FROM table WHERE EXISTS (subquery); 参数&#xff1a; subquery是一个受限的SELECT语句&#xff08;不允许有COMPUTE子句和INTO关键字&#xff09; 示例&#xff1a; SELECT * FROM A WHERE EXISTS (SELECT 1 FROM B WHERE B.id …

EXISTS用法

EXISTS用于检查子查询是否至少会返回一行数据&#xff0c;该子查询实际上并不返回任何数据&#xff0c;而是返回值True或False 方法/ 1 EXISTS用于检查子查询是否至少会返回一行数据&#xff0c;该子查询实际上并不返回任何数据&#xff0c;而是返回值True或False EXISTS 指定一…

hivesql中 exists 用法

有一次面试的时候&#xff0c;面试官问了这么一个场景题&#xff1a;一家门店一个月内每位顾客访问的目的可能有多种&#xff0c;并给到访顾客的目的打标签1、2、3、4这四类&#xff0c;现在要统计这家门店一个月内没有3、4标签的顾客明细。&#xff08;也就是顾客到访标签只有…

mysql中not exists用法_not exists用法

not exists是sql中的一个语法,常用在子查询和主查询之间,用于条件判断,根据一个条件返回一个布尔值,从而来确定下一步操作如何进行,not exists也是exists或in的对立面。 not exists 是exists的对立面,所以要了解not exists的用法,我们首先了解下exists、in的区别和特点:…

Hive exists 用法

where exists(select c2/1/*/key2 from tb2 where tb2.key2 = tb1.key1) exists()中的select后面跟其他字段也行,where后面用关联字段即可! selec * : in :

SQL中EXISTS的用法

比如在Northwind数据库中有一个查询为 SELECT c.CustomerId,CompanyName FROM Customers c WHERE EXISTS( SELECT OrderID FROM Orders o WHERE o.CustomerID=c.CustomerID) 这里面的EXISTS是如何运作呢?子查询返回的是OrderId字段,可是外面的查询要找的是CustomerID和Compan…

在Android手机上使用MACE实现图像分类

前言 在之前笔者有介绍过《在Android设备上使用PaddleMobile实现图像分类》&#xff0c;使用的框架是百度开源的PaddleMobile。在本章中&#xff0c;笔者将会介绍使用小米的开源手机深度学习框架MACE来实现在Android手机实现图像分类。 MACE的GitHub地址&#xff1a;https://…