作者TonyQ (沉默是金)
看板java
标题Re: [问题] 如何用一个 for 印出星号菱形
时间Wed May 13 02:34:00 2009
一个for为什麽不能当两个用?
以这个例子
*
**
***
****
*****
────────────────────────────────
int y=5;
for(int i=0,j=0; j<y ;){
if(i>j){
System.out.println();
i=0;
j++;
continue;
}
System.out.print("*");
/* 基本进位 */
++i;
}
────────────────────────────────
同理 , 一个 for 要写出 99 乘法之类的 , 我相信每个人都做得到 ,
这不过是一种类似脑力急转弯考你应用面的问题而已 ,
应用面的问题与其想什麽优雅解答 , 不如硬干...
连硬干都不会的 , 那表示你本来脑袋就还没融会贯通 , 需要练习.
────────────────────────────────
ps 说到座标法 , 这辈子让我真的想动用座标法 ,
是以前练习用的某个图形...
* *
* * * *
* * * *
* * *
* *** *
* ***** *
*******
* ***** *
* *** *
* * *
* * * *
* * * *
* *
因为有联集又有交集 , 显然是线型轨迹 , 所以动用了座标法. XD
for(int i=0;i<=12;i++){
for(int j=0;j<13;j++){
if((i-j-3)%6==0) System.out.print("*");//左上往右下的线
else if((i+j-3)%6==0) System.out.print("*");//右上往左下的线
else if(i+j>9&&i+j<16&&j-i<3&&j-i>-4)System.out.print("*");
//找四条线范围内的点
else System.out.print(" ");
}
System.out.println();
}
--
写题目要领在於先能跑 , 跑後能修 , 日後能善. :p
--
What do you want to have ? / What do you have?
从书本中,你可以发现我的各种兴趣。
从CD中,你可以了解我所喜欢的偶像明星。
或许从文字你很难以了解一个人,但从物品可以。
My PPolis , My past. http://ppolis.tw/user/Tony
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 221.169.78.140
1F:推 H45:我写了好多很难修改的物件....日後不善 X-( 05/13 03:12
2F:→ TonyQ:知错能改 , 善莫大焉. (光速逃) 05/13 03:24
3F:推 tomin:有也办法画实心的X + D罗 05/13 08:35
4F:→ tomin:也有 05/13 08:36
6F:推 AI3767:其实,不能用for的话.... 那用while可以吧XD (逃) 05/13 12:58
7F:推 cecol:想当初我也是硬干出来的..之後就没再思考更加解答了 05/13 14:27