*で三角を作るプログラムを最小コードで

for文を使用し、*を使って三角形の図を書く問題を最小コードで書いてみることに。
23

何故か続きました...

まとめ 続・*で三角を作るプログラムを最小コードで 昨日、for文を使用し*を使って三角形の図を書く問題を最小コードで書いてみた。その続き。 9244 pv 37 1 user 1

きっかけ

あやふみ @ayafmy

本日のプログラミングの課題 1.*を使って次の図を書くプログラムを作成せよ。ただし、必ずfor文を使用すること。 * ** *** **** *** ** *

2014-02-25 17:41:19

ネタ

らんだむ @rndomhack

for (a=7056;a!==0;print(new Array(((a>>=2)&3)+2).join("*"))); http://t.co/fnjxzNb9y9

2014-02-25 20:30:50
らんだむ @rndomhack

もっと簡潔に書けそうな気がする

2014-02-25 20:33:16

最小コードの探求へ

らんだむ @rndomhack

for(print("*\n**\n***\n****\n***\n**\n*");0;);より短くなるのってあるんだろうか

2014-02-25 21:06:26
サバーノ @aosabarno

@rndomhack 文字列乗算が出来る言語とかなら・・・

2014-02-25 21:10:27

Cサイド

サバーノ @aosabarno

long a=0x002a2a2a; char* n=(char*)(&a); printf("%s\n",n);

2014-02-25 21:06:47
サバーノ @aosabarno

#include <stdio.h> #include <math.h> int main(void){ char* c="****\n"; for(int i=1;i<8;printf(c+abs(4-i++))); }

2014-02-25 23:05:20
サバーノ @aosabarno

#include <stdio.h> int main(void){ char* c="****\n"; for(int i=1;i<8;printf(c+((4-i>0)?4-i:i-4)),i++); }

2014-02-25 23:07:24
サバーノ @aosabarno

math使わんほうが短くなった

2014-02-25 23:09:38
サバーノ @aosabarno

#include <stdio.h> int main(){char* c="****\n";for(int i=1;i<8;printf(c+((4-i>0)?4-i:i-4)),i++);} 97bite 今はこれが精一杯...

2014-02-25 23:26:52
Yb@おっさん @kunio_Yb

main(){ char* c="****\n"; for(int i=1;i<8;printf(c+((4-i>0)?4-i:i-4)),i++); } //gccならこれでコンパイル通る

2014-02-25 23:19:11
Yb@おっさん @kunio_Yb

i; main(){ char* c="****"; for(;i<8;puts(c+((4>++i)?4-i:i-4))); } //コードゴルフ仕様?

2014-02-25 23:35:51
Yb@おっさん @kunio_Yb

i;main(){char* c="****";for(;i<7;puts(c+((4>++i)?4-i:i-4)));} //61bytes

2014-02-25 23:43:58
Yb@おっさん @kunio_Yb

@marutakoEX それをもとに短縮してみました。gcc(c言語として)でコンパイル。 i;main(){char* c="****";for(;i<7;puts(c+((4>++i)?4-i:i-4)));}

2014-02-25 23:45:15
1 ・・ 5 次へ