JAVA题目:打印出如下图案(菱形)
1 package Training; 2 3 /** 4 * 打印菱形 5 * 6 * @author Administrator 7 * @version 1.0 8 */ 9 public class Diamond14 { 10 11 public static void main(String[] args) { 12 int line = 8;// 行数 13 int rank = 8;// 列数 14 getDiamondPicture(7, 7);// 行列数相等 且 同为奇数 的菱形 15 getDiamondPicture2(line, rank);// 行列数同为偶数 的菱形 16 } 17 18 /** 19 * 这个函数绘制 行列数相等 且 同为奇数 的菱形; 20 * 21 * @param line 22 * 总行数 23 * @param rank 24 * 总列数 25 * 26 */ 27 private static void getDiamondPicture(int line, int rank) { 28 int r = (rank / 2) + 1; 29 int mid = r; 30 for (int i = 1; i <= line; i++) { 31 // 打印上半部分 32 if (i <= mid) { 33 for (int j = 1; j <= r; j++) { 34 if (j <= mid - i) { 35 System.out.print(' '); 36 } else { 37 System.out.print('*'); 38 } 39 } 40 if (r < line) { 41 r++; 42 } 43 System.out.println(); 44 } 45 // 打印下半部分 46 else { 47 r--; 48 for (int j = 0; j < r; j++) { 49 if (j + mid < i) { 50 System.out.print(' '); 51 } else { 52 System.out.print('*'); 53 } 54 } 55 System.out.println(); 56 } 57 } 58 } 59 60 /** 61 * 这个函数绘制 行列数同为偶数 的菱形 62 * 63 * @param line 64 * @param rank 65 */ 66 private static void getDiamondPicture2(int line, int rank) { 67 for (int i = 0; i <= line; i++) { 68 for (int j = 0; j <= rank; j++) { 69 if (isInRhombus(i, j, line, rank)) { 70 System.out.print("*"); 71 } else { 72 System.out.print(" "); 73 } 74 } 75 System.out.println(); 76 } 77 } 78 79 /** 80 * 判断 81 * 82 * @param x 83 * @param y 84 * @param m 85 * @param n 86 * @return 87 */ 88 private static boolean isInRhombus(int x, int y, int m, int n) { 89 int s = m * n; 90 if (2 * n * x + 2 * m * y >= s && 2 * n * x - 2 * m * y <= s && -2 * n * x + 2 * m * y <= s 91 && 2 * n * x + 2 * m * y <= 3 * s) { 92 return true; 93 } 94 95 return false; 96 } 97 }
转载于:https://www.cnblogs.com/MoRua/p/8515060.html
JAVA题目:打印出如下图案(菱形)相关推荐
- C语言【程序21】 题目:打印出如下图案(菱形)
/*[程序21] 题目:打印出如下图案(菱形)********* **************** */ #include<stdio.h> int main() {int i,j;for ...
- 题目:python 打印出如下图案(菱形):
# 题目:打印出如下图案(菱形): # # * # *** # ***** # ******* # ***** # *** # * nu = 1 # 开始值 k = 2 # 变量值 while nu ...
- java 打印出如下图案(菱形)
题目: 打印出如下图案(菱形) 程序分析: 先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层控制行,第二层控制列. 代码部分: public class Prog ...
- Python 练习实例23 题目:打印出如下图案(菱形)
Python 练习实例23 Python 100例 Python 100例 题目:打印出如下图案(菱形): 解答: for i in range(1,5):print(' '*(4-i),end='' ...
- Java:用Java程序打印出所有的 “水仙花数 ”。
题目: 利用Java程序打印出所有的 "水仙花数 ".所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个 "水仙花数 ...
- python使用循环结构编程打印出如下图案_使用双层for循环编写程序,在屏幕上打印输出如下图案...
展开全部 回答即可62616964757a686964616fe59b9ee7ad9431333361303561得2分经验值第三章 循环程序在编程中经常遇到需要多次规律相同的重复处理,这就是循环问题 ...
- python 如何用*号打印出等腰三角形和菱形
在学习python的循环语句时,老师经常会要求我们用循环语句打印出三角形或菱形,今天俺就来演示演示如何用*打印出图形. 1.首先来看看如何打印出等腰三角形(如图): layer = int(input ...
- java日历打印出的格式不对_Java打印某年某月的日历 没有错误但是运行出的月份与实际不符 求大神指导...
Java打印某年某月的日历 没有错误但是运行出的月份与实际不符 求大神指导 我看了一下日历,发现你打出来的其实是九月份而不是八月份,那么我猜在showPrint这里的第二个参数是从0开始的,即0~11 ...
- 【Python AsciiArt】利用命令行打印出字符图案
利用字符串生成工具可以方便的打印出自己想要字符图案,以及如何将图片转换为ASCII ART输出. 最终可以用命令行输出各种彩色图像---->> 一般字符图案 我们在使用一些开源软件的时候, ...
- 使用Java语言打印一个爱心图案
我们可以使用Java的输出语句来打印一个爱心图案.下面是一个简单的爱心图案的Java程序: public class PrintLove {public static void main(String ...
最新文章
- Clusterware 和 RAC 中的域名解析的配置校验和检查 (文档 ID 1945838.1)
- maven详解之生命周期与插件
- 某云数据中心网络解决方案(分享二十一)
- Windows下卸载Oracle
- PowerDesigner中设置数据库类型,设置default value,Comment,自增属性,以及数据库设计中的需要考虑的示项,带有小数点的数据显示
- php rmdir 返回值,php通过rmdir删除目录的简单用法
- java的debug模式_java第六章:debug模式介绍及大量实例练习
- 大数据_Hbase-API访问_Java操作Hbase_MR-数据迁移-代码测试---Hbase工作笔记0017
- 如何在Xcode 4中“添加现有框架”?
- Linux操作系统引导过程及MBR扇区故障解决
- 在linux下 配置内网ip`
- 硬盘的修复(三)恢复删除文件
- Mybatis-There is no getter for property named 'tj' in 'class
- 如何以活动价在官网购买百度网盘会员
- AtCoder Regular Contest 071 C - 怪文書 / Dubious Document
- 远控软件GHOST源码免杀
- 坐标系统概念(转载)
- 查看window7 是否永久激活
- Android 解屏代码
- 秋招面试总结(计算机视觉、3D算法、三维重建、相机标定等岗位)