黑马程序员技术交流社区
标题:
分享 :自己写的几种打印菱形不同的代码
[打印本页]
作者:
丁桂松
时间:
2012-5-28 15:59
标题:
分享 :自己写的几种打印菱形不同的代码
本帖最后由 丁桂松 于 2012-5-28 16:06 编辑
package 复习题;
public class 复习题七 {
/**
* @打印图形
*
***
*****
*******
*********
*******
*****
***
*
*
* */
public static void main(String[] args) {
// 第一个尖尖朝上的等腰三角形
for (int i = 1; i <= 5; i++) {
for (int a = i; a <= 4; a++) {
System.out.print(" ");
}
// 判定条件表达式获取 1 3 5 7 ...等奇数
for (int b = 1; b <= 2 * i - 1; b++) {
System.out.print("*");
}
System.out.println();
}
// 第二个尖尖朝下的等腰三角形
for (int i = 1; i <= 4; i++) {
for (int a = 1; a <= i; a++) {
System.out.print(" ");
}
// 判定条件表达式获取 7 5 3 1这些奇数
for (int b = 1; b <= 2 * 4 - 2 * i + 1; b++) {
System.out.print("*");
}
System.out.println();
}
}
}
复制代码
package java基础知识.数组和常用算法;
public class 打印图形Test7 {
/**
* @param 打印图形
*
* * *
* * * * *
* * * * * * *
* * * * *
* * *
*
*/
public static void main(String[] args) {
//这个写法我是通过改变每次循环的判定条件表达式来做的.可以去思考.
for (int j = 1; j <= 4; j++) {
for (int a = 3; a >= j; a--) {
System.out.print(" ");
}
for (int b = 1; b <= 2 * j - 1; b++) {
System.out.print("* ");
}
System.out.println();
}
for (int i = 1; i <= 4; i++) {
for (int a = 1; a <= i; a++) {
System.out.print(" ");
}
for (int b = i; b <= 2 * 3 - i; b++) {
System.out.print("* ");
}
System.out.println();
}
}
}
复制代码
package java基础知识.数组和常用算法;
public class 打印图形Test4 {
/**
* @param 打印图形
*
* * *
* * * * *
* * * * * * *
* * * * *
* * *
*
图形分解为:一个尖向上的等腰三角形和一个尖朝下的等腰三角形
每个三角形的再进行分解.
第一个等腰三角形分解成一个尖朝下的空直角三角形,和一个 1 3 5 7数列的图形
第二个等腰三角形分解成一个尖朝上的空内容的直角三角形和一个5 3 1数列的图形
*/
public static void main(String[] args) {
for(int i=1;i<=7;i+=2){
for(int kong=7;kong>i-1;kong--){
System.out.print(" ");
}
for(int xing=1;xing<=i;xing++){
System.out.print("* ");
}
System.out.println();
}
for(int j=1;j<=5;j+=2){
for(int kong1=1;kong1<j+3;kong1++){
System.out.print(" ");
}
for(int xing1=5;xing1>=j;xing1--){
System.out.print("* ");
}
System.out.println();
}
}
}
复制代码
作者:
杨永峰
时间:
2012-5-28 20:14
对称的图形代码还可以精简
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2