{=MAX(IF(1/ROW(1:100)+1/COLUMN(1:1)=B10,ROW(1:100),""))} |
=1/(F5/F6-1/B6) |
{=MIN(SUBSTITUTE(B10*ROW(1:10000),".",1)*1)} |
=F5/B10 |
{=MAX((1/ROW(1:100)+1/COLUMN(1:1)=B10)*ROW(1:100))} |
=INT(1/(B10-1/B6)) |
=B10*F6 |
=B6*D6/GCD(B6*D6,B6+D6) |
(ジョー3さん)
*******************************************************************************************
52:{=MAX((1/ROW(1:100)+1/COLUMN(A:CV)=B10)*ROW(1:100))}
14:=B6/(B6*B10-1)
25:=(B6+D6)/GCD(B6+D6,B6*D6)
17:=B6*D6*F5/(B6+D6)
・・・で計108文字です (^^ゞ (くまぷー)
***************************************************************************************
<分数の足し算問題>
色々な解法(考え方)が出来る問題は今までもあった
しかしこの問題ほど全く別アングルが幾つも存在するのは珍しいかも
ここの処、良い回答にも関わらず受賞者が出ていない
原因はその解法に違いが殆んど無いため差が付けられない
これはある意味致し方ないと思います
より短い式(主旨)を追求すれば
優れた人ばかりなので、皆同じ所に行き着いてしまう
そこで今回、評価(採点)を無視した(正解と言えない)解法を
わたしの回答としました。。。(これで被っていたら最悪)
(ア)=-(SQRT(F5^2-4*F6)-F5)/2
(イ)=F5-B6
(ウ)=LEFT(TEXT(B10,"? /????"),3)
(エ)=F5/B10
この問題を二次方程式と捉えた解法
その為 F5^2<F6*4 では値を出せない(エラー)
故に、、、正解とは言えない
それにしても正解では無いと分かっている式を回答するとは・・・
お遊び式、、、バンザイ!
因みに、正解の式は(同様の式が多数提示されると思われる)
LOOKUPを使った式・MATCHで得る式、、、などなどです (からくちさん)
*************************************************************************************************
こんにちは niです。 第100回の解答をお送りします。
チェックは通らないけれど、正しい答えを出すもの
98 (ア){=MAX((1/ROW(1:100)+1/COLUMN(A:CV)=B10)*ROW(1:100))}
(イ)=1/(B10-1/B6)&""
(ウ)=F6*B10
(エ)=B6*D6/GCD(B6+D6,B6*D6)
チェックを通るもの101
(ア){=MAX((1/ROW(1:100)+1/COLUMN(A:CV)=B10)*ROW(1:100))}
(イ)=1/(B10-1/B6)&""
(ウ)=F6*B10&""
(エ)=B6*D6/GCD(B6+D6,B6*D6)
ウが違うだけです。 素直に数値にするもの100
(ア){=MAX((1/ROW(1:100)+1/COLUMN(A:CV)=B10)*ROW(1:100))}
(イ)=INT(1/(B10-1/B6))
(ウ)=F6*B10
(エ)=B6*D6/GCD(B6+D6,B6*D6)
チェックを通すには、ウをINTで囲むだけです(105文字)INTで誤差を殺すか、
文字列に変換しないとGCDがへんな答えを出してしまいます。 (niさん)
********************************************************************************************
いちぎょうです。
一先ず、現時点の送付します。
(ア)52 {=MAX((B10=1/ROW(1:100)+1/COLUMN(A:CV))*ROW(1:100))}
(イ)14 =1/(B10-B5/B6)
(ウ)12 =int(B10*F6)
(エ)30 =RIGHT(TEXT(B10,"?/0000"),4)*1
(ア)+(イ)+(ウ)+(エ)=108
おまけ:
残念な数式、、、
(ア)39 {=MATCH(,MOD(1/(B10-1/ROW(1:100)),1),)}
下14~16桁ぐらいの誤差が、、、
(ア)44 {=MATCH(,(MOD(1/(B10-1/ROW(1:100))+99,1)),)}
大き目の数字を足したら誤差を無視してくれたが、
そもそもマイナスの数字や100以上の数の組み合わせ
までもが。。。 (いちぎょうさん)
*********************************************************************************************
私は104までしか行きませんでした。
ア 51 {=MAX((1/ROW(1:100)+1/COLUMN(1:1)=B10)*ROW(1:100))}
イ 18 =INT(1/(B10-1/B6))
ウ 12 =F6/B6+F6/D6
エ 23 =B6*D6/GCD(B6*D6,B6+D6)
合計 104
で、こっちはアイデアが付きちゃいましたので、配列数式じゃないのを
少しやってみましたので参考出品します。二種類(どちらもアの数式で他は変わりません
92で合計145
=LOOKUP(,0/(ABS(1/(B10-1/ROW(1:100))-50.5)<50)/(MOD(1/(B10-1/ROW(1:100)),1)<1%%),ROW(1:100))
103で合計156
=INT(LOOKUP(,0/(1/INT((ROW(1:10000)-1)/100+1)+1/(MOD(ROW(1:10000)-1,100)+1)=B10),ROW(1:10000)-1)/100)+1
なお、全部フルチェックでOKになったものです。 (y sakudaさん)
**************************************************************************************************
Excelの小数問題(詳細な時間や分数 等)ははっきり言ってよく解ってないので
いつも避けているのですが、第100回問題ということなので、一応提出しました。
参加したというだけの答案でスミマセンm(__)m 何故かチェックを通過できたもの(???)
(ア) {=MAX((FIND("1/",TEXT(B10-1/ROW(1:100),"?/?????")&"1/")=1)*ROW(1:100))}
(イ) =1/(B10-1/B6)
(ウ) =LEFT(TEXT((B6+D6)/(B6*D6),"# /######"),3)*1
(エ) =RIGHT(TEXT((B6+D6)/(B6*D6),"#/ ######"),5)*1
チェックを通過できなかったもの ※式を立てた順
(ア) {=MATCH("1/*",TEXT(B10-1/ROW(1:100),"?/?????"),)}
(イ) =1/(B10-1/B6)
(エ) =B6*D6/GCD(B6,D6)
(ウ) =B10*F6
-----------------------------
(ウ) =B10/TEXT(B10,"0 1/??????")
(エ) =F5/B10
(ア) {=MAX((F6*COLUMN(1:1)/ROW(1:100)=F5*COLUMN(1:1)-ROW(1:100))*ROW(1:100))}
(イ) =1/(B10-1/B6) ( む印さん)
********************************************************************************************
とりあえずやったということで、、
あ…53{=101-MATCH(1=1,LEN(1%/(B10-1/(101-ROW(1:100))))<5,)}
い…13=1/(B10-1/B6)
う…7=F6*B10
え…33=B6*D6/GCD(B6+YEN(D6),B6*YEN(D6))
計106文字
これではチェックを通りません
しょうがなく
あ…53{=101-MATCH(1=1,LEN(1%/(B10-1/(101-ROW(1:100))))<5,)}
い…13=1/(B10-1/B6)
う…14=--YEN(F6*B10)
え…40=--YEN(B6*D6/GCD(B6+YEN(D6),B6*YEN(D6)))
計120文字
変な式ですみません。。
100回記念ということで何も出さないわけにいきませんので、、
チェックを通過したものをちょっと短くしたので
大したものではないですが間に合ったら追加願います。
あ…53{=101-MATCH(1=1,LEN(1%/(B10-1/(101-ROW(1:100))))<5,)}
い…18=INT(1/(B10-1/B6))
う…12=INT(F6*B10)
え…23=B6*D6/GCD(B6+D6,B6*D6)
計106文字 (minさん)
***********************************************************
全然うまく行きませんが、とりあえず送ります。
チェックはしていません。
(ア)3パターン
41{=MATCH(,MOD(1/(B10-1/ROW(A1:A100)),1),)}
59{=MATCH(B10,1/INT(1/(B10-1/ROW(A1:A100)))+1/ROW(A1:A100),)}
88{=MATCH(B10,(1/INT(1/(B10-1/ROW(A1:A100)))+1/ROW(A1:A100))*
(B10-1/ROW(A1:A100)>1/101),)}
(イ)18=INT(1/(B10-1/B6))
(ウ)17=(B6+D6)*F6/B6/D6
(エ)23=B6*D6/GCD(B6+D6,B6*D6) (りすさん)
うむーーーーーー
からくちさんの、仰るとおり、、
似てしまいますねーーー・・・・
きちんとみてませんが、、、・・・・
へーーーへーーーーへーーーーーと、思った点。
からくちさん
> =LEFT(TEXT(B10,"? /????"),3)
いちぎょうさん
> =RIGHT(TEXT(B10,"?/0000"),4)*1
む印さん
> =B10/TEXT(B10,"0 1/??????")
これも、なるほどーーーーー
わかりやすい。
りすさん
41{=MATCH(,MOD(1/(B10-1/ROW(A1:A100)),1),)}
ほほーーーー
気づかなかった、、、
niさん
(イ)=1/(B10-1/B6)&""
他の方
COLUMN(a:cv)=
わたし、
COLUMN(1:1)=
sakudaさんも、、、
ア 51 {=MAX((1/ROW(1:100)+1/COLUMN(1:1)=B10)*ROW(1:100))}
1:1で、、、安心と言うか、、、ほっとした。
さて、、、でかけて、、かえってからまた、、、、
投稿情報: jyo3 | 2011年6 月12日 (日曜日) 午前 08時31分
気になったので、
からくちさんの、、お遊び式、、、
正解の時が、多いのに、、、びっくり、、、
帰ってから、,,研究します。仕組みを、,,,,
投稿情報: ジョー3 | 2011年6 月12日 (日曜日) 午前 08時48分
おお、出てる。
見応えがあるなーー^^
残念ながらジョー3とこの方達の参加はなしですか。
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午前 09時19分
一通りコピーしたところで、頭の中がぐちゃぐちゃですが、面白かったです。
私はなぜか、ウで =F6*B10 ての思いつかなかったです。
これがチェックプログラムで 48/47が引っかかりますが、明らかにこれもチェックの中で使ってるGCDの問題ですね。
私もMatchは考えたんですが、うまく行かなかった・・・・・
頭が冷えたところで皆さんのからくり良く考えて見ます。
>くまぷーさん
りすさんの88途中で切れちゃってますので修正お願いします。
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午前 10時45分
>>くまぷーさん
>りすさんの88途中で切れちゃってますので修正お願いします。
失礼しました。
こちらのエディターでは表示されていたのですが
なぜかブラウザー上では切れていました。
修正させて頂きました m(__)m
投稿情報: くまぷー | 2011年6 月12日 (日曜日) 午前 11時56分
Column使うのなんて考えませんでした。
似たようなことは頭に浮かんでましたが。
それで、完全チェックに時間がかかるということだったのですね。
それにしても、ここ数週、、、
自分には限界が見えきています。
斬新なアイデアなんか思いつく予感もしないし、、
金賞、銀賞なんてとれる発想が自分から出てくることなんて想像もつきません。
全く閃かない。。
短い式が良いとは思いませんが、
自分でやるときは、短い式をいつの間にか追求します。
人のを評価するときは、短いのは2の次と考えます。
特に、ここが賞品付きパタンになって、短いのを追求すると
ほとんど同じ考え方に収束してしまいます。(からくちさんもおっしゃってますが)
だから、最短でないものでも、違った考え方をしている方が評価を上げたくなります。
あと、式を作るとき短くを重点に考えると、配列数式の使用が多くなり重くなります。
文字数を気にしないなら、、
必要ない配列数式は使わない。
配列数式に使用する配列は最小限の範囲を指定する
複数の条件がある場合はANDよりIFを好んで使う。
好きな関数ひとつあげてと言われたら(今は)IFかも
投稿情報: min | 2011年6 月12日 (日曜日) 午後 12時14分
誤差をINTで丸めようとしたら、
誤差がマイナスになったとき、1小さい値になってしまう。
&"" で文字列にして丸めようとしたら、84.999999999 なんて答えが出てきた。
それで、
(イ)21=ROUND(1/(B10-1/B6),)
なら安心だけど+5文字
ちなみに、
(ア)56{=LARGE((1/ROW(1:100)+1/COLUMN(A:CV)=B10)*ROW(1:100),2)}
として、2番目の候補を求めたときに、こんな現象が出てきました。
投稿情報: ni | 2011年6 月12日 (日曜日) 午後 12時18分
くまぷーさん修正ありがとうございました。
まあ、このレベルの連中が短い式追及すると大体類似してきますね。
特に字数が出るといろいろ見当が付いちゃうw(これもすごい話かもしれないですが)
>誤差がマイナスになったとき、1小さい値になってしまう。
そういう時はIntではなくTruncって手も
しかし、今回はみなさんGCDの敏感さには悩まされたみたいですね
3-10^-15
をどこかに入れといて、Int()でやるとこの程度の誤差は無視して3になる
でもGCDはちゃんと?3未満と判定してますね。
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午後 12時50分
>誤差をINTで丸めようとしたら、
>誤差がマイナスになったとき、1小さい値になってしまう。
INTでチェックを通過するとは思わなかった。
ROUNDより1文字節約できるという邪道な理由で
最初は--YENを使ってました。
>=LEFT(TEXT(B10,"? /????"),3)
で分子をとれるのか。。
それに気づいていたらそっち方向ももう少し頑張っていたかも。
投稿情報: min | 2011年6 月12日 (日曜日) 午後 01時21分
いやはや、、、
4コでの、文字数だから、,,
同じ答えは、,,きっとないと思ったが、,,
・・・・・・・・・・・・
かなり、解法が集中。・・・ってことは、、、
・・・・・・・、ねらいが、、、失敗の、問題だった。
投稿情報: ジョー3 | 2011年6 月12日 (日曜日) 午後 02時14分
>3-10^-15
>をどこかに入れといて、Int()でやるとこの程度の誤差は無視して3になる
>でもGCDはちゃんと?3未満と判定してますね。
もう少し詳しくチェックしてみました。
=3-2^-47
=3-2^-48
・・・・・・・
・・・・・・
=3-2^-51
=3-2^-52
・・・・・
・・・・・
GCDは、見えない誤差を見る点で、、いつか話題になった。
RANKと、同じくらい強力でした。
投稿情報: ジョー3 | 2011年6 月12日 (日曜日) 午後 02時36分
GCD・・・・・
最初は使おうと、思わなかった。
・・・・・・
皆さんの文字数が・・・・・
で、、、
使ってみた。・・・・
投稿情報: jyo3 | 2011年6 月12日 (日曜日) 午後 02時55分
皆さんの式を、
入力(コピー)して、
実験してみました。
f9,f9,、、、・・・・100回ぐらい・・・・
皆さんのおっしゃっている通りと、思いますが、、、
りすさんの、、、41・・・時々、エラーですか?・・・なら、、残念、、、
投稿情報: ジョー3 | 2011年6 月12日 (日曜日) 午後 05時28分
からくちさんの、不思議な式を見ていたら、,,
頭が、,,混乱してきた。。。。・・・・
・・・・・・・
今日は、考えるのをやーーめた。
投稿情報: ジョー3 | 2011年6 月12日 (日曜日) 午後 05時47分
今回
GCDを使って頂いて、・・・・・
・・・・・・・・・・・・・・・
こまらせようなんて、、、、全然、思ってませんでした。
が、、、、、
・・・・・・・・・・
誤算から、,
GCDの、、、変な、,,細かさを・・・・ともに、・・・・味わってしまった。
投稿情報: ジョー3 | 2011年6 月12日 (日曜日) 午後 05時55分
>GCDの、、、変な、,,細かさを・・・・ともに、・・・・味わってしまった。
私は単純に分子と分母をGCDで割っただけ・・・
そうすれば余計なことをしなくても既約分数になると思ったから・・・
投稿情報: くまぷー | 2011年6 月12日 (日曜日) 午後 06時05分
>私は単純に分子と分母をGCDで割っただけ・・・
ん???
テスト!!
あらら、、、
1/67+1/61が・・・・・
分母が、,,2043.5 になりませんか??
64.0/2043.5
正しくは、,,
128/4087と、、おもいます。
投稿情報: ジョー3 | 2011年6 月12日 (日曜日) 午後 06時54分
今更ですが・・・・・
チェックプログラム、既約のチェックの部分が完全にまちがってました。
もっともらしく動いていたのが不思議なくらいです。
一応訂正版(これも大丈夫かな・・・)掲載しておきます。
ジョー3の48/47なんかもちゃんとOKになりました。
Sub Q100check()
Const wEps = 10 ^ -15
Dim wFormula As String, wZ1, wZ2, wZ3, wZ4, wZ5, I As Long, J As Long
Dim wFlg As Boolean, wErr As Long, wMsg As String
Dim wB6, wD6, wF5, wF6, wType As Long, wStep As Long
'簡易モード/フルチェック
wType = 1 'フルモードの時は0にしてください
'
If wType = 0 Then
wStep = 1
Else
wStep = 17
End If
wFlg = False
With ActiveSheet
wFormula = .Range("B10").FormulaLocal
wZ1 = .Range("Z1")
wZ2 = .Range("Z2")
wZ3 = .Range("Z3")
wZ4 = .Range("Z4")
wZ5 = .Range("Z5")
.Range("Z1") = 1
.Range("Z2") = 1
.Range("B10").FormulaLocal = "=1/Z1+1/Z2"
.Range("Z3").FormulaLocal = "=int(F5)"
.Range("Z4").FormulaLocal = "=int(f6)"
.Range("Z5").FormulaLocal = "=gcd(z3:z4)"
'画面が変わるのが見たければ、↓の行をコメントアウトしてください
' Application.ScreenUpdating = False
'
On Error Resume Next
For I = 1 To 100 Step wStep
For J = 1 To 100
.Range("Z1") = I
.Range("Z2") = J
wB6 = .Range("b6")
wD6 = .Range("D6")
wF5 = .Range("F5")
wF6 = .Range("F6")
If wB6 > 0 And wB6 0 And wD6 < 101 Then
If Abs(1 / wB6 + 1 / wD6 - .Range("B10")) < wEps Then
If Abs(wF5 / wF6 - .Range("B10")) < wEps Then
If .Range("Z5") = 1 Then
Else
wFlg = True
wErr = 3
End If
Else
wFlg = True
wErr = 2
End If
Else
wFlg = True
wErr = 1
End If
Else
wFlg = True
wErr = 4
End If
If wFlg Then Exit For
Next
If wFlg Then Exit For
Next
On Error GoTo 0
Application.ScreenUpdating = True
If wFlg Then
Select Case wErr
Case 1: wMsg = "B6,D6が正しくありません"
Case 2: wMsg = "F5,F6が正しくありません"
Case 3: wMsg = "F5,F6が既約分数になってません"
Case 4: wMsg = "B6,D6が1~100以外になっています"
End Select
MsgBox "エラーです:" & I & " - " & J & " : " & wMsg
Else
MsgBox "おめでとうございます!"
End If
.Range("b10").FormulaLocal = wFormula
.Range("Z1") = wZ1
.Range("Z2") = wZ2
.Range("Z3") = wZ3
.Range("Z4") = wZ4
.Range("Z5") = wZ5
End With
End Sub
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午後 07時34分
>正しくは、,,
>128/4087と、、おもいます。
くまぷーさんのはイの結果にIntが必要みたいですね。
チェックプログラムのバグの犠牲者だな・・・・すんません。
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午後 08時06分
>チェックプログラムのバグの犠牲者だな・・・・すんません。
チェックプログラム、、は、、、
サービスだから、、、まあ、、、、しょうがないべーーー・・・・・
投稿情報: jyo3 | 2011年6 月12日 (日曜日) 午後 08時40分
評価方々、みなさんのテストしながらじっくり眺めました。
からくちさん、む印さんのText・・・・いつもながら書式がよー分からん。
よーあんな使い方思いつきますね^^;
む印さんの86、既約になるケースがあるんですが、試してみたところ下手にInt入れると答え自体が違ってきたりして良く分かりません。もう一工夫で最短になりそうな気がするんですが・・・・
minmaxさんの106のアは面白いですねーー、なんかごまかされてる見たいで理解しきれてないですが^^
ああいう発想はできないなw
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午後 09時14分
>からくちさん、む印さんのText・・・・いつもながら書式がよー分からん。
いちぎょうさんもですね、、、
それを使わないで、それを、、表現と、思ったが、・・・・
それを使って、、、問題を解く!!は、、、見落としでした、
>minmaxさんの106のアは面白いですねーー
かれと、からくちさんと・・・・・????
いろいろされますからねーーーー・・・・・・
投稿情報: jyo3 | 2011年6 月12日 (日曜日) 午後 09時27分
物凄く厳しいようですが、、、
今回の回答でわたしのチェックを通過したのは
ジョー3さんの122文字のみでした
つまり、それ以外の式は不正解です
見えない少数誤差の処理不足に陥っています
=EXACT(B10,F5/F6)
TRUEにならない数値が発生致します
投稿情報: からくち | 2011年6 月12日 (日曜日) 午後 09時37分
>物凄く厳しいようですが、、、
>今回の回答でわたしのチェックを通過したのは
>??????????のみでした
うぎゃーーーーーーー・・・・・・・
>つまり、それ以外の式は不正解です
・・・・・・・・・・・・・・
ど、ど、ど、、、どひゃーーーー・・・・・・
・・・・・・・・・・・・・・・
のんだから、、、わからーーーん、、、、、
投稿情報: jyo3 | 2011年6 月12日 (日曜日) 午後 09時54分
>見えない少数誤差の処理不足に陥っています
厳しい^^;
私のチェックは10^-15 未満の誤差は認めてますが・・・・
私のかなにかで、具体的な例示していただけますか?
どんなケースが発生しうるのか興味があります。
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午後 10時01分
>私のかなにかで、具体的な例示していただけますか?
>どんなケースが発生しうるのか興味があります。
うわーーーーー・・・・・・・
・・・・・・・・・・・・・・・
おらも、、、
知りたいですーーーーー・・・・
・・・・・・・・・・・・・・
・・・・・・・・・・・・・
でも、、、今は、、、頭が、回らない。。。
投稿情報: jyo3 | 2011年6 月12日 (日曜日) 午後 10時09分
>どんなケースが発生しうるのか興味があります。
1例
B10の値が、、、1/19+1/48の時
F5・F6の値が67/912で正解ですが
>=EXACT(B10,F5/F6)
FALSEになります
0.073464912280701700<>0.073464912280701800
>ジョー3さんの122文字
や、わたしの式では同じ67/912でも
>=EXACT(B10,F5/F6)
TRUEになります
0.073464912280701700=0.073464912280701700
投稿情報: からくち | 2011年6 月12日 (日曜日) 午後 10時14分
>私のチェックは10^-15 未満の誤差は認めてますが・・・・
あ、、、数が大きくなると、、、・・・・・・・
誤差が、・・・・・・・・・・・ん、、、
・・・・・・・・・
だめだ、、、飲んだ頭に・・・・・・きつい、、、、
投稿情報: jyo3 | 2011年6 月12日 (日曜日) 午後 10時16分
>くまぷーさんのはイの結果にIntが必要みたいですね。
>チェックプログラムのバグの犠牲者だな・・・・すんません。
いえいえ、とんでもないです。
自己責任の世界ですから・・・(o^^o)
投稿情報: くまぷー | 2011年6 月12日 (日曜日) 午後 10時20分
>いえいえ、とんでもないです。
あはは、、、
>自己責任の世界ですから・・・(o^^o)
だよねーーーー
・・・・・・・・・・・・
投稿情報: jyo3 | 2011年6 月12日 (日曜日) 午後 10時23分
因みに、、、
100 *** 18
99 *** 18
98 *** 77
98 *** 72
97 *** 86
97 *** 77
95 *** 24
93 *** 39
92 *** 18
91 *** 26
87 *** 48
86 *** 79
83 *** 38
83 *** 28
82 *** 27
82 *** 12
81 *** 35
80 *** 34
78 *** 44
78 *** 31
78 *** 14
78 *** 12
77 *** 26
77 *** 24
75 *** 74
75 *** 62
72 *** 15
71 *** 37
71 *** 14
71 *** 12
70 *** 24
66 *** 50
66 *** 3
63 *** 59
62 *** 48
61 *** 52
61 *** 37
61 *** 13
59 *** 43
58 *** 13
56 *** 16
55 *** 15
54 *** 48
54 *** 4
52 *** 49
49 *** 37
49 *** 31
49 *** 14
48 *** 21
48 *** 19
45 *** 37
45 *** 13
44 *** 13
41 *** 19
41 *** 14
40 *** 18
39 *** 23
39 *** 21
39 *** 7
36 *** 35
30 *** 23
30 *** 21
30 *** 19
などでお試しください
投稿情報: からくち | 2011年6 月12日 (日曜日) 午後 10時31分
・・・ところで
私の解答例の
52:{=MAX((1/ROW(1:100)+1/COLUMN(A:CV)=B10)*ROW(1:100))}
14:=B6/(B6*B10-1)
25:=(B6+D6)/GCD(B6+D6,B6*D6)
17:=B6*D6*F5/(B6+D6)
・・・の3番目にIntをかませて
52:{=MAX((1/ROW(1:100)+1/COLUMN(A:CV)=B10)*ROW(1:100))}
14:=B6/(B6*B10-1)
35:=(B6+D6)/GCD(INT(B6+D6),INT(B6*D6))
17:=B6*D6*F5/(B6+D6)
・・・118か、いまさらですけど・・・
投稿情報: くまぷー | 2011年6 月12日 (日曜日) 午後 10時46分
>などでお試しください
全部は試してませんが、やったやつはすべて、元の値に戻りました。
おっしゃっているのは元と違う数字の組み合わせが見つかり、計算すると実は元とは異なるケースなんだろうと思いますが・・・・
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午後 11時07分
>・・・118か、いまさらですけど・・・
14:=B6/(B6*B10-1)
ここにかませればよいはずです。
もともとアはRowに1を掛けただけですから整数ですから問題ないはずです。
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午後 11時20分
>元の値に戻りました
?????
>30 *** 19
B10=1/30+1/19=0.085964912280701700
ですが、、、皆さんの式では
F5/F6=0.085964912280701800
因みに、、、
LEFT(TEXT(B10,"? /????"),3)/(F5/B10)=0.085964912280701700
同じ49/570でも結果に違いが出ます
投稿情報: からくち | 2011年6 月12日 (日曜日) 午後 11時29分
>F5/F6=0.085964912280701800
ああ、ここの話をしてらっしゃるんですか
30、19の組み合わせがア、イに出ていれば、算数としては49/570が正しいわけですから、そこから先の話は議論してもしょうがないのでは?
元々問題の趣旨は、F5/F6の結果が元のB10と完全一致と言う話ではないと思います。
それに原因はB10の方の打ち切り誤差だと思います
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午後 11時40分
ジョー3の122改めて見てみました。
これのF5/F6がB10と一致するのは、=F5/B10 でF6の方がB10の微少誤差を抱き込んじゃってるからみたいですね。
投稿情報: y sakuda | 2011年6 月12日 (日曜日) 午後 11時46分
>30、19の組み合わせがア、イに出ていれば、算数としては49/570が正しいわけですから、
>そこから先の話は議論してもしょうがないのでは?
問題の、解釈の仕方が違う、、、と思います
わたしの解釈
B10=F5/F6
これがTRUEになること
そうでないと、F5・F6の数値は何を基準に求めたのか・・・
B10が全ての基準では思います
そこから求める値なので=B10にならなくては、、、
もっと約分出来るか否かはその後の話
B10<>F5/F6でいいのでは、正誤の判定は、、、
投稿情報: からくち | 2011年6 月13日 (月曜日) 午前 12時04分
追加、、、
>30、19の組み合わせがア、イに出ていれば、算数としては49/570が正しいわけですから
1/B6+1/D6=F5/F6
と言う出題では無いと思いますが
B10=F5/F6
では、、、
B10=1/18+1/90=1/20+1/60
故にどちらも正解なのでは、、、
=EXACT(1/30+1/19,49/570)
エクセル君はFALSEを返します
投稿情報: からくち | 2011年6 月13日 (月曜日) 午前 12時23分
ほーーーーー、、、、
おもしろい、、、、
・・・・と、おもった。
以前、,鮭問題で、、
=
EXACT
で、同じでも、、
RANK で順位が違うという、少数計算がありましたよね、,
分数だと、,
個数が少ないのに、、
1/30+1/19
49/570
この2つは、、
= でも、、
EXACT でも、、、
違うと、、エクセル君は、、言うんですねーーー
さらに、、両方に 1/10 とかを足すと・・・
エクセルさんは、、、同じと言うし、・・・・
むむーーー、、、分からないですーーー
、、でも、、おもしろい。
投稿情報: ジョー3 | 2011年6 月13日 (月曜日) 午前 10時21分
>物凄く厳しいようですが、、、
>今回の回答でわたしのチェックを通過したのは
>ジョー3さんの122文字のみでした
>つまり、それ以外の式は不正解です
「わたしのチェック」とは「2011年6 月12日 (日) 午後 07時34分 」投稿の
コードのことですよね?
ジョー3さんの短い方もsakudaさんのも「おめでとうございます」に
なってしまうのですが・・・
If wB6 > 0 And wB6 0 And wD6 0 And wB6 <101 And wD6 < 101 Then
にして試しています。
投稿情報: くまぷー | 2011年6 月13日 (月曜日) 午後 08時46分
>「2011年6 月12日 (日) 午後 07時34分 」投稿の・・・
いいえ、、、違います
>わたしのチェック
です
2011年6月11日(日)午後10時31分
提示の数値の時
(例)
>30***19
B10が1/30+1/19の値(0.085964912280701700)とします
その時F5・F6は49・570と皆さんの式で出ています
しかしその時 F5/F6 と計算すると
0.085964912280701800 となります
これをB10の値と同じ値を返すのは自身の式以外では
ジョー3さんの122文字版だけでした
これが算数でしたら問題ありません
また、Q&Aなどの回答でしたら49・570がでれば
同様に問題無いと思います
エクセルでは少数誤差等が絡むことは避けて通れません
これが最終値なので見えない少数誤差故放置されたのかも知れませんが
質問・回答ならそれでも良いと思いますが
エクセルの問題・解答では如何でしょう
問題文に 1/A+1/B=X/Y とあります
つまり 1/B6+1/D6=F5/F6 がTRUEとなる値でなければと思います
投稿情報: からくち | 2011年6 月13日 (月曜日) 午後 09時25分
>ジョー3さんの短い方もsakudaさんのも「おめでとうございます」になってしまうのですが・・・
私のはからくちさんのおしゃっているのとクライテリアが違います。
私は、B5,D6による結果とB10の微少差(元の乱数とは別である場合に発生する可能性があります)、後はB5,D6とF5,F6の算数としての整合性でOKとしてます。
からくちさんのはF5/F6がB10計算時の打ち切り誤差を含めて端数まで同じでなければならないと言う主張です。
このあたりになると、出題者の意図次第です。
整合性のある分数⇔B10を末桁まで復元する
投稿情報: y sakuda | 2011年6 月13日 (月曜日) 午後 09時32分
>問題文に 1/A+1/B=X/Y とあります
>つまり 1/B6+1/D6=F5/F6 がTRUEとなる値でなければと思います
・・・・・なるほどーーーー・・・・・
>F5,F6の算数としての整合性でOKとしてます。
なるほどーーーー・・・・・・
で、、、
>このあたりになると、出題者の意図次第です。
私の、意図は・・・・・・
・・・・・・・・・・・・・」
・・・・・・・・・
・・・・・・
・・・
・
???
そこまで、深くは、考えてなかった。
=
あした、、、ごろ、、、、
・・・・・・・・・・・・・・・・
考えてみたい。。。
投稿情報: jyo3 | 2011年6 月13日 (月曜日) 午後 09時46分
>あした、、、ごろ、、、、
>・・・・・・・・・・・・・・・・
>考えてみたい。。。
考えてみました。。
1)出題の時は D10から、 X,Yを出して、
D10から A,B を出して、上手くいったので、問題にしました。
2)しかし、回答者によっては、 D10から X,Y
その後、X,Yから A,Bをだすかも、、、
3)あるいは、 D10から A,Bを出して、
その後、A,BからX,Yを出すかもと・・・軽く考えました。
しかし、
問題:緑の少数は 1/A+1/B = X/Y と、表せますが、、さて、A,B,X,Y の数値は?
の文章をを、、1/A+1/B = X/Y が、正解としての基準と考えて頂いても、、
あとで見てみると、そういう日本語に、とることが出来ますので・・・・・・・・
無理がないと、思います。(からくちさん、、ごめん)
しかし、最初は、そこまで考えていなかった。ジョー3です。
と言うわけで、
1/A+1/B = X/Y に合致しなくても、正解と致したいです。
しかし、、
勉強になりました。
1)の方法は、スムーズに流れて、長手数。
3)の方法は、GCDに悩まされて、INT(で、,良いようだけどすべてのケースで、問題がない??)
と、疑念が残りました。の、、、短手数・・・・、、、そして、、
わたしも、niさんと、同様に、第2候補、第3候補を出してみました。
niさんは、、、そのことによる問題を???におわせておられましたような気がしました。が、、、、ROUND かい???
たいへん、お騒がせいたしました。
で、みなさん、、、独自の信念で、評価して頂ければ幸いです。
ありがとうございます。・・・・ジョー3。。
投稿情報: ジョー3 | 2011年6 月14日 (火曜日) 午後 05時05分
>ROUND かい???
えと、ですね、^^
1/5+1/85のとき、
先に1/5を見つけて、
そこから1/85を導くと、84.99999999・・・に
なってしまいました。
なので、intすると84・・・ダメじゃん
TRUNCも小数点切り捨てなので、ROUND
私の手順はA→B→Y→X
なので、Bに誤差が含まれているとYが出ないので、Bの誤差を消してしまう必要がありました。
Xは誤差を含んでいても、表示は整数で出てくれるので、そのまま放置して、ysakudaさんのチェックに引っかかります。
投稿情報: ni | 2011年6 月14日 (火曜日) 午後 11時27分
>みなさん、、、独自の信念で、評価して頂ければ幸いです。
了解しました、、、
ただ、採点は既に(月曜)に送り済みでした
投稿情報: からくち | 2011年6 月15日 (水曜日) 午前 09時54分
ジョー3さん、第100回の結果発表をお願いします。
投稿情報: くまぷー | 2011年6 月18日 (土曜日) 午後 07時11分
sakudaさんのコードにTimerを追加して実行時間を計測してみました。
フルモードで
niさんの式約64秒
sakudaさんの配列数式じゃないもの約7秒
当然か、、
大した意味はありません。
何となくやってみたかっただけ。
投稿情報: min | 2011年6 月18日 (土曜日) 午後 11時11分
>ジョー3さん、第100回の結果発表をお願いします。
どもども、、おくれてまして、すみません、、、
病院通いの日々を、、、過ごしてました。・・・・・
・・・・・・ん、、、、、、
勿論自分でない。84歳の・・・・???・・・・付き添いなのだ。
投稿情報: jyo3 | 2011年6 月19日 (日曜日) 午前 08時29分
>84歳の・・・・???・・・・付き添いなのだ。
忙しい中、ご苦労様です。
こちらも昨日、今日のバドミントン引率が終わり
ついでに例の小学校の件も何とか目処がつきました。
でも、明日は午後からぶっ通しで保護者面談なんです(T.T)
投稿情報: くまぷー | 2011年6 月19日 (日曜日) 午後 07時24分
>でも、明日は午後からぶっ通しで保護者面談なんです(T.T)
さて、、、日曜、、、、(2日前)
一応、メール、送りましたので、・・・・・・
・・・・・・・・・・・・・・
ご確認くださいね、、、
投稿情報: jyo3 | 2011年6 月21日 (火曜日) 午後 08時15分
>ご確認くださいね、、、
おおぉおおぉーー
来ていました。
すみません、見逃していました m(__)m
これから、アップします。m(__)m
投稿情報: くまぷー | 2011年6 月21日 (火曜日) 午後 08時55分