聖誕節到了(其實早就過了),當然要用程式來慶祝一下
先為大家送上程式碼
int max = 10;
int main(){
if(max<4)
max=4;
if(max%2==1)
max++;
for(int Do_B=0;Do_B<max;Do_B++){
for(int out=0;out<(max-Do_B);out++){
printf(" ");
}
for(int Do_A=0 ; Do_A<(1+(Do_B*2)) ; Do_A++){
printf("*");
}
printf("\n");
}
for(int Do_B=4;Do_B<max;Do_B++){
for(int out=0;out<(max-Do_B);out++){
printf(" ");
}
for(int Do_A=0 ; Do_A<(1+(Do_B*2)) ; Do_A++){
printf("*");
}
printf("\n");
}
for(int Do_D=0 ; Do_D<(1+(max*2))/4 ; Do_D++) {
for(int out=0;out<(1+(max*2))/3 ; out++){
printf(" ");
}
for(int Do_C=0 ; Do_C<(1+(max*2))/3 ; Do_C++){
printf("*");
}
printf("\n");
}
return 0;
}
聖誕樹:
第一層有 1個*
第二層有 3個*
第三層有 5個*
大家還記得數學中等差嗎
a+(n-1)d
只要把公式套用進去,就變成for(int Do_A=0 ; Do_A<(1+(Do_B*2)) ; Do_A++)
,
根據目前的行數而決定執行多少次
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
我們可以把聖誕樹拆成不同圖案,再利用程式來表達
for(int Do_B=0;Do_B<max;Do_B++){
for(int out=0;out<(max-Do_B);out++){
printf(" ");
}
for(int Do_A=0 ; Do_A<(1+(Do_B*2)) ; Do_A++){
printf("*");
}
printf("\n");
}
這是利用*晝出三角形
==================分格線==================
文章很早就開始寫了,但一直修正...
寫了很多,又發現好像不太適合,所以又刪了
那我們直接分享心得好了...
上課就是這樣,總要面對一些自己沒興趣的課。但即使如此,還是要堅持了解內容,至少要明白老師在說什麼,把知識大概的內容記下來。
也許目前沒機會用到,但當你將來發現它有用處時,也可以用GOOGLE大神搜索關鍵字、惡補知識。
如果你頻頻蹺課、在教室睡到醉生夢死,即使你將來後悔當初,也恨錯難返。因為面對陌生的知識,連問題的關鍵字也不知道,根本無從入手。
知道自己發現問題也是比較好的情況,最糟糕是連問題也發覺不了。
就好像電腦白痴只會一直覺得電腦愈來愈慢,而無所適從。而我們經過專業判決後,就有可能是記憶體容量過多、電腦中毒、驅動沒更新而導致...
知道要輸出什麼結果,卻不知道程式要怎麼表達。
這時你就可以先把結果用紙筆寫出來,並把出規律,再嘗試利用數學公式套入程式中。
「先求有,再求好」
先把效果寫出來(當然不可以是直接printf出答案),再慢慢修改、優化程式
慢慢的,自己的結晶品就慢慢成長了。
所以,結論是:讀書很重要...