Java控制台超级菱形打印方法
2008-05-07 01:34
627 查看
源码清单:
/** *//**
* SupperRhombus.java
* Java控制台超级菱形打印方法
* @author 邓超(CodingMouse)
* @version 0.1 2008-5-6
* 开发/测试环境:jdk1.6 + eclipse SDK 3.3.2
*/
//导入Scanner类和PrintStream类
import java.util.Scanner;
import java.io.PrintStream;
public class SupperRhombus ...{
public static void main(String[] args) ...{
Scanner input = new Scanner(System.in);
//循环标识
boolean con = true;
//菱形的行数
int line;
do ...{
con = false;
System.out.print("请输入要打印的菱形层数[不小于3的奇(整)数]:");
//获得控制台用户输入的菱形行数
line = input.nextInt();
if (line % 2 == 0 || line < 3) ...{
System.out.println("只能输入不小于3的奇(整)数!请重试!");
con = true;
}
} while (con);
//控制台输出提示
System.out.println(line + "层菱形图案如下: ");
//因为菱形的行数不能是偶数,要转为奇数
line = (line & 1) == 0 ? line + 1 : line;
PrintStream out = System.out;
for (int i = 0 - line / 2 ; i <= line / 2 ; i++) ...{
for (int j = 0 - line / 2 ; j <= line / 2 ; j++) ...{
//把 == 改成 <= 或 >= ,还可产生其产的图形
//out.print(((Math.abs(i) + Math.abs(j)) == line / 2) ? "* " : " "); //空心菱形
//out.print(((Math.abs(i) + Math.abs(j)) <= line / 2) ? "* " : " "); //实心菱形
out.print(((Math.abs(i) + Math.abs(j)) >= line / 2) ? "* " : " "); //内嵌菱形
}
out.println();
}
}
}
执行效果:
/** *//**
* SupperRhombus.java
* Java控制台超级菱形打印方法
* @author 邓超(CodingMouse)
* @version 0.1 2008-5-6
* 开发/测试环境:jdk1.6 + eclipse SDK 3.3.2
*/
//导入Scanner类和PrintStream类
import java.util.Scanner;
import java.io.PrintStream;
public class SupperRhombus ...{
public static void main(String[] args) ...{
Scanner input = new Scanner(System.in);
//循环标识
boolean con = true;
//菱形的行数
int line;
do ...{
con = false;
System.out.print("请输入要打印的菱形层数[不小于3的奇(整)数]:");
//获得控制台用户输入的菱形行数
line = input.nextInt();
if (line % 2 == 0 || line < 3) ...{
System.out.println("只能输入不小于3的奇(整)数!请重试!");
con = true;
}
} while (con);
//控制台输出提示
System.out.println(line + "层菱形图案如下: ");
//因为菱形的行数不能是偶数,要转为奇数
line = (line & 1) == 0 ? line + 1 : line;
PrintStream out = System.out;
for (int i = 0 - line / 2 ; i <= line / 2 ; i++) ...{
for (int j = 0 - line / 2 ; j <= line / 2 ; j++) ...{
//把 == 改成 <= 或 >= ,还可产生其产的图形
//out.print(((Math.abs(i) + Math.abs(j)) == line / 2) ? "* " : " "); //空心菱形
//out.print(((Math.abs(i) + Math.abs(j)) <= line / 2) ? "* " : " "); //实心菱形
out.print(((Math.abs(i) + Math.abs(j)) >= line / 2) ? "* " : " "); //内嵌菱形
}
out.println();
}
}
}
执行效果:
请输入要打印的菱形层数[不小于3的奇(整)数]:11 11层菱形图案如下:
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
相关文章推荐
- java打印菱形的简单方法
- java控制台打印出菱形
- java 打印三角形,菱形的方法
- Java利用循环,在控制台打印出菱形。
- Java打印菱形,非常简单的方法!代码更简洁!
- java中打印实心菱形以及空心菱形的方法
- Java控制台打印一个菱形
- java中打印实心菱形以及空心菱形的方法
- java 通过控制台输入的数字打印菱形字母
- Java控制台打印一个空心菱形
- JAVA_方法_输入两个数打印他们的和差积商
- VS2010-win32下cocos2dx控制台打印的方法
- Java打印菱形图
- eclipse中ant build 控制台乱码解决解决方法(ant执行java)
- C:打印菱形(自己的方法)
- java实现 打印菱形
- 关于JAVA像C语言那样从控制台接收输入的字符的方法(一些代码转载)
- java List.subList方法中的超级大陷阱
- Java,从控制台中输入数据的方法——Scanner
- 控制台打印汉字的方法