数学のすごい人、助けて下さい。
1投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 01時51分36秒
文系だし大学出てからまったくやってないので
2投稿者: 投稿日:2004年11月29日(月) 01時52分43秒
ちょっと僕なりにやってみたものを貼り付けます。
間違ってないか見てください。
自信ないです。
3投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 01時52分52秒
IQ120の力で何とかしてやろう
4投稿者: 投稿日:2004年11月29日(月) 01時53分24秒
ある外貨の両替取引(日本円→アメリカドル)について下記のように定義する。


レート r
※小数点以下2桁までの正の数で公示される。
例:USD1 = JPY102.60
※100倍すると自然数になることに留意すること。


支払額 Y
※日本円につき自然数とする。
例:10,000円


外貨額 F
※国内では外貨コインを扱わないので自然数とする。
5投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 01時53分29秒
数学できんで、何が悪いとや〜〜〜〜!!!
6投稿者: 投稿日:2004年11月29日(月) 01時54分16秒

外貨両替において、取引が成立するためには以下の条件を満たす必要がある。

Fr < Y + 1

※Fr ≦ Y ではない点に注意。
代金計算時、日本円の小数点以下は切り捨てられるため。
例: Fr = 10,000.12円の場合、10,000円の予算で購入が可能。

7投稿者: 投稿日:2004年11月29日(月) 01時55分10秒
連貼りすいませんね
今夜だけ堪忍して
8投稿者: 投稿日:2004年11月29日(月) 01時56分11秒
両辺を100倍すると、

100Fr < 100Y +100

100rは整数なので両辺とも整数であるため、

100Fr ≦ ( 100Y + 100 ) - 1
= 100Y + 99
9投稿者: 投稿日:2004年11月29日(月) 01時57分09秒

よって F ≦ ( 100Y + 99 ) / 100r
= ( Y + 0.99 ) / r

Fは自然数なので、条件下で最大となるFは、

max( F ) = | ( Y + 0.99 ) / r |

にて求められる。
10投稿者: 投稿日:2004年11月29日(月) 01時58分51秒
、、どうでしょうか、
どこか間違ってるところとか
強引な表記とかないでしょうか

10年ぶりの数学?なので不安でしょうがないです
11投稿者: 投稿日:2004年11月29日(月) 02時01分15秒
SEもどきの仕事やってた事あるのに
なんでこんな計算でわかんなくなるのかもうトホホです
12投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時01分59秒
あってるんじゃないの?
眠くてよくわかんないけど
13投稿者: 投稿日:2004年11月29日(月) 02時03分55秒
いいんでしょうかね、
これでロジック組んじゃって。。
14投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時05分05秒
>>8
のところがなんかよくわかんない
15投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時08分09秒
8は何をしたいんでしょうか
16投稿者:からす  投稿日:2004年11月29日(月) 02時09分03秒
簡単にいえば、小数点のある計算は
コンピュータでは誤差がでやすい。ってこと。

むづかしくいえば、小数点データを2進であつかう世界では
変数の型によって、分解能の限界があるため
計算結果は、その分解能であらわせるところに収束してしまう。

このため、0になる計算が0にならなくなったり
1になる計算が1にならなくなる。

それをさけるためには、少数を使わないようにプログラムを組む
そのようにして計算した結果が少数となる場合は
自分で結果を必要な桁数でまるめる。などする。

作ったプログラムは、きちんとテストすること。
17投稿者: 投稿日:2004年11月29日(月) 02時11分59秒
>>16
そう、そんなあたりで悩んでるんですよ
もう発狂しそう
18投稿者: 投稿日:2004年11月29日(月) 02時13分55秒
8はその、
この計算のツボっていうか
やっとたどり着いた何かっていうか
自分でもよくわからないみたいな
19投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時15分12秒
いや、だから何のために
20投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時15分27秒
まず目的を書いてほしいなあ
21投稿者: 投稿日:2004年11月29日(月) 02時16分55秒
1万円で何ドルまで両替できるか計算したいだけなんです
すいませんイッパイイッパイで
22投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時19分01秒
フロート型じゃ駄目なの?
23投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時19分05秒
俺なら毎回電卓使う
24投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時20分54秒
そういう両替計算の機能ついた電卓あるよね。
25投稿者: 投稿日:2004年11月29日(月) 02時22分11秒
あぁ、
微妙に何かが伝え切れてない
どう説明すれば伝えられるのか
26投稿者:元バイク便ライダー  投稿日:2004年11月29日(月) 02時22分21秒
>Fは自然数なので、条件下で最大となるFは、
>max( F ) = | ( Y + 0.99 ) / r |
>にて求められる。

Y∈N , r > 0が前提なんだから絶対値は不要じゃないの?

あと、
Y <= Fr < Y + 1 で括って、それぞれの不等号について解いたほうが
結論部分で分かりやすくなると思う
27投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時24分25秒
物事を順序よく筋道立てて伝えられないのが文系なのか
28投稿者: 投稿日:2004年11月29日(月) 02時27分11秒
>>26
(Y+0.99)/rが自然数にはならないので絶対値、
あ、いや、||って絶対値って意味だったっけ?
整数化、インテジャーって
どう書くんだったっけ
29投稿者:牛丼  投稿日:2004年11月29日(月) 02時28分52秒

両替手数料は掛からないのだろうか。

・・・つーか、掛からないなら単なる割り算1発じゃないの?
30投稿者: 投稿日:2004年11月29日(月) 02時32分02秒
レートに手数料は含まれてるって事にしてください

>>26
確かに||は絶対値の記号でした
間違いが1つみつかりました
ありがとう
31投稿者:1  投稿日:2004年11月29日(月) 02時34分02秒
数学的には
条件下におけるF(∈N)の最大値は
( ( Y + 0.99 ) / r ) + 1 の整数部分
とか書くとか
32投稿者:元バイク便ライダー  投稿日:2004年11月29日(月) 02時34分34秒
ハンドル間違えた
33投稿者: 投稿日:2004年11月29日(月) 02時37分19秒
>>31
あ、いや1は私なんですが、
整数部分を求める記号ってなかったでしたっけ?
なかったっけなー
幻だったのかなー
34投稿者: 投稿日:2004年11月29日(月) 02時38分30秒
INT(x)なんだけど
数学でなかったっけなー
35投稿者:元バイク便ライダー  投稿日:2004年11月29日(月) 02時39分34秒
あ、ガウス記号か[]
36投稿者: 投稿日:2004年11月29日(月) 02時40分48秒
それだ!それだよ!
どうかくの?
37投稿者: 投稿日:2004年11月29日(月) 02時42分05秒
http://www.google.co.jp/search?q=%83K%83E%83X%8BL%8D%86&ie=SJIS&hl=ja

助かりました
無学がばれずにすみそうです
ありがとう
38投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時42分45秒
int(F*r)<=Yなる最大の自然数Fを求めるんですか?
39投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時47分45秒
いや、
Fr > Y でもいけちゃうケースがあるのがこわいところなんだよ
それをもっとちゃんと伝わるようにしないと・・

>>6のところ、もっとちゃんと書かないとダメか
40投稿者:1  投稿日:2004年11月29日(月) 02時50分51秒
39は僕です
もっとちゃんと書いてまた来ます
すこし改善されました
ありがとう>all
41投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時56分07秒
なにげに難問だな
42投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 02時56分39秒
テキトーに考えると[Y/r]求めるだけで終わりそうな気がするんだが
43投稿者:元バイク便ライダー  投稿日:2004年11月29日(月) 02時58分11秒
{Y/n]まくら
44投稿者: 投稿日:2004年11月29日(月) 03時00分20秒
1ドル102円52銭の場合、
10ドル買うのに必要な代金は1025円ですよね
45投稿者: 投稿日:2004年11月29日(月) 03時02分35秒
では、
1025円で何ドル買えるかというと、
1025/102.52=9.xxxxxx
なんですが、
10ドル買えるんですよ
計算上。
46投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 03時02分41秒
[Y/r]で出るじゃん
47投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 03時03分18秒
ああごめんだめだね
48投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 03時04分07秒
あ、そうか、
切り捨てがあるんだな
49投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 03時05分08秒
どうせプログラムでやるならY/rの上下の自然数二つ調べて
条件を満たす大きいほうの数字取れば細かいこと考える必要はない
50投稿者: 投稿日:2004年11月29日(月) 03時06分02秒
この例を冒頭に書くべきだった
ほんとうにすみません
51投稿者: 投稿日:2004年11月29日(月) 03時08分29秒
>>49
そう、そうなんですよ
今までそうやって求めてたんです
でも不可解なコードになって
説明に四苦八苦してたんですわー
52投稿者:からす  投稿日:2004年11月29日(月) 03時09分20秒
int((1025+1)/102.52)

では?
53投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 03時19分30秒
それだと10252円で計算が狂うから>>8なんだろ
54投稿者: 投稿日:2004年11月29日(月) 03時19分58秒
>>52
そのロジックだと、
1万円の買い物のとき1万1円頂戴する計算になってしまうケースがあるみたいなんです
1円オーバーするケースがあります

わかりづらいもんいきなり貼ってすいませんでしたね
55投稿者: 投稿日:2004年11月29日(月) 03時22分29秒
明日仕事なんで寝ます
こんどは万人が納得できる証明を書いて持ってきます

ほんとうにありがとうございました
56投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 03時32分05秒
実例書いてから説明すれば一発だと思います
よくわかりました
57投稿者:からす  投稿日:2004年11月29日(月) 03時43分45秒
とりあえず。エクセルにどばっと表をだしてみた。

Sub hyou()
Dim d As Double
Dim r As Double
Dim y As Double
Dim x As Double
Dim x10 As Double
Dim f As Single
Dim f100 As Single
Dim r1 As Long

d = 0.01
y = 1025
x = 0.99
x10 = 99

ri = 1
For r = 80 * 100 To 120 * 100 Step d * 100
f = Int((y + x) / (r / 100))
f100 = Int((100 * y + x10) / (100 * r / 100))
If f - f100 <> 0 Then Stop
If fr >= y + 1 Then Stop
Cells(ri, 1).Resize(1, 2).Value = Array(f, r / 100)
ri = ri + 1
Next

End Sub

58投稿者:からす  投稿日:2004年11月29日(月) 03時49分43秒
そのへんは
こんな感じだ

10 102.48
10 102.49
10 102.5
10 102.51
10 102.52
10 102.53
10 102.54
10 102.55
10 102.56
10 102.57
10 102.58
10 102.59
9 102.6
59投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 03時54分53秒
何的外れなことをやってるんだ
60投稿者:元バイク便ライダー  投稿日:2004年11月29日(月) 04時33分41秒
直感とか解析と数学的な証明は全く別物だと思うな
61投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 09時48分12秒
これ、なんか名前のある公式(定理)ですか?
当然そうだろうと思って使ってるんですが・・・

N1 , N2 ∈ N とすると N1 < N2 の時 N1 ≦ N2 - 1
62投稿者: 投稿日:2004年11月29日(月) 09時49分05秒
あ、61は僕です
63投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 10時10分05秒
自然数だから当たり前としか思えない
64投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 10時11分05秒
そろばんでいいじゃん
65投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 10時19分03秒
全部読んでみたが多分浮動小数点の誤差でなやんでいるのだと思う
ロジックは当たっているが結果がちがうんだろう。にやりって感じ
66投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 10時53分41秒
【解決】
細かいこと気にするな!!禿げるぞ!!!
67投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月29日(月) 10時55分39秒
10進法であつかえるCPUとか開発されないの?
68投稿者:まりぃ@  投稿日:2004年11月29日(月) 10時55分47秒 ID:fuEeRCpL
全裸で新宿駅前を走れば嫌なことも悲しいことも面倒な事も
ぜ〜んぶ消え去りますよ。
 貴方の未来も消え去りますが
69投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年11月30日(火) 12時38分23秒
解決したかな
70投稿者:元バイク便ライダー  投稿日:2004年11月30日(火) 13時06分47秒
>>61
定理じゃないが特に補足は不要だと思う
71投稿者: 投稿日:2004年12月01日(水) 01時24分33秒
何とか上司を納得させ、コードを書き換える事が出来ました。
ご要望があれば上司に出した説明書も貼ります

ありがとうございました
72投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年12月01日(水) 01時29分43秒
夜中で寝ぼけ気味のカロビ住人を使って
上司に対する説明をシミュレートしていたのですね
つまり上司は寝ぼけていると
73投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年12月01日(水) 01時31分20秒
だからシュミレーションじゃないと何度言ったらわかるんだ
74投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年12月01日(水) 01時33分46秒
誰に言ってるんだ
75投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年12月01日(水) 01時40分54秒
全部読んだが結構面白かった
76投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年12月01日(水) 01時53分01秒
Fは
F<(Y+1)/r
を満たす最大の自然数

eps=十分小さい数

(Y+1)/r-[(Y+1)/r]<=epsのとき
F=[(Y+1)/r]-1

それ以外のとき
F=[(Y+1)/r]
77投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年12月01日(水) 02時04分01秒
>>76 次はこっちを助けてやれ
http://amezor.on.arena.ne.jp/lobby/041201014047.html
78投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年12月01日(水) 02時06分59秒
>>76
1はIF文を排除するために苦労してんのに
場合分け入れたら元の木阿弥やん
79投稿者:ヾ(゚д゚)ノ゛バカー  投稿日:2004年12月01日(水) 03時03分00秒
>>49-51のような簡単だが不可解なコードを変えたかっただけで
場合わけをなくしたいわけじゃないのでは?
投稿者 メール
(゚Д゚) <