問題はこちらを参照。
みなさん、たくさんのコメント有り難うございました。m(__)m
【回答】
=If(Abs(6-Col(A1))<Row(A1),"*","")
これで34文字です。
【番外・エクセル編】
考え方は三四郎版と全く同じで33文字です。
=IF(ABS(6-COLUMN())<ROW(),"*","")
それではみなさん、数式の披露をお願いします。
ワクワク(((o(^。^")o)))(((o("^ 。^)o)))ワクワク
※
不等号などいくつか半角文字をうけつけないようです。
申し訳ありませんが、そう言う場合は
全角にてお願いします。m(__)m
お手数をお掛けします。m(__)m
ジョー3さんの回答です。
(以下)
では、35文字
=IF(ROW()-ABS(6-COLUMN())>0,"*","")
でも、if文は、何人かやりそう・・・で、
もチョット短くならないか?
=REPT("*",(8+ROW()-ABS(6-COLUMN()))/9)
なんだ・・・こっちが文字数が多いのか!!
でも、他の方がしそうでないので、
これで応募です。
でも、あとで見てみたら・・・センスがないなーー俺、
投稿情報: くまぷー | 2007年9 月10日 (月曜日) 午後 06時33分
ジョー3さんの式の・・・
ROW()-ABS(6-COLUMN())>0
・・・を変形すると
くまぷーのものと全く同じですね(^。^)
>・・・センスがないなーー俺、
ということは・・・おいらも・・・(^^ゞ
投稿情報: くまぷー | 2007年9 月10日 (月曜日) 午後 06時36分
9文字版はかなり違反してるから
他の方の作品を見てからね、
投稿情報: ジョー3 | 2007年9 月10日 (月曜日) 午後 06時57分
削除しました。
投稿情報: y sakuda | 2007年9 月10日 (月曜日) 午後 07時42分
削除しました。
投稿情報: y sakuda | 2007年9 月10日 (月曜日) 午後 07時49分
削除しました。
投稿情報: y sakuda | 2007年9 月10日 (月曜日) 午後 07時56分
全て再投稿します。
1.最初に書き流したもの
=IF((6-ROW()<COLUMN())*(6+ROW()>COLUMN()),"*","")
2.1では余りにも平凡なので凝ってみて却って長くなった失敗作
=IF(12*COLUMN()-COLUMN()^2-35+(ROW()-1)^2>0,"*","")
3.冷静になって一工夫した提出版
=IF(ABS(COLUMN()-6)<ROW(),"*","")
4.余興
A.A1:K6に*をいれ、Fontを白にして見えなくする
B.A1に条件付書式で
=ABS(COLUMN()-6)<ROW()
書式はFont色標準
A1の書式をA1:K6に書式のコピー
さて、皆さんの回答見てみよう^^
投稿情報: y sakuda | 2007年9 月10日 (月曜日) 午後 08時01分
y sakudaさんの投稿を3つ本人の依頼により削除しました。
投稿情報: くまぷー | 2007年9 月10日 (月曜日) 午後 08時04分
y sakudaさん、お手数をお掛けしました。
申し訳ありません。m(__)m
さて、1番を書き直した3番はEWで仰っていたとおり
くまぷーのものと同じでした。
やはり、この辺りが主流になりましょうか。
2番は「凝ってみた」ということですが
直線で囲まれた図形を
描くのにどうやってこの式を発想されたのか・・・
4の余興・・・やはり、こういうのが
一番楽しいですよね。
くまぷーとしては、まっとーにやるよりもこういうようなのを好みます。
(●`ε´●):だから、日経のExcel表計算大会に一太郎で応募したんだろ?!
【´・ω・`】:うん。
投稿情報: くまぷー | 2007年9 月10日 (月曜日) 午後 08時18分
>直線で囲まれた図形を描くのにどうやって
>この式を発想されたのか・・・
単純に上に凸の二次曲線の根の間が*の部分という発想なんですが、二次式なんで却って長くなったので没です^^
投稿情報: y sakuda | 2007年9 月10日 (月曜日) 午後 08時27分
なるほど。そういうことでしたか。
解説有り難うございます。
投稿情報: くまぷー | 2007年9 月10日 (月曜日) 午後 08時37分
=ABS(6-COLUMN())-ROW()
書式設定で、;"*";;
投稿情報: かず | 2007年9 月10日 (月曜日) 午後 10時24分
>書式設定で、;"*";;
同じようなもんですが、こっちの方がまっとうだな^^
投稿情報: y sakuda | 2007年9 月10日 (月曜日) 午後 11時05分
6-???
みんな、やるんだなーーーやっぱり。そうだよなーーー・・・がくっ・・・
投稿情報: ジョー3 | 2007年9 月10日 (月曜日) 午後 11時11分
かずさん、どうも。
おいらはどうもこの書式設定が苦手です。(^^ゞ
自分でやるときには条件付き書式に
走ってしまいます。
>同じようなもんですが、こっちの方がまっとうだな^^
sakudaさん、どもです。
そろそろ、ジョー3さんの「まっとう」でない
反則技の出番かな?
投稿情報: くまぷー | 2007年9 月10日 (月曜日) 午後 11時13分
>反則技の出番かな?
飲んだから、思い切って出しますね、
怒られるだろうけど。
1)ピラミッドの先頭に1を入力しました。
2)1が*になるように書式設定しました。
3)上の3個を足します。
(f4でなら=d3+f3+g3)・・・9文字
4)書式設定で、1以上を*に設定
5)セル番地をごまかしました。
・・・・すみません。
投稿情報: ジョー3 | 2007年9 月10日 (月曜日) 午後 11時24分
飲んで、説明は・・・・わかりにくいよなーーー
投稿情報: ジョー3 | 2007年9 月10日 (月曜日) 午後 11時27分
>5)セル番地をごまかしました。
あれーーー悪児さんのを見たら、
セル番地をごまかしてるのが・・・・
あったかなーーー
なんとなく・・・・uresii ??annsinn??
投稿情報: ジョー3 | 2007年9 月10日 (月曜日) 午後 11時39分
でおくれてます。(^^)ゞ
ジョー3の9文字、
悪児の17文字の方に
似てるんですね。
(というか、そのズル版)(^^)ゞ
悪児の10文字とは、
違っていました。
色んな方法があるもんですね。(^^)(^^)
投稿情報: 悪児 | 2007年9 月10日 (月曜日) 午後 11時45分
やっぱりこんな感じかなあ。33文字。
=If((Col(A1)-6) DIV Row(A1),,"*")
投稿情報: きっちー | 2007年9 月10日 (月曜日) 午後 11時46分
くまぷーさんの三四郎版解答
=If(Abs(6-Col(A1))
ですが、やはりくまぷーさんは、
Excel使いですね。(^^)(^^)
三四郎では、Ifの第2引数を省略しても、
エラーになりません。だから、
=If(Abs(6-Col(A1))
で、31文字になりますね。(^^)(^^)
投稿情報: 悪児 | 2007年9 月10日 (月曜日) 午後 11時48分
会議で遅くなりました(^^ゞ
すっかり出てしまってますねぇ~
似たようなものですけど三つだけ
36文字
=REPT("*",(ABS(COLUMN()-6)
23文字
=ROW()^2-(COLUMN()-6)^2
表示形式 [>0]"*";;
22文字
=ABS(COLUMN()-6)/ROW()
表示形式[<1]"*";;
で・・・お粗末!!
投稿情報: えくせるバカ | 2007年9 月10日 (月曜日) 午後 11時53分
悪児のExcel17文字は、
G1に"*"を文字列で。
B2に
'=LEFT(B1&A1&C1,1)
を入れて、コピペ。
他の機能は、全然使っていません。(^^)ゞ
投稿情報: 悪児 | 2007年9 月11日 (火曜日) 午前 12時00分
がくがく・・・がっくり・・・
REPT・・・・おらだけと思ったのに、ガックリ・・・・
投稿情報: ジョー3 | 2007年9 月11日 (火曜日) 午前 12時02分
もうひとつ、
悪児のExcel10文字は、
F1に、"*"を文字列で。
F2以下F列に、
=F1&" * *"
あとは、「はみ出し表示」にして、
列幅をごにょごにょ (^^;)(^^;)
Excelだと、苦しいですが、
三四郎だととても綺麗にできます。
式も、
=F1 & "**"
ですから、Excel流に
不要なスペースを除いて数えれば、
8文字になります。(^^)(^^)
投稿情報: 悪児 | 2007年9 月11日 (火曜日) 午前 12時04分
>列幅をごにょごにょ (^^;)(^^;)
く、く、・・・くるしいっーーーー
ん、
>Excelだと、苦しいですが、
本人が、言っておられた。
でも、でも、・・・いつか研究したいかなーーー
投稿情報: ジョー3 | 2007年9 月11日 (火曜日) 午前 12時12分
式の端っこが
切れてしまってました(;O;)
36文字(正)
=REPT("*",(ABS(COLUMN()-6)<ROW())*1)
投稿情報: えくせるバカ | 2007年9 月11日 (火曜日) 午前 12時15分
ジョー3さんの反則技や
悪児さんの17・10・8文字技は
発想できませんでした。
実務ではとても有効な手段ですよね!
凄い(@_@;)
投稿情報: えくせるバカ | 2007年9 月11日 (火曜日) 午前 12時24分
えくせるバカ さん、こんばんは。
悪児の場合、最初に思いついたのが、
17文字でした。(三四郎版だけど)
でも反則になるので、
自分のブログのネタにしました。(^^)(^^)
投稿情報: 悪児 | 2007年9 月11日 (火曜日) 午前 12時58分
もうひとつ、皆さんやっていないようなので。
Excel版だと、Ifより短くなります。
=LEFT("*",ABS(6-COLUMN())-ROW()<0)
数値計算部分をくまぷー流にすると、
32文字ですね。(^_^)(^_^)/~
ただし、三四郎では、
Ifの方が短くなります。(^^;)(^^;)
投稿情報: 悪児 | 2007年9 月11日 (火曜日) 午前 01時01分
おー、昨日寝てしまった後に
たくさんの書き込みが!!
これから出勤なので
帰ってきてからゆっくりと(^。^)
投稿情報: くまぷー | 2007年9 月11日 (火曜日) 午前 05時31分
悪児さんのLEFTもなるほど、ありですね。
何より私は理論式が関数内部では数値に認識されることが勉強になりました!
他のも試してみようーと(^O^)
投稿情報: えくせるバカ | 2007年9 月11日 (火曜日) 午後 04時57分
やっと書き込めます。
ジョー3さんのズル版の(5)
>5)セル番地をごまかしました。
これはセルの参照エラーを防ぐためですよね?
これに関して三四郎で面白い発見をしました。
(1)F1に*を入力
(2)F2に=If(CountExact("*",E1:G1),"*","") と入力
このF2の式をA2からK6までこぴぺ。
Excelならば当然、A列で参照エラーになりますよね?
三四郎ではエラーにならずにちゃんとピラミッドが
描けてしまうんです。(・_・)......ン?
不思議に思ってA2の数式を確認しました。
すると・・・・
=If(CountExact("*",A1:B1),"*","")
・・・になっていました。
セル3つ分の範囲を三四郎はエラーにならないように
自動的に2つ分に修正していたんです。(゚゚;)エエッ
知らなかったのはくまぷーだけ?
投稿情報: くまぷー | 2007年9 月11日 (火曜日) 午後 10時20分
>ジョー3さんの反則技や
>悪児さんの17・10・8文字技は
>発想できませんでした。
これはえくせるバカさん同様に
思いつきませんでした。
なるほど!!
投稿情報: くまぷー | 2007年9 月11日 (火曜日) 午後 10時23分
悪児さんの
>=LEFT("*",ABS(6-COLUMN())-ROW()<0)
Leftのこういう使い方も知りませんでした。
とても新鮮です。
Reptはやろうとしたんですが
エクセルバカさんやジョー3さんほど
式を短くすることが出来ず断念しました。
投稿情報: くまぷー | 2007年9 月11日 (火曜日) 午後 10時29分
きっちーさんの
>=If((Col(A1)-6) DIV Row(A1),,"*")
うーん、味がありますねぇ(^。^)
Excel流にするとこんなかんじかな~?
=IF(TRUNC((COLUMN()-6) /ROW()),"","*")
投稿情報: くまぷー | 2007年9 月11日 (火曜日) 午後 11時08分
>知らなかったのはくまぷーだけ?
悪児も、全然知りませんでした。(^^)ゞ
こーゆーばあい、
A列の式も、ここのローカルルールでは、
同一式と見なされるのでしょうか?(^^)(^^)
投稿情報: | 2007年9 月12日 (水曜日) 午後 12時23分
>>=If((Col(A1)-6) DIV Row(A1),,"*")
>うーん、味がありますねぇ(^。^)
(・_・)(._.)(・_・)(._.)
言われてみれば、って感じです。(^^)ゞ
Excelにはない、
便利なDIV演算子を使っているところが
すてきですね。
きっちーさん、
この式、悪児のブログでも
紹介させていただいてよろしいですか?(^_^)(^_^)/~
投稿情報: 悪児 | 2007年9 月12日 (水曜日) 午後 12時33分
>Excelならば当然、A列で参照エラーになりますよね?
>三四郎ではエラーにならずにちゃんとピラミッドが
>描けてしまうんです。(・_・)......ン?
三四郎さんとは、チョットしかお付き合い
が、ありませんが、味があるねーー
勿論、この良い味は知りませんでした。
投稿情報: ジョー3 | 2007年9 月12日 (水曜日) 午後 02時47分
>きっちーさん、
>この式、悪児のブログでも
>紹介させていただいてよろしいですか?(^_^)(^_^)/~
こちらこそ、どうぞdouzo。(^^)(^^)
DIV、MODは、3文字のようで5文字分使われるんですよね。
ちょっと残念。
投稿情報: きっちー | 2007年9 月12日 (水曜日) 午後 05時36分
>こーゆーばあい、
>A列の式も、ここのローカルルールでは、
>同一式と見なされるのでしょうか?(^^)(^^)
ええ、この問題はくまぷーも当然考えました。
結論から言えば出題の仕方で対処しようと思います。
従来の出題
「A1に入力した数式をK6までコピーして、上図を描くにはA1にどのような数式を入力したらよいか?」
新方式
「一つのセルに入力した数式を他のセルに
コピペして上図を描きたい。どのセルに
どういう数式を入力すればよいか」
回答例
「F2に=If(CountExact("*",E1:G1),"*","")」と入力する。
・・・てなもんで如何でしょう?
これならばA列の式が三四郎によって
どうされようと関係ありません。(^^ゞ
投稿情報: くまぷー | 2007年9 月12日 (水曜日) 午後 07時59分