对称图像输出问题(for循环 ,取绝对值的利用)
目录
1.问题引入
2.简单分析:
3.总结
1.问题引入
即这个图形
看着好像挺简单,如果要用 for 循环输出应该怎么实现呢?
2.简单分析:
按照行数增加:
行数 | 1 | 2 | 3 | 4 | 5 |
前方空白数 | 2 | 1 | 0 | 1 | 2 |
星号数 | 1 | 3 | 5 | 3 | 1 |
后方空白数 | 2 | 1 | 0 | 1 | 2 |
似乎具有对称性,但是简单的 for 循环只能递增或递减输出,该怎么实现对称性呢?
不妨这样想:以中间的一行为 参考参数(本题以3为例) 每行分别减它(或被减)
就可得到:-2 -1 0 1 2 是不是快成功了?现在只要利用取绝对值函数就行了
具体代码及例子如下:
package first_class_study;public class Drawing {public static void main(String args[]) {drawing(5);System.out.println("--------------");drawing(6);System.out.println("--------------");drawing(7);System.out.println("--------------");drawing(8); }public static void drawing(int Line) {for(int i = 1;i <= Line ;i++ ) {//控制行数for(int j=Math.abs((Line+1)/2-i);j > 0;j--) {//打印前方空白段System.out.print(" ");}for(int starsNums = Line-2*Math.abs((Line+1)/2-i);starsNums > 0;starsNums-- ) {System.out.print("*");//打印中间星号}for(int j=Math.abs((Line+1)/2-i);j > 0;j--) {//打印后方空白段System.out.print(" ");}System.out.println();//一行结束换行}}}
3.总结
1.可以看出,此对称只针对奇数情况下,若想偶数满足,则按照相同思路利用 if 语句再处理就行
2.要注意数据间的交互,而非手动输入具体的数据造成更改繁索;但是要合理利用,防止一子落下,满盘皆输
3.有对称要求时,可先找对称中心,再用Math方法(比如 Math.abs() 取绝对值)处理。
希望能对你有所启发
对称图像输出问题(for循环 ,取绝对值的利用)相关推荐
- 输入一个整数n及一个n阶方阵,判断该方阵是否以主对角线对称,输出“Yes”或“No”。
7-6 判断对称方阵 (10 分) 输入一个整数n及一个n阶方阵,判断该方阵是否以主对角线对称,输出"Yes"或"No". 输入格式: 首先输入一个正整数T,表 ...
- MATLAB利用均值滤波的方法去除图像的噪声,将滤除噪声前后的图像输出。
利用均值滤波的方法去除图像的噪声,将滤除噪声前后的图像输出.调用imfilter函数滤除图像噪声并输出,对比调用MATLAB函数去噪的图像与自己所编写程序去噪后的图像进行对比. clc; A=imre ...
- matlab函数图像输出坐标点,如何将matlab得到的多张函数图像显示在一个坐标图像中? 就是函数图像参数改变,图像改变。...
中间加个短语 hold on (如下:hold 住噢!)a=1,b=2;y1=a+b*x^3... polar(rou,theta)是极坐标画图要画两个图只要polar(rou1,th... 如果要画 ...
- 【AIGC提示工程 - MidJourney教程:二】《MidJourney参数大全指南:实现最佳图像输出的关键》
关注元壤教育公众号系统学习AIGC提示工程课程. 更多AIGC好博客,请移步访问AIGC博客派 这篇文章介绍了不同的MidJourney参数和提示词,帮助你创建你选择的图像.探索如何使用不同的风格和参 ...
- Java 编写程序打印以下图形_怎么用java编写如下程序在屏幕上输出如下图形 * *** *** * 循环语句做(if语句)...
怎么用java编写如下程序在屏幕上输出如下图形 * *** ***** ******* ***** ... 4个答案 提问时间: 2011-12-16 22个赞 回答:这个图形对吧? * *** ...
- 深入Android系统(十二)Android图形显示系统-2-SurfaceFlinger与图像输出
最近有些忙,切实体验了一把拖更的羞耻感 ( *︾▽︾) 本文和上一篇深入Android系统(十二)Android图形显示系统-1-显示原理与Surface关系比较密切,撸完前篇更易理解本文啦 (๑‾ ...
- Python 格式化输出和while循环的两个小练习
练习1.模拟登陆判断(3次机会) r_name = 'xianyu' r_password = '123456'i = 3 # 用来控制循环次数while i > 0:name = input( ...
- 多线程循环输出abcc++_C ++循环| 查找输出程序| 套装4
多线程循环输出abcc++ Program 1: 程序1: #include <iostream> using namespace std; int A = 5; int fun() { ...
- 多线程循环输出abcc++_C ++循环| 查找输出程序| 套装5
多线程循环输出abcc++ Program 1: 程序1: #include <iostream> using namespace std; int main() { int num = ...
最新文章
- python学习笔记(一)之入门
- 第十六课.基于K-means的图像分割
- linux下的apache、mysql自启动
- 使用 jQuery Deferred 和 Promise 创建响应式应用程序
- HDU2020 绝对值排序
- 文巾解题 797. 所有可能的路径
- 【深搜】 棋盘 【NOIp普及组 2017 第三题】 (luogu 3956/ssl 2851)
- python给js变量赋值_python 之 前端开发( JavaScript变量、数据类型、内置对象、运算符、流程控制、函数)...
- Consider defining a bean named 'entityManagerFactory' in your configuration解决办法
- 三星Galaxy S22 Ultra真机首曝:颜值与实力并存堪称完美
- 计算机组装内部线的整理,计算机组装与维护笔记整理.doc
- Oracle常用函数笔记
- 如何利用 Flutter 实现炫酷的 3D 卡片和帅气的 360° 展示效果
- Windows server 2012 R2 无法安装vc2015
- 内容分发网络:请简述 CDN 回源如何工作?
- uni-app 倒计时组件
- 开关磁阻电机的直接瞬时转矩控制(DITC)
- 【贪心法】基站布置问题
- 基于Qemu在ubuntu上构建linux学习环境
- kotlin Unresolved reference报错解决记录
热门文章
- 英语和c语言哪个难,英语四级跟高考哪个难?90%的人都会这么说!
- Linux社区沉痛悼念Ian Murdock的离世
- 通过Gson解析Json数据
- 解决M1芯片 MAC 下 Goland(Intellij系列都适用) 无法 Debug 的问题
- c语言单片机实训心得体会,单片机实训心得体会_单片机实习感悟与收获
- serverlet 原理_Serverlet具体解释
- 烤仔说· ConDragon | 什么?烤仔居然是个龙骑士?
- DSP SD_FAT32
- 个人学习笔记——庄懂的技术美术入门课(美术向)02
- 静态变量、动态变量、内部变量(局部变量)、外部变量(全局变量)