黑马程序员技术交流社区

标题: 打印实心菱形和空心菱形分别怎么弄 [打印本页]

作者: 一城一世界    时间: 2015-7-23 22:30
标题: 打印实心菱形和空心菱形分别怎么弄
如题,求大神指教

作者: 真实姓名被注册    时间: 2015-7-23 23:33
  1. class lingxing{
  2. //打印实心菱形
  3. public static void shixin(int x){//x为实心菱形的行数,x必须为奇数
  4. if(x%2==0){
  5. System.out.println("必须是奇数行!");
  6. return;
  7. }
  8. for(int i=0;i<x/2+1;i++){
  9. for(int j=0;j<x/2-i;j++)
  10. System.out.print(" ");
  11. for(int j=0;j<i*2+1;j++)
  12. System.out.print("*");
  13. System.out.println();
  14. }
  15. for(int i=0;i<x/2;i++){
  16. for(int j=0;j<i+1;j++)
  17. System.out.print(" ");
  18. for(int j=0;j<1+(x/2-i-1)*2;j++)
  19. System.out.print("*");
  20. System.out.println();
  21. }
  22. }
  23. //打印空心菱形
  24. public static void kongxin(int x){//x为实心菱形的行数,x必须为奇数
  25. if(x%2==0){
  26. System.out.println("必须是奇数行!");
  27. return;
  28. }
  29. for(int i=0;i<x/2+1;i++){
  30. for(int j=0;j<x/2-i;j++)
  31. System.out.print(" ");
  32. for(int j=0;j<i*2+1;j++)
  33. if(j==0 || j==i*2){
  34. System.out.print("*");
  35. }else{
  36. System.out.print(" ");
  37. }
  38. System.out.println();
  39. }
  40. for(int i=0;i<x/2;i++){
  41. for(int j=0;j<i+1;j++)
  42. System.out.print(" ");
  43. for(int j=0;j<1+(x/2-i-1)*2;j++)
  44. if(j==0 || j==(x/2-i-1)*2){
  45. System.out.print("*");
  46. }else{
  47. System.out.print(" ");
  48. }
  49. System.out.println();
  50. }
  51. }
  52. public static void main(String[] args){
  53. lingxing.shixin(7);
  54. System.out.println("=====分割线=====");
  55. lingxing.kongxin(7);
  56. }
  57. }
复制代码






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2