プログラミングの為の数学と算数
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
NGNG個別にあるとすぐに下がってしまうのでこの領域の話題をまとめましょう
関連スレ>>2
0002デフォルトの名無しさん
NGNGhttp://piza2.2ch.net/test/read.cgi?bbs=tech&key=996929748
交差判定アルゴリズム
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=996157997
サウンドプログラミング
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=996171508
最速の素数判定アルゴリズム
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=993457354
公開鍵の高速な生成
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=991992977
00031
NGNG非力なCPUで対数を計算させたいのです。
log(a)を求めるのに、a=b*2^n として
bを0.5〜の範囲に調整し
x = 1-b として(xは0〜0.5の範囲)
ln(b) = -(x+x^2/2+x^3/3+x^3/4+x^5/5+x^6/6+x^7/7)
さらに高速なのは
x=(1-b)/(1+b) として(xは0〜0.333の範囲)
ln(b) = -2*(x+x^3/3+x^5/5+x^7/7+x^7/9)
log(b) =-0.86859*(x+x^3/3+x^5/5+x^7/7+x^7/9)
というのは考えました。
これでまあなんとかなりそうだけど、
c=log(a)が求まっている時に aとそう違わないa'に対して
c'=log(a') をもっと効率的に求める方法は無いでしょうか?
つまりニュートン法みたいに、ある計算をすると精度が
少し上がるような計算方法は無いでしょうか?
ニュートン法をそのまま適用するとexp(x)を計算しなけりゃ
いけないようなのですが、これを巧く消す方法が無いかな?
00041
NGNG精度は少数以下6ビット程度です。
(だから前回の結果とはそんなに極端には変わりません)
最悪テーブルを引く方法でもいいのですが、メモリ
も極小なので巧い計算方法があればという所なんです。
0005デフォルトの名無しさん
NGNGゆっくり勉強するのだ。
大学受験もあるしな。
0006デフォルトの名無しさん
NGNG除算がそれほど苦じゃないなら 0.5〜1にした後で
√0.5以下なら√0.5で割ってから級数展開すれば収束が早くなるよ
後でlog(√0.5)を足せばいい。
あるいは平方根(lこれはニュートン法3回程度で十分)出してから
級数展開してもいいし
テーブルを作る方法でも、荒いテーブルを作っておいて
補間する方法でいいんじゃないの?
log(x)の傾きは1/xだから、これで補間してもそれなりの精度出るでしょ。
00081
NGNG0009デフォルトの名無しさん
NGNGニュートン法で逆数を計算するって
ttp://member.nifty.ne.jp/kaz1-iwata/divsqrt.htm
Xi+1 = Xi * (2 - b*Xi)
これで、実際計算は出来るんだけど、これってどうやって導いたの?
x*b=1 から x*b-1=0とおいて 微分して b
x-f(x)/f'(x) = x- (x*b-1)/b = x-x+1/b =1/b になっちゃうんだけど?
00101
NGNGbを0.5〜1の範囲に調整し
log(a)= -0.933*b*b + 2.775*b -1.8437 + log(2)*n
で求める精度が出ました
>>9
>x*b=1
じゃなくて
b=1/x から b-1/x としてやったらどうでしょ?
0012デフォルトの名無しさん
NGNG0013デフォルトの名無しさん
NGNG0014デフォルトの名無しさん
NGNGその辺知ってる?
0016デフォルトの名無しさん
NGNG0017デフォルトの名無しさん
NGNG0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNGド・モルガンの法則とか、その程度かねえ。
0020デフォルトの名無しさん
NGNG0021デフォルトの名無しさん
NGNGmathCadとか使うからもはや自力じゃ何にも解けないな
因数分解とか2次方程式の解とかみんなオマカセさ
解いて欲しい問題あったら出してみてよ
0022双六野郎
NGNGぴったり上がりにはいらなくても(行き過ぎても)ok。ダイスの目は1〜6。
n=1 なら 1.000000000 回
n=2 なら 1.666666666.. 回
n=50なら14.761904780.. 回
帰納的解法で解いたけど、一発解の出し方がわからない。
綺麗な一発解があるはずなんだけど...どお?
0023双六野郎
NGNG帰納的解法をプログラムで使っているからです。
そのプログラムは、フリーの双六ゲームです。とほほ..
0024デフォルトの名無しさん
NGNGちょっと考えてみよう
0025デフォルトの名無しさん
NGNG0026デフォルトの名無しさん
NGNGE(n) = 1 + 1/6*(E(n-1)+E(n-2)+E(n-3)+E(n-4)+E(n-5)+E(n-6))
になったりする?
0027双六野郎
NGNG失礼。
n=2で1.16666..の間違いでした。
>26
そのとおり。それが「帰納的」解法だね。
(E(n)を求めるためにはE(n-1)が必要)
int goal(n)
{
int i;
double cast[51];
for(i=0;i<n;i++)
cast[i]=0;
for(i=1;i<n;i++){
for(j=i-1;j>=0;j--){
if((i-j)>6) break;
cast[i]+=cast[j];
}
cast[i]/=6;
cast[i]++;
}
return cast[i];
}
どう?美しくないでしょ?
さて、一発解は有るかな?
0028デフォルトの名無しさん
NGNG50/3.5 で大体 14 ぐらいだけど、
もしかして罠はってる?
0029双六野郎
NGNGありゃ?関数がint型に。jも宣言してない。おまけに返すのは(引数-1)の解だ。大変失礼をば。
>28
n→∞ならE(n)はn/3.5に収束しますね。でも、n=1の場合は、明らかにE(n)=1/3.5じゃ無いですよね。
サイの目は下限の有る離散数で、おまけに上限まで有るからやっかいですなぁ。
003026
NGNGだから(E(n+1)-E(n)を計算)
プログラムはもう少し簡単になるのではないでしょうか?
0031双六野郎
NGNGおお。シンプルですね。素晴らしい。解けそうな予感。
ちょっと解説。
私の言ってる「一発解」を説明しますと、
例えば、E(O)=0 かつ E(n)=E(n)+1
の場合、E(n)=n ですよね。
このように、E(n)を求めるのに、E(n-i)
を必要としないやりかたは無いものかと..
003228
NGNG0033双六野郎
NGNGX : E(n)=E(n)+1
O : E(n+1)=E(n)+1
また、一発解があったとして、実際にコーディングする際には、pow(6,n-1)が
入ってきそう。doubleでも無理かな。コーディング注意ですね。
003426
NGNGE(n+1)=r * E(n) (1<r<7/6)
のような近似式にして、等比級数を出してしまうとか。
0035デフォルトの名無しさん
NGNG「アーサー・ベンジャミン教授のMath Magics」
って買った人いる?あれってなにかのアルゴリズムに役立つのでは
なかろうか。(ネタ半分、マジ半分)。
外出だったらすまんこ。
(Math Magicsとは、「ある数の全部の桁を足して3の倍数になったら
その数は3の倍数である」みたいな知識をたくさん集めて、暗算を早くやろう、
という教材です。)
00361
NGNGチラっと見た感じで、近似式は
n /3.5 + 10/21 + sin(2*π*n/6+φ)/EXP(a*n+b)
n=50程度迄で1割程度の精度の近似係数は
φ=0
a=1
b=0
sin,の位相や指数の係数を調整すればもっと精度上がると思う
00371
NGNGプログラマ向け?
1)偶数か奇数かは LSBを見よ
2) a MOD 2^n は a AND 2^n-1 で計算せよ
3) 3で割った余りは a=(a>>2+a & 3) を繰り返せ
4) 7で割った余りは a=(a>>3+a & 7) を繰り返せ
5) a*2^n は a <<n で計算せよ
6) a/2^n は a >>n で計算せよ
みたいな感じかなあ? もはや不要なテクニックだろうけどね
00381
NGNG正確に求めるには Z=1/z として Z変換
1
--------------------------
1-(Z+Z^2+Z^3+Z^4+Z^5+Z6)/6
を解けばよいのかな?
0039デフォルトの名無しさん
NGNGCなのかBasicなのかわからん(w
0041双六野郎
NGNGおお、参考になる。みなさん有難う。
>>36
sinが入るんですか。
振動はしないと思っていたので意外。フーリエ変換の結果でしょうか?
たしかに、n={7,13,19,...}で特異な点が出現しますなあ。
収束E(n)/nは収束するから、expが入るのはなんとなく理解。
00421
NGNGとりあえずZ変換に出来そうだから、線形だと思う。
だから、振動項と指数減衰項があれば良い近似が出来そうというのが直感
φ=0 は間違いで 90°つまりcos(2πn/6) にしてみて
オフセットは 10/21でいいと思うけど検算してね
00431
NGNGn/3.5+10/21+ sin(2*M_PI/24*(n*4+2)) /exp(n-1)*0.238095
n 誤差
1 +0
2 -0.07
3 -0.04
4 +0.02
5 +0.05
6 +0.03
7 -0.05
8 -0.01
以下どんどん誤差は小さくなります。
これで実用的には十分だと思います
00441
NGNGもっと精度が必要なら
n/3.5+10/21+ cos(2*M_PI*(n-1)/6)/exp((n-1)*A)*B + sin(2*M_PI*(n-1)/6)/exp((n-1)*C)*D
としてA,B,C,Dの係数を調整すると良いと思います
近似式がこういう格好をしてるので、正確な解は簡単な表現では出来ないように思います
0045双六野郎
NGNGなるほど、私には十分な精度です。
厳密解がなさそう と解ったこともおおきな収穫でした。
2chって素晴らしい。
004626
NGNG特性方程式の一般化みたいなことをやるみたいだ。
-----
E↑(n) = [E(n), E(n-1), E(n-2), E(n-3), E(n-4), E(n-5), E(n-6)]
と置くと、
E↑(n+1) = A・E(n)
だから
E↑(n) = A^(n-1)・E(1)
Aは7×7の行列で、
A11 = 7/6, A17 = -1/6
A21 = A32 = A43 = A54 = A65 = A76 = 1
それ以外の要素は0。
Aのn乗は自力で計算してね。
-----
Aのn乗はO(log n)の計算で出来るし、
疎な行列なのでうまくやれば軽いコードになると思う。
0047双六野郎
NGNG美しいですね。
要素を見ると正解の予感がするんですが、
"↑"の記号の意味を知らない自分が悲しい。
修行してきます。
004826
NGNGあ、
E↑(n+1) = A・E↑(n)
E↑(n) = A^(n-1)・E↑(1)
の間違いかな。
004926
NGNG似たような問題は同様の行列をつくれば解けるということみたい…。
00501
NGNGE(n-6)〜E(n) の 7個の要素を持つベクトルを E↑(n)と書くという事だと思います
この表現は、>>26 や >>30 の表現と意味は同じだけど
行列のn乗は 2進分解すれば高速に計算出来るという仕掛けが利用出来ると
いう事だと思います
0051双六野郎
NGNG26さん、ご親切痛み入ります。
了解しました。7行1列の行列ということですね?
やってみます。
>うまくやれば軽いコードになると思う。
これは自信ありません。
27に書いたものに限りなく近くなりそうで恐い。
0052双六野郎
NGNG"↑"が解ったら今度は"2進分解"が解らない。
googleで調べても論文のインデックスが1件だけ。
日本語じゃだめか。"binary partition"で良いですか?
00531
NGNGたとえば a^8 を計算するのにaに7回aを掛けるかわりに
a^2^2^2 と計算します
つまり a2=a*a a4=a2*a2 a^8=a4*a4 と3回に分けて計算します
つまり a^n のnを2進数で表現してべきを高速に計算する方法の事です
005426
NGNGX^4=(X*X)*(X*X)=(X*X)^2
で掛け算が2回で済みますってことでしょう。
つまり、
A^(2^x)の値を計算しつつメモリに置いておけば
A^nのnが大きいときでも
A^(2^x1+2^x2+....)とすることにより
計算の手間が減るということです。
また、A^nは上三角行列に似た(1つ下にずれてる感じだが)
行列になります。
0055双六野郎
NGNG有難うございます。たしかに速いし、
有効桁あふれのチェックも兼ねられそう。
この2日間でずいぶん賢くなりました。
重ねて感謝。
00561
NGNGnが小さい時には、あまり意味が無いでしょう。
n>12 なら 近似式 n/3.5+10/21 で良い精度の答えになりますから
実用的には n<=12 で>>26の計算を使うかテーブルを引き
n>12 で n/3.5+10/21 を使うという方法が一番効率的かと思います
00571
NGNGn E(n) 近似値 誤差 近似値= n/3.5+10/21
10 3.324 3.333 +0.010
11 3.613 3.619 +0.006
12 3.906 3.905 -0.002
13 4.197 4.190 -0.007
14 4.476 4.476 +0.000
15 4.760 4.762 +0.002
16 5.046 5.048 +0.001
17 5.333 5.333 +0.000
18 5.620 5.619 -0.001
19 5.905 5.905 -0.001
20 6.190 6.190 +0.000
0058デフォルトの名無しさん
NGNGなんか面白いな
0059双六野郎
NGNG近似は近似で奥が深い。sinの中身が6周期になる所なんか、宇宙の意思ですね。
ちなみに、私の作った双六ソフトは本双六と呼ばれる平安期に流行ったもので、
n は最大19です。その代り、15個の石をあやつるので、どっちが優勢かの判別が
難しい。そこで27に書いたような方法でインジケーターをつけました。
0060デフォルトの名無しさん
NGNGn<20なら27の方法でサイズ・速度ともに十分だろうに。
(ただし、配列は6要素で循環再利用するのがエコロジカルよ。)
そこで一般解が気になるあたりが数学の魔力か。
006160
NGNG石が15個って、自分の駒が15個ってこと?
0062デフォルトの名無しさん
NGNGdouble goal(int n)
{
int i;
double a[7]={1,0,};
double r=1;
for(i=1;i<n;i++)
{int j=i%7;
r+=(r-a[j])/6.0;
a[j]=r;
}
return r;
}
だから、真面目に計算しても十分だよな
0063デフォルトの名無しさん
NGNGこれだ、バックギャモンっぽいものらしー
0064デフォルトの名無しさん
NGNG貼り忘れた、逝ってくる
0065デフォルトの名無しさん
NGNGvectorには>>63とこれの2つしかないな。
http://www.vector.co.jp/soft/win95/game/se202098.html
0066デフォルトの名無しさん
NGNGdoubleだと計算誤差で元に戻れない
long doubleでも誤差1%チョット出るな
long double a[7];
int pg;
int n;
init() { pg=0;for(int i=0;i<7;i++)a[i]=0;a[0]=1;n=1;};
double inc(){
long double r=a[pg];
pg=(pg+1) % 7;
r+=(r-a[pg])/6.0; //E(n ) =E(n-1) + (E(n-1)-E(n-7))/6
a[pg]=r;
n++;
return r;
};
double dec(){
int pg0=pg;
long double r,r0=a[pg];
pg=(pg+7-1) % 7;
r=a[pg];
a[pg0] = r*7-r0*6;
n--;
return r;
};
double goal(int m)
{ while(n>m)dec();
while(n<m)inc();
return a[pg];
}
0067デフォルトの名無しさん
NGNG○ a[pg0] = r+(r-r0)*6.0; こう修正すると1桁精度が上がった
0068デフォルトの名無しさん
NGNGn<50 なら10万回繰り返しても精度落ちなかったから何の事かと思ったけど
n=100付近から戻れなくなるんだね
0069デフォルトの名無しさん
NGNGdouble goal(int m)
{
static long double a[7]={ 1 , 0 , };
static int pg=0;
static int n=1;
while(n<m) {
long double r=a[pg];
pg=(pg+1) % 7;
r= r+ (r-a[pg])/6.0;
a[pg]=r;
n++;
}
while(n>m){
int pg0=pg;
long double r;
pg=(pg+7-1) % 7;
r=a[pg];
a[pg0] = r+(r-a[pg0])*6.0;
n--;
}
return a[pg];
}
00701
NGNGばいい。 こうすればR(n)はnに応じて値が小さくなり、浮動小数点なら情報落ち
が少ない。
すぐに判るように R(n)はE(n)と同じ式になる。
初期値だけを変更すればいい。
double goal(int m)
{
#define c0 (10.0/21.0)
static double a[7]={1.0-1.0/3.5-c0,0-c0,1.0/3.5-c0
,2.0/3.5-c0 ,3.0/3.5-c0 , 4.0/3.5-c0 , 5.0/3.5-c0};
static int pg=0;
static int n=1;
while(n<m) {
double r=a[pg];
pg=(pg+7-1) % 7;
r= r+ (r-a[pg])/6.0;
n++;
a[pg]=r ;
}
while(n>m){
int pg0=pg;
double r;
pg=(pg+1) % 7;
r=a[pg];
a[pg0] = r+(r-a[pg0])*6.0;
n--;
}
return a[pg]+(double)m/3.5+c0;
}
00711
NGNG0072デフォルトの名無しさん
NGNG0073デフォルトの名無しさん
NGNGたぶん3D系よりもこっちの方が向いてそうだと思うんですが。
0074デフォルトの名無しさん
NGNG0075デフォルトの名無しさん
NGNGそこまで行ったら数学板逝って訊いた方がいい。
0076デフォルトの名無しさん
NGNGhttp://www.kaigisho.ne.jp/literacy/midic/data/k34/k3434.htm
こういうヤツです。あのターミネーターでも使われてたヤツ。
>>75
できるだけ高速に、無駄なく、精度良く調べたいんです。
http://www.eml.hiroshima-u.ac.jp/member/jrs/nis/javaexampl/metaj/metajav.html
ニュートン法じゃダメですよね・・・
0077デフォルトの名無しさん
NGNG3次元上の点 Pn と その距離 Rn に応じた濃度 f(Rn)
Σ f(Rn) = C になる点の集合で表現するようだという事は判るけど
fはどんな関数? (1/Rn)^2 みたいな感じ?
0078デフォルトの名無しさん
NGNG基本的には、f(Rn)=^{def}(1/Rn)^2で結構です。
それ以外にもいろいろ種類はあります(直方体とか)が、
まずはメタボール球を表示したいと思いまして。
アルゴリズムにはレイトレーシングを使ってます。
0079デフォルトの名無しさん
NGNGPn迄の距離 Rn から Σ (Wn/Rn^2) =1 になる点の集合って事ですね
ニュートン法でいいんじゃないでしょうか?
0080◆3DelPhIM
NGNG先に荒く多面体近似してそれとの交点を求めてからニュートン法かな
008178
NGNG法線をどうにか取得しなきゃいけないのです。
やっぱりニュートン法ですかね・・・
008278
NGNG自己レス。求めてた物は見つかりました。
でも法線がわっかんないんだよなぁ。
0083デフォルトの名無しさん
NGNG0084デフォルトの名無しさん
NGNGはっきり言え
008678
NGNGなぁ。なんなんだよ。
0087デフォルトの名無しさん
NGNG8分戻ってる!
とか一瞬思ってしまった。
0088デフォルトの名無しさん
NGNG0089デフォルトの名無しさん
NGNG見て
0090デフォルトの名無しさん
NGNGhttp://www.oreilly.com/catalog/physicsgame/
10月に出版予定。
0091デフォルトの名無しさん
NGNGint main(void)
{
char *s = "age";
printf("sage");
return 0;
}
0092デフォルトの名無しさん
NGNGhttp://piza2.2ch.net/test/read.cgi?bbs=tech&key=994908590&st=551&to=551
これでも頑張ってる方だと思うからなあ
0093デフォルトの名無しさん
NGNG0094デフォルトの名無しさん
NGNG24時間制の"時刻"は、"秒"と"分"が60進数、"時"が24進数と分かっていて
「0時丁度から12345秒経過した時点での時・分・秒の値を求めよ」という問題も
簡単に解くことができます。求めるべき値が3個、○進数の要素が2つしかないからです。
これを一般化して"N個の数"があり、それぞれが独立して"○進数である"という
属性を持っているとき、前述の"12345"のように「ある値」を指示されたとき
N個の数におけるそれぞれの値を効率良く求める算法・アルゴリズムのようなものは
存在するのでしょうか? 勿論「ある値」は"N個の数"で表せる数値
(冒頭の時刻の例なら 24*60*60-1=86399)を超える値ではないものとします。
0095デフォルトの名無しさん
NGNGx = Σ an*ΠAj ただしan<ΠAj に必ず解があるかという問題のような気がしますが?
0096デフォルトの名無しさん
NGNGn桁目の値 = (ある値 / (nより小さい桁の進数の積)) % nの進数
// 桁ってのは24時間制なら 時=3桁目 分=2桁目 秒=1桁目 ってな感じね。
これじゃダメ?
効率が悪くてダメ?
>>95
意味わかんねえ…鬱。
009795
NGNGΠAj = A0*A1*A2・・・An という掛算のつもりです
0098デフォルトの名無しさん
NGNG0099デフォルトの名無しさん
NGNG0101ヤパーリ
NGNG01021
NGNG負数 各桁毎に(N-1)の補数を取り、 キャリーcyを1にする
cy=1;
for(i=0;i<M;i++){
cy = a[i]+(N-1-b[i])+cy;
c[i]=cy % N;
cy =cy / N;
}
01031
NGNGあめ猫さんはちょっと間違ったみたい
0x10000 じゃなくて 0x10000-1 です
で補数を取った時の掛算のやり方
1、 絶対値を求めてから掛算して 結果の符号によって再度負数にする方法
桁数を可変にする多倍長の場合はこっちでやった方がいいかも
2、そのまま掛算する場合は
Bが負数の場合 Bを単純整数とみなすと B-N^Mになりますから
A*(B-N^M)=A*B-A*N^M
A,Bがともに負数の場合は
(A-N^M)*(B-N^M)=A*B-(A+B)*N^M+N^M^2 ・・・・N^M^2 は桁外になるので
結局 A,Bを符号無整数とみなして掛算して 負数なら M桁目から引けばよいという事になります
01041
NGNG23−49 の計算
最下位桁:CY=1; 3−9+CY = 3+10−1−9+CY=4
次の桁 :CY=0; 2−4+CY = 2+10−1−4+CY=7
最上位桁:CY=0: 0−0+CY = 0+10−1−0+CY=9
結果974となります。最上位の9は負数を示します
これをさらに符号を反転するには0から引算します。
最下位桁:CY=1; 0−4+CY = 0+10−1−4+CY=6
次の桁 :CY=0; 0−7+CY = 0+10−1−7+CY=2
最上位桁:CY=0: 0−9+CY = 0+10−1−9+CY=0
掛算のやりかた
掛算2桁X2桁で4桁になり、符号の為に5桁目を用意します
−26*12=-312 の計算
まず負数を補数表現にして
974*12=>74*12−7400=888-1200=−312
0105デフォルトの名無しさん
NGNG普通は大学で習うのですか?
0106デフォルトの名無しさん
NGNG解説ありがとうございます。
これをもとに実装できそうです。
もしよければ、除算の手がかりなんかも
アドバイスしてもらえないでしょか。
01071
NGNG1)シフトしながら減算出来れば減算するという方法
2)ニュートン法>>9
があります。
桁数が多く、掛算が高速に実装出来ているならニュートン法が良好です
ニュートン法は初期値が悪いと収束迄時間がかかりますから、
初期値は多桁の2数を浮動小数点化するか対数化して精度良く求めるのが
後の計算回数を劇的に改善する事になります。
0108デフォルトの名無しさん
NGNG最速の素数判定アルゴリズム
http://piza2.2ch.net/test/read.cgi/tech/993457354/
0110106
NGNGニュートン法は色々サンプルがあるようなので、2の方法で実装できそうです。
>>108
私もそこは読んでました。最終目標はそれなんですけど、
まずは動くものから作り上げないとしょうがないので、今は手を出せません。
0111デフォルトの名無しさん
NGNGx>yとして、荒い √(x*x+y*y) の計算でx+ (y*y/x)* 0.429で近似できるってのの
導出過程がちゃんと分かる方います?
(y/x)^2でテイラー展開すればそれっぽい形になるような気もするけど、
0.429がちょうどいいって所まではちょっと分からないです。
01121
NGNG√(x^2+y^2)=x*√{1+(y/x)^2}
√(1+a^2)を級数展開すると 1+a^2/4-a^4/8 + ・・・
だから 2項で止めると x+(y*y/x)*0.5
そこで、a0*x+a1*(y*y/x) として a0,a1が最適近似になるように調整したのでは
荒いhypotの計算方法はここに色々あるようです
ttp://www.infoeddy.ne.jp/~tensyo/prog/linealgo.htm#hypotenuse
精度の良い高速な計算方法はここ
http://www.sra.co.jp/people/miyata/algorithm/hypot.txt
01141
NGNG0115デフォルトの名無しさん
NGNGここで、長方形の縦・横の辺は
必ずしもX,Y軸に対して垂直、水平であるとは限りません。
0116デフォルトの名無しさん
NGNGとりあえず質問.長方形の大きさの定義は?
縦 a, 横 b の場合,a*b, a+b, max(a,b) のどれ?それ以外?
0117デフォルトの名無しさん
NGNGn個の線分って、どこからn個の線分とって来るの?
0119デフォルトの名無しさん
NGNGその中から(ちょうど?)n個の線分含む長方形のなかで、
縦横の長さの和が最小のものを見つけろってことね?
あってる?
0120デフォルトの名無しさん
NGNG違います。
メモ帳で開いた時にちゃんとできるってことです。
0121デフォルトの名無しさん
NGNGXY平面状に任意の線分が N 個配置してある場合です。
そのN個を全て含むような、最小(辺の長さの和が)の長方形を。
0122デフォルトの名無しさん
NGNGを教えてくれってことだと思った.でも,その問題は,与えられた点を全て内包
する最小長方形を求める問題と本質的に同じような気がする...
きっと,「平面上の線分集合を管理するデータ構造に関する研究」とかいう題の
卒論をやることになった学生が,卒論の主要部分を質問してるんだね.当たり?
0123デフォルトの名無しさん
NGNG鬱陀氏嚢…
01241
NGNG設問:その線分のどれかの辺が必ず接していれば最小かどうか
が問題かな
0125115
NGNG卒論がらみというのは当たっているんですが、
研究テーマは違いますです。
最小長方形問題は研究のメインな部分ではなく、
目的を達成するためのアプローチの1つ、というべきでしょうか。
01261
NGNG単純に外包絡線上の2点間の距離で最も長くなる組み合わせを見つけて
その方向に回転して収まる長方形を求めればよいのでは?
0128デフォルトの名無しさん
NGNG> MathMLに対応してるのはAyamaくらいでは。
s/Ayama/Amaya/
0129デフォルトの名無しさん
NGNGMozillaも可能
http://www.math.hokudai.ac.jp/~nami/MathML/
http://jt.mozilla.gr.jp/projects/mathml/
0130デフォルトの名無しさん
NGNG> Physics for Game Developers
> http://www.oreilly.com/catalog/physicsgame/
> 10月に出版予定。
ようやく出たかな?
http://www.amazon.com/exec/obidos/ASIN/0596000065/
0131デフォルトの名無しさん
NGNG0132デフォルトの名無しさん
NGNG行ったら、その中の最大のものがすべての点を含む最小の外接長方形
なんじゃないの?
0133132
NGNG0134デフォルトの名無しさん
NGNG0135デフォルトの名無しさん
NGNG0136デフォルトの名無しさん
NGNG無理数の少数点以下のように無限に続くビット列にRが出現する位置をN
とする
1)log2(N)<M-1 である確率を求めよ
2)log2(N)>M+1 である確率を求めよ
0137センター試験
NGNG当時からこういう問題があったらスラスラ解けたのに。(遠い目)
http://www.mainichi.co.jp/edu/center02/sugaku1A/13.gif
http://www.mainichi.co.jp/edu/center02/sugaku1A/14.gif
高校時代、いまどきBASICかよとか思いながらといてたっけなぁ。
懐かしい。
でも、そんなの数学じゃねぇ。
ついでに言うと、プログラミングでもない。
頭の体操って所だと思うんだけどな。
これをセンター試験に入れる文部省の感性を疑う。
0139デフォルトの名無しさん
NGNGいまは、10種類くらいの言語は一応読めるんで、この問題がいかに糞かってのは分かるな。
0140デフォルトの名無しさん
NGNGちょっと待てぃ、これまさか今年の問題なん?
そりゃないぜベイビー(死語)
0141デフォルトの名無しさん
NGNG10 名前:デフォルトの名無しさん 投稿日:02/02/03 03:44
いくつかのベクトルが、一時独立かどうか調べるアルゴリズムって
なんだろ?
独立の定義が曖昧だけど、普通 畳込 Σ(Xi*Yi) がゼロかどうかが定義でかつ調べる方法かと
0142デフォルトの名無しさん
NGNG0143デフォルトの名無しさん
NGNG漏れセンター受けたとき、ベーシックわからなかったけど満点取れたよ。
0144デフォルトの名無しさん
NGNG理想的2次方程式の解法を考えよう
http://piza.2ch.net/tech/kako/984/984447845.html
0145デフォルトの名無しさん
NGNG0146デフォルトの名無しさん
NGNGそれは直交だと思われ。
一次独立って、高校数学の幾何代数(今は呼び方違うかも)でいう
一次独立だよね?
だったら掃き出し法かな。零ベクトルができなかったら一次独立。
0147デフォルトの名無しさん
NGNG0148デフォルトの名無しさん
NGNGたとえば平面上で直行するとは文字通り 90度角度の違うベクトル
1次独立とは平面上なら3個以下で2個なら0度=平行でない事
・・・もちろんゼロベクトルは除いてね
1次独立の定義は文字通り 1次変換で独立なペア つまりn個の集合があったら
どの1個を取り出しても残ったn-1個の集合のΣai*Vi で表現出来ない事
0149デフォルトの名無しさん
NGNG0150デフォルトの名無しさん
NGNGそれはそうだが、
>>いくつかのベクトルが、一時独立かどうか調べるアルゴリズム
としては失格だな。
0151デフォルトの名無しさん
NGNG0152sage
NGNG悪いことはいわんからもう一回中学校行って来い。
0153デフォルトの名無しさん
NGNG0154141 != 147
NGNGそういう意味の一次独立なら直交とは違いますね
そういう意味の独立って統計処理以外に役立つのかな?
0155141
NGNG148さんの一次独立定義を変形すると
i=1..n として Σai*Vi =0 となる係数aiが存在しない事 になります
そこで、ベクトルを並べた行列から、148さんのいう掃き出し法で順に
消去してゼロベクトルが出来るかどうかを調べればOKです
掃き出し法は検索するとみつかるでしょう
正方行列なら行列式がゼロになるかどうかでもOK
0156デフォルトの名無しさん
NGNG0157デフォルトの名無しさん
NGNGってか、マジで忘れてしまってかなり鬱・・・
0158デフォルトの名無しさん
NGNG128÷7 12に注目7x1を引いて残り5
これを8をつけ足して58 7x8=56を引いて 残り2
結果18 余り2
0159デフォルトの名無しさん
NGNG10000000b ÷0111b
10000000
-111
x10000 <-結果はこれを加算
--------
00010000
-000111
x10 <--これを加算
--------
00000010 <---余り
結果 10010b 余り 010b
0161157
NGNGどうもどうも。
ビット演算なんて久しくやってないなあ・・・
最近CGIしか作ってないし(苦笑)。
PGになって以来、
小数点演算→二次方程式→一次方程式→分数の計算→整数の割り算
の順に忘れていってる。
人生やり直した方がよいでしょうか・・・
0162デフォルトの名無しさん
NGNGおい、間違っとるぞ
0164デフォルトの名無しさん
NGNG0165デフォルトの名無しさん
NGNG0166デフォルトの名無しさん
NGNGふ〜ん
2進数の割り算ってこうやるんだ。
0167デフォルトの名無しさん
NGNG0168棄教者 ◆witdLTi2
NGNG/ |
c / |
/ | b
/θ |
------
a
乱暴な議論ですが
直角三角形で
sinθ = b/c
cosθ = a/c
tanθ = b/a
のことを三角関数と呼びます
θ>90のときの話とか詳しいことはまじめに本を読むか
神がこのスレに降臨するのを待って下さい
0170デフォルトの名無しさん
NGNGそれは三角比。
そこから三角関数に至るには角度の拡張を考えなくてはならない。
0171デフォルトの名無しさん
NGNG一度に二人の異性から告白され、その間で思い悩む人の苦労指数
を時間軸に沿ってグラフにしたものです。至る所で微分不可能な
のが特徴。
0172デフォルトの名無しさん
NGNG0173デフォルトの名無しさん
NGNGhttp://pc.2ch.net/test/read.cgi/tech/984182993/282-288
のように "\" "/" を2値に割り当てれば自動的に適当な図形になったけど
塩基配列のように
AGCTのような4値 を 適当に割り当てて図形になる図形ってあるかな?
あるいは平面上で N値をランダムに割り当てて図形になるデータ
感じとしては 端点の位置が操作(たぶん回転と鏡像)によって変わらず
N回操作したら元に戻るような図形があればいいんだろうけど
0174棄教者 ◆witdLTi2
NGNG>>θ>90のときの話とか詳しいことはまじめに本を読むか
>>神がこのスレに降臨するのを待って下さい
というわけで>>170さん, 神になって下さい
0175デフォルトの名無しさん
NGNG単位円を書いてみたりした。以外と覚えてるな => 俺。
すごく前に習ったことなのに。
なんかこの辺詳しいHPあったんだけどURLわかんないや。
0176173
NGNG/○ <− みたいな図形を 90度回転して作れる図形でいいんだ
\/
例:
/\/\/\/○○\
\○\○○/\/\/
/\/○/\○\/\
\○\/\○\/○/
/○○\/○/\/○
\/\/\/○/\/
○\/\○\/\○\
\/○/\/\○\/
0177デフォルトの名無しさん
NGNGどうする?
0178デフォルトの名無しさん
NGNGそうすりゃ代数幾何微積分に力学とことごとく
何に使うのか分かって学びやすくなるだろう。
ちょうど今の俺みたいに。
0179棄教者 ◆witdLTi2
NGNG0180デフォルトの名無しさん
NGNG(平面上の)閉曲線上の点で距離が最大になる2点を求めたいです。
閉曲線と行っても離散値で1k点ぐらいあります。
1000C2回距離の計算するのは避けたいです。
0181棄教者 ◆witdLTi2
NGNGで距離が最大になるやつだよNE?
俺もわからないのでage
0182デフォルトの名無しさん
NGNG必ずしもxの関数ではないのでは?
曲線(f_x(p),f_y(p))とパラメータ表示するべき?
fの関数によっては妙案があるかもしれないが、考えられるあらゆる関数において、
となると平面上に任意に分布した点、ということになるから・・・どうなんだろう?
0183早理菜
NGNG次のデータを格納するためのテータ型について考える。
クラブの情報を格納する変数のデータ型club: このデータは次の内容を保存する
i.クラブ名称 (文字例型、最大20文字)
ii.クラブの種別 (体育系(taiiku),文科系(bunka), サークル(circle)を区別する列挙型)
iii.クラブの人数 (整数型)
iv.クラブメンバーの名簿を格納する線形リスト、その要素にかくメンバーの
(a) 氏名 (文字列型、最大20文字) (b)年齢(整数型)
1. 上のii. に必要な列挙型をclubtypeとして、iv.の線形リストの要素型をmemberとして定義せよ。
2. データクラブを定義せよ。
3. クラブに新しいメンバーを追加する次の手続きjoinを与えよ。
Procedure join(var c:club; n:member)
{クラブcにメンバーnに追加 する}
追加したので、人数も増えることに注意。
4. 2つのクラブを合併して新しいクラブを作る手続きmergeを与えよ。
Procedure merge (c1, c2;club; var c3:club)
{c1とc2のメンバーと合併せた新しいクラブc3つくる。名称等はc1を引き継ぐ}
0184デフォルトの名無しさん
NGNG1.だけ解いてやるよ。
type
clubtype = (taiiku,bunka,circle);
pmember = ^member;
member = record
name: array[0..20]of char;
age: integer;
next: pmember;
end;
こんなもんかな?
0185デフォルトの名無しさん
NGNGこれのどこが数学なんだよ、↓に逝けよ、しかもメアドだしてるし。
http://pc.2ch.net/test/read.cgi/tech/1011722640/l50
といいつつ続ける・・・
type
club=record
name: array[0..20]of char;
kind: clubtype;
number: integer;
members: pmember;
end;
0186デフォルトの名無しさん
NGNG解けてもらえません。
0187デフォルトの名無しさん
NGNG閉曲線なので曲線(f_x(p),f_y(p))で考える必要があります。
もう少し制約を考えると、
閉曲線上の任意の点(f_x(0),f_y(0))を考えたとき
閉曲線の順番(用語がわからないです)で(f_x(i),f_y(i)) (i<1000)
となる。
ここで(f_x(p0),f_y(p0))から(f_x(p_i),f_y(p_i))の距離Dを
D=g(i)
とすると、
(必要があれば)gを適当な次数の整式で近似して最小値を求める。
任意の点を(f_x(t),f_y(t))とおき直すとgの最小値Mは
M=h(t)
となる。(と思う)
こんな感じではないかと思っているのだけど同でしょう?
(日本語がわやですいません。)
0188188
NGNGポリゴンで表現する場合は,正方格子で離散化し,密度の閾値の境界で
ポリゴンを貼っていくのが基本的な方法だと思うのですが,
三次元でとっても素な場合,100*100*100格子で10ポリゴンとかアホらしすぎます.
格子切って,左上から順にマーチンキューブ!しか知らないのですが
いい方法ないでしょうか?
数学じゃねーな...
0189188
NGNG0190デフォルトの名無しさん
NGNG■■■パソコンと数学(初心者向けスレ)■■■
http://cheese.2ch.net/test/read.cgi/math/1016633956/
0191デフォルトの名無しさん
NGNG何で表現したいの?
0192デフォルトの名無しさん
NGNG0193デフォルトの名無しさん
NGNGある点を選んでそこから一番離れた点を選ぶ。
さらに、その点から一番離れた点を選ぶ。
これを繰り返して、収束した2点を求める点の組とする。
今即興で考えたので何かマズイ事があるかも知れないけど、どうでしょ?
0194デフォルトの名無しさん
NGNG余裕でマズイです。例えば直交座標で四点ABCDがあり、
A=(4,0)
B=(4,6)
C=(0,3)
D=(8,3)
として、初期位置の選択をAとすると、各点の距離は
A-B:6
A-C:5
A-D:5
となりA-Bが最も遠く、これで収束します。でもC-Dは8だぞ。
0195デフォルトの名無しさん
NGNG0196デフォルトの名無しさん
NGNG要するに、ちゃんと期待した密度でポリゴンが生成されてないって事?
密度関数の影響する範囲を限定して、それを元にメタボール全体を
包括するバウンディングボックスを計算してから格子を適用すればいいと思う。
あと密度関数の勾配で分割数を変化させれば効率いいと思うよ。
って、全然数学じゃないんだけど(^^;
0197デフォルトの名無しさん
NGNG問題がよくわからなかったんだけど、 結局
1) 点Pi は Xi Yi という値を持っていて Dij = hypot(Xi-Xj, Yi-Yj) の最大を探す
2) n番目の線分は Lnという長さを持っている
jからiの距離はΣLnの右回と左回りの小さい方で定義される
この最大を求める
のどっちなの?
0198デフォルトの名無しさん
NGNG回転しながら探せば データ量に比例する程度の処理時間ですむ
2)は、その長さを持つ鎖の頂点を順につまんでは長さを測ればいい
最初に右側と左側にリストを作って別け
右側の最初のリストを減じて 左側のリストの最初に挿入
それぞれの末端のリストを調整して短い方の長さが最大になるようにする
だけだから これもn^2じゃない
0199名称未設定
NGNG閉曲線が微分可能な関数でパラメータ表示できる場合、
2変数関数の最大値問題と思えば、その問題はやさしいよ。
たくさんの点列を与えられただけなら、これはシラミ潰しで求められる。
0200デフォルトの名無しさん
NGNG0201デフォルトの名無しさん
NGNG0202デフォルトの名無しさん
NGNG0203デフォルトの名無しさん
NGNG0204デフォルトの名無しさん
NGNGこんな石取りゲームを数学してみるとか・・・。
これ、何度やっても勝てなくて、「本当に勝てるんか?」と証明したくなった。が、
ごにょごにょプログラム書いてたら、飽きちゃったよ。w
0205デフォルトの名無しさん
NGNG3、4,5 個のグループがあって、グループ内なら何個取ってもいい
○○○
○○○○
○○○○○
最後の1個を取らなければならない方が負け
0206デフォルトの名無しさん
NGNGそうです。
私がプログラム作ってたときは (3,4,5) みたいに表記してました。
最初が (3,4,5) で、一手やった後にありうるのは、
(2,4,5) (1,4,5) (0,4,5)
(3,3,5) (3,2,5) (3,1,5) (3,0,5)
(3,4,4) (3,4,3) (3,4,2) (3,4,1) (3,4,0)
です。
(0,0,1) これが負けパターン。この状態で自分の番が来たら負け。
0207デフォルトの名無しさん
NGNGそのパターンすべてに、一手進めたあとに後手必勝になる手がぞんざいするかどうかの
判定を再帰的にしらみつぶしすれば答えがでちゃう。
けど、こういう問題って、たとえば(n,n,0)|n>1は後手必勝だから(n,n,m)は先手必勝、(n,m,0)は必ず
先手が(n,n,0)の形に出来るから先手必勝とかって解いて行くほうが好きだな。
0208デフォルトの名無しさん
NGNG数値計算はともかく、パズルプログラミングはみんなどういう言語使ってる?
うちしはSchemeつかってるけど。
>>35
探偵ファイルにあったよ。
http://www.tanteifile.com/baka/math/math01.html
0209デフォルトの名無しさん
NGNG0210デフォルトの名無しさん
NGNG高校では習わないので。
0211デフォルトの名無しさん
NGNG0212デフォルトの名無しさん
NGNG級数展開
atan(x) := x-x^3/3+x^5/5 ・・・ ±x^n/n ・・・
y=atan(x) の時 x=tan(y)=sin(y)/cos(y)
0214デフォルトの名無しさん
NGNG0215棄教者 ◆witdLTi2
NGNG小学一年生のときに公文式をやりたくて仕方がなかった。
親は吝嗇家で「学校の授業をまじめに聞いていれば十分でしょ」と、
公文式の会費を出してくれそうになかった。
必死で頼んだ。幼いながらも必死で言葉を探して、
「 数 学 を 学 ぶ こ と で 宇 宙 の 神 秘 が 解 明 で き る 」
と。
そしたら親が当時三千円の会費を出してくれた。感謝した。
結局高校時代にQ教材まで進んだ。
今また数学を勉強したくなっているので公文式をやろうと思っているが
大人が受講すると月9000円ほど掛かるらしい。
今はV教材までだっけ?
0216デフォルトの名無しさん
NGNG0217デフォルトの名無しさん
NGNG0218デフォルトの名無しさん
NGNG0219sage
NGNGで、宇宙の神秘は解明できた?
0221チェキナ名無しさん ◆S9VRCTCU
NGNG私も 公文式やりたいんだよね。
成人でも 入れてくれるの?
意味もなく 数学やりたいなあ と 思って。
0222デフォルトの名無しさん
NGNG算数と数学の違い、わかってますか?
0223デフォルトの名無しさん
NGNGあなたは もしかすると マリモーマさん ですか?
0224デフォルトの名無しさん
NGNG多分 メンツは結構固定してるんだろうけど
もう少し参加者が増えると掘り出し物も出てくるか?
0226デフォルトの名無しさん
NGNGあの本大好き。
高校生くらいで読めていたら人生だいぶ違っただろうなと思う。
「素数夜曲」もいいよ。
(今も買えるのか知らんが)
0228デフォルトの名無しさん
NGNG0229デフォルトの名無しさん
NGNG0230デフォルトの名無しさん
NGNG却下
0231デフォルトの名無しさん
NGNGこんなのはどう
( ゚Д゚)ノ Delギコ猫のプログラミング相談室part4
http://piza2.2ch.net/tech/kako/1002/10024/1002469894.html
より
// 256 * sin(d256/256*2*π)
function iSin256( d256 : integer):integer;
begin
d256:=shortInt(d256);
if d256 = -128 then Result:=0 else
if d256<0 then Result:= -iSin256( - d256 )
else if d256> 64 then Result:= iSin256( 128 - d256 )
else if d256>=32 then
begin
d256:=64-d256;
Result := (4194304-1199*(d256*d256)) div 16384;
end else begin
Result:=(d256* 102933 - (d256*d256*d256)*10) div 16384;
end;
end;
0232デフォルトの名無しさん
NGNGいい解説サイト教えてください。
もしくは、英語での名称を教えてください。
0233デフォルトの名無しさん
NGNG0234デフォルトの名無しさん
NGNGなんだその激しく読みにくいコードは….
pascalってそんなんなんだ….
0235デフォルトの名無しさん
NGNG線形代数の本を読めば最初のほうに書いてあるでしょ。
持ってないなら一冊くらい買っておけば?
0236デフォルトの名無しさん
NGNGgoogleで検索してロクなサイトが見つからなかったから聞いたんだけど、
吐きだし法で検索してました(鬱氏
0237デフォルトの名無しさん
NGNG0238デフォルトの名無しさん
NGNG0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNG0241デフォルトの名無しさん
NGNGたとえば?
0242今度高校受験
NGNG0243デフォルトの名無しさん
NGNGんなもん本読むか自分で調べろよ・・・
0244デフォルトの名無しさん
NGNG0245フーリエ変換@数学板住人
NGNG中学校の教科書には書いてないの?
>>243も言ってるけど、受験生だったらそのくらいのことは自分で調べた方がいいよ。
わからないからってすぐ人に聞くのは、あまり好まれる行為じゃないよ。
以後お気をつけあれ。
0246デフォルトの名無しさん
NGNGなんのために国語辞典があるんだ?
0247デフォルトの名無しさん
NGNGある測定が確率pで正しいことがわかっていて、n回測定を行うとします。
プログラムで1回の観測データごとに0-1の乱数rをつくってr>pなら観測が失敗したことにして
うそのデータをいれているんですが、nが大きすぎて時間がかかりすぎまず。
そこで、0からn−1までの乱数iをつくってi番目のデータをうそのデータに入れ替える
ということをn(1-p)回繰り返そうと思っているんですが数学的にはこれであってますよね。
0248デフォルトの名無しさん
NGNGあってない
0249247
NGNGnが十分に大きいときでもあってないですか?
できたらどうあっていないか教えてもらいたいんですが。
0250248
NGNG前半の方法で生成したデータには最大n個の失敗データが含まれる。
後半の方法で生成したデータには高々n(1-p)個の失敗データしか含まれない。
前半のデータ列と、後半のデータ列は数学的に同等とはいえない。
後半の方法のデータが、テストデータとして有効かどうかは条件による。
0253デフォルトの名無しさん
NGNGnが1億以上なら有効かもしれないが、
pの値によってはほとんど実時間ではまともな結果がでないと思う。
すなおに、別の数学的にも正しい方法を考え直した方が良い。
0254247
NGNG念のため測定ミスの確率分布求めて測定ミスの回数を決めるようにします。
ありがとうございました。
0255デフォルトの名無しさん
NGNG0256デフォルトの名無しさん
NGNG ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ (´´
∧∧ (´⌒(´
⊂(゚Д゚ )≡≡≡(´⌒;;;≡≡≡
⊆⊂´ ̄ ⊂ソ (´⌒(´⌒;;
 ̄ ̄ ̄ ズザーーーーーッ
0257デフォルトの名無しさん
NGNG代数方程式と微分積分と行列と三角関数をバカにもわかるような優しい解説のを
0259デフォルトの名無しさん
NGNG0260デフォルトの名無しさん
NGNG高校の教科書読め
0261デフォルトの名無しさん
NGNG(@´∀`)/< 先生!「30゚の直角三角形」の辺の比が1:2:√3とか書いてあります!
_ / / / \ 初耳です!どうしよう
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0262デフォルトの名無しさん
NGNGプログラミングできるならプログラマでいいじゃん
0263デフォルトの名無しさん
NGNG(@´Д`)/< 先生!斜辺の長さで高さを割った結果がsineだボケだって・・・
_ / / / \ うっさいわボケと・・・
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0264デフォルトの名無しさん
NGNG(@´∀`)/< 先生!保守だかんな。
_ / / / \
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0265デフォルトの名無しさん
NGNGhypotenuse is sha he n of triangle?
0266j2
NGNGy = ax + b の a 傾き a と切片 b の求めかたです。
2点間近似は分かります。
そのまま2点のx,y座標を代入すればa,bが出ますので。。
Excelの分布グラフ(3点)の近似曲線で方程式を
表示したものと同じ結果を出力するプログラムを
作成したいと考えております。
0267デフォルトの名無しさん
NGNGええっとー・・説明するの難しいなあ・・
厳密な手法でなくてよいなら,それこそ自由にアルゴリズムを考えてくれって
結論になっちゃうし,
厳密な手法を知りたいならば「最小二乗法」てのを使うべきですよね。
でもそれを 2ch で説明するにはあまりにもスペースが・・・
ていうことで,「最小二乗法」を解説している本を探してみてはいかが?
0268デフォルトの名無しさん
NGNGExcelのアルゴリズムがどうなってるか判らないけど 簡単なのは aとbを求めたとして
D= Σ (y[n]-a*x[n]+b) ^2 が最小になるように a,bを定める方式の最小2乗法
a,bについて2次式なので、 これを偏微分して=0の所が最大か最小値になる
0269デフォルトの名無しさん
NGNG>>267
:ええっとー・・説明するの難しいなあ・・
うぅ。。やっぱりそうですか。
:ていうことで,「最小二乗法」を解説している本を探してみてはいかが?
ぐぐるしたとき、最小二乗法については結構ひっかかったのですが、
アルゴリズムを説明しているところまでは見つけられませんでした。
やはりまじめに書籍でお勉強しなきゃいけないんでしょうね。。。。
>>268
:最小2乗法といっても X軸へかY軸へか それともXY自由かの3つがありえる
:Excelのアルゴリズムがどうなってるか判らないけど 簡単なのは aとbを求めたとして
:D= Σ (y[n]-a*x[n]+b) ^2 が最小になるように a,bを定める方式の最小2乗法
:a,bについて2次式なので、 これを偏微分して=0の所が最大か最小値になる
ありがとうございます。
なんとかがんばってこの式の展開にトライしたいと思います。
さらに詳しく実際僕がやりたいこと説明させて頂くと:
(x1,y1)(x2,y2) の 2点を通る線上で x3がxxだったら y3は何?
...と言うのを求めたいのです。
で、点は実は複数個あって若干ばらつくのでもう一個点を
任意に増やして 3点で近似したいと言うのが望みです。
参考までに次のレスに 自作へっぽこ2点近似のプログラムつけときます。
さらなるヒントなどございましたらよろしくお願いいたします。
長くなってごめんなさい。
0270デフォルトの名無しさん
NGNG% a.out 1 2 2 4 3
(1.00,2,00)(2.00,4.00) X=3.00
ans: Y=6.00
#include <stdio.h>
#include <stdlib.h>
double *kinji(double, double, double, double, double);
int main(int ac, char **av)
{
static int i;
double vl[5], *ans;
if (ac != 6)
fprintf(stderr, "usage: %s x1 y1 x2 y2 x3\n", *av), exit(1);
while (*(++av) != NULL)
vl[i++] = atof(*av);
ans = kinji(vl[0], vl[1], vl[2], vl[3], vl[4]);
printf("(%0.2f,%0.2f)(%0.2f,%0.2f) X=%0.2f\n",vl[0],vl[1],vl[2],vl[3],vl[4]);
printf("ans: Y=%0.2f\n", *ans);
free(ans);
return 0;
}
0271デフォルトの名無しさん
NGNGdouble *y3;
y3 = (double *)malloc(sizeof(double));
if (y3 == NULL)
fprintf(stderr, "error: out of memory.\n"), exit(1);
if ((x1-x2) == 0)
fprintf(stderr, "error: divide by zero.\n"), exit(1);
*y3 = ((y1-y2)*x3+(x1*y2-x2*y1))/(x1-x2);
return y3;
}
0272デフォルトの名無しさん
NGNG(@´∀`)/< 先生!実はサボってました。
_ / / / \ ごめんなさい、今日から頑張ります!
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0273デフォルトの名無しさん
NGNG(;@´∀`)/< 2³ = 8 で 3 = logarithm 底2 真数8 ですか?
_ / / / \ ちょっと正直おっぱいです!
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0274デフォルトの名無しさん
NGNG誰か予告読んで解説キボーン。
0275デフォルトの名無しさん
NGNGP=NP問題を説明しろということじゃないよな?
つーか15000円は高ぇ…。。。
0276デフォルトの名無しさん
NGNGあまり悪口は書きたくないのだが、「自費出版」というあたりがポイントかと。。。
0277デフォルトの名無しさん
NGNGなんで double *y3 = (double *)malloc(sizeof(double)); ?
double kinji(double x1, double y1, double x2, double y2, double x3)
にして 値を返した方がいいよ。
例え double型が構造体でも返せるから
0278デフォルトの名無しさん
NGNG0279デフォルトの名無しさん
NGNG0280デフォルトの名無しさん
NGNG0281デフォルトの名無しさん
NGNG0282デフォルトの名無しさん
NGNG数学板でしたか。
どうもです。
0283デフォルトの名無しさん
NGNG0284デフォルトの名無しさん
NGNG(@T∀T)/< 先生! なんか放置されてるっぽいです!
_ / / / \ 一人で引き篭もるのは辛いよね!
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0285デフォルトの名無しさん
NGNG:つーか、最小二乗法普通にソースコードがgoogleった始めのほうのウェブサイトにあったのだが。
お願い!!!!
URI教えてくださいませ。。。。
0286デフォルトの名無しさん
NGNG:なんで double *y3 = (double *)malloc(sizeof(double)); ?
おおもとのソースは:
y3 = (double **)malloc(sizeof(double **)*cnt + 1);
みたいな感じで配列構造で複数個値を戻すような関数だったのです。
#最初の*y3[0]に個数を入れといてあとでforで展開するみたいな。。。。
#個数は可変でしたので。。。
こんなやりかた変ですか?
0287名無し,,,,
NGNG日本人には38%のA型、31%のO型、
23%のB型、8%のAB型がいるとして、
血液型A型のAA型とAO型の割合、
血液型B型のBB型とBO型の割合を知りたいのです。
血液型占いを信じてるばかどもに説明するのに必要なのです。
よろしくお願いします。
0288棄教者 ◆KIKYO7cg
NGNG(1) p(A)^2 + 2* p(A) * p(O) = 0.38
(2) p(B)^2 + 2* p(B) * p(O) = 0.23
(3) 2 * p(A) * p(B) = 0.08
(4) p(O)^2 = 0.31
で表せそうな気がする。
(4) より
(5) p(O) = 0.5567
(1), (5) より
(6) p(A)^2 + 2 * 0.556 * p(A) = 0.38
を解いて
(7) p(A) = 0.2739
(2), (5) より
(8) p(B) = 0.1780
(5), (8) を (2) の左辺に代入すると
.0974
あれ、変だぞ。
http://www.genstat.net/kisocont.htm
参照してくれ
0289デフォルトの名無しさん
NGNG(@´∀`)/< teacher! x²-a = 0
_ / / / \
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0290デフォルトの名無しさん
NGNGそれって先に AA:AO、BB:BO の比を推定しなきゃ
いかんのではないか
0291デフォルトの名無しさん
NGNG0292デフォルトの名無しさん
NGNGhttp://wsrv.clas.virginia.edu/~rjh9u/abofreq.html
0293デフォルトの名無しさん
NGNG(@´∀`)/< 先公!今日は 2√7 = √28 みたいなことやったよ!
_ / / / \ ちょっと脳みそが漏れちゃいそう
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0294デフォルトの名無しさん
NGNG>つーか、最小二乗法普通にソースコードがgoogleった始めのほうのウェブサイトにあったのだが。
ありがとうございます。
ぐぐるで「最小二乗法+ソース」でお目当てのページがトップにありました。
#なんか変なキーワードを入れてたみたいです。
>>286
:y3 = (double **)malloc(sizeof(double **)*cnt + 1);
y3 = (double **)malloc(sizeof(double **)*(cnt + 1));
。。。の間違いでした。
0296デフォルトの名無しさん
NGNG゚(@´∀`)/< 先公!sineθ = (y/x)って公式がやっと出やがったよ。
_ / / / \ うん、ありがとう>>295
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0297棄教者 ◆KIKYO7cg
NGNG/\ /
/ ヽ / |
/ | / |
/ ´Д` | r/ |y
/ \ /ヽ / |
/ \_/ \ / |
/ \ ,/ |つ† ------
(二|⊃⌒⌒ヽ /~ \ \_/ / x
| ⌒⌒ | \__/
| |
| |_____E[]∃__________________
>>296 sine theta = (y/r) です。
0298デフォルトの名無しさん
NGNG0299デフォルトの名無しさん
NGNG(@T∀⊂ヽ< うえーん!禿しく間違えたけど気にしないよ!
_ / / / \ >>297-298 サンクスデス
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0300デフォルトの名無しさん
NGNGhttp://www.geisya.or.jp/~mwm48961/math/index_m.htm
0301デフォルトの名無しさん
NGNGすげー、全部当てはまるぞ。
つーことで逝ってくる
0303デフォルトの名無しさん
NGNG0304デフォルトの名無しさん
NGNG(@´∀`)/< 先公!素因数分解まで復習逝きますた!
_ / / / \ 只管問題解いてウマ(゚Д゚)ってようと思います
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0305デフォルトの名無しさん
NGNG0306デフォルトの名無しさん
NGNGいつなくなってもいいようにwgetしときやす
0307デフォルトの名無しさん
NGNG現在、リードソロモン符号の実装を行いたいと思っているのですが
いかんせんバカなので、ガロア体ってなんじゃホルァという感じなのです。
0308デフォルトの名無しさん
NGNG問1:3.14159 を小数点第 3 位に切り上げると? 答A/B
問2:3.14109 を小数点第 3 位に切り上げると? 答A/B
問3:3.14159 を小数点第 4 位で切り上げると? 答A/B
問4:3.14109 を小数点第 4 位で切り上げると? 答A/B
答A:3.141
答B:3.142
0309デフォルトの名無しさん
NGNG0310デフォルトの名無しさん
NGNG0311デフォルトの名無しさん
NGNG環や体について解説されている本を読む。
0312デフォルトの名無しさん
NGNG0313デフォルトの名無しさん
NGNG0314デフォルトの名無しさん
NGNGその記述の仕方(というか言葉の使い方)は正しいの ? っていうのを
考えないといかん気がする.
いや, 聞きたいことは分かるんだけど.
0315デフォルトの名無しさん
NGNG数学?算数?的には、3,14109を小数点第4位で切り上げると3,141になると思うのですが、
エクセルなどの関数によると3,1412になります。
関数の設定上、小数点第3位に切り上げる為、問題自体が問1や2ということだと思うのです。
みなさんどう思いますか?
3,14109を小数点第4位で切り上げると3,141になるというのは間違っているのでしょうか?
0316デフォルトの名無しさん
NGNG> エクセルなどの関数によると3,1412になります。
Excel のどの関数よ ? 少なくとも、Excel2000 では Round(3.14109, 3) は 3.141 になるぞ。
ちなみに、3.14109 って π に近いんだけど、勘違いしてないよな ?
0317デフォルトの名無しさん
NGNG間違っています。
というか、小数点第四位「で」切り上げる、という風に"0"にだけ着目する
ということは通常行わないので、そうした計算が必要な場合には、その定義が
仕様書や法令等にいちいち記述されているはずなのでそれに従ってください。
普通切り上げといえば、例えば「100円単位で切り上げ」とした場合、
100 -> 100, 101 -> 200, ...., 199 -> 200, 200 -> 200, 201 -> 300
というように、切り上げてゆく単位未満に 0 以上の剰余があれば、一単位として
扱ってしまう、という計算を指します。
0318316
NGNGすまん、おおぼけだった。
四捨五入じゃなくて切り上げだったんだよな。
>>317 が正しいと思う。
3.1410000... をわずかでも超えたら 3.142 となるので合ってると思う。
0319デフォルトの名無しさん
NGNGRoundup関数です。
Roundは、四捨五入関数ですから3,141になりますね。
0320デフォルトの名無しさん
NGNG納得です。それで、関数等もその通りに作成されているわけですね。
問題で、「0.0101を小数点第3位で切り上げしなさい。」
には、0.011が正解で、0.01は間違いになるわけですね。
うむ〜、今まで間違った考え方をしていた。。。
0321デフォルトの名無しさん
NGNG正しくは、小数点第2位に切り上げしなさい。ということですね。
ありがとうございます。<317&318
0322デフォルトの名無しさん
NGNG>いや、小数点第3位で切り上げしなさいという問題が、切り上げという処理自体の
>定義からすると間違った問いになるわけですね。
プログラム的観点から言うと、要求仕様があいまい(またはわかりにくい)という
ことになると思います。間違っているということは無い。こういうときには、「XX
で切り上げる、というのはどういう意味ですか?」と発注者側に確認するのが吉。
0323デフォルトの名無しさん
NGNG両方を実装しておいて、起動時のスイッチで選べるようにしておけ
納品時に実際の担当者に選んでもらうのが一番確実
0324デフォルトの名無しさん
NGNG0325デフォルトの名無しさん
NGNG(@´∀`)/< なんか乗法公式とかやってもプログラミングには
_ / / / \ 関係無い気がしてきたけど(゚3゚)キニシナーイ!
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0326デフォルトの名無しさん
NGNGどうでもいいが、そんなものスイッチにしてたらアフォと思われるだけ。
そうやってワケワカランようなスイッチだらけにしたら
納品時に実際の担当者に
「こんな無駄なコード書いてるヒマがあったら、なんで俺に聞かなかったの?」
と言われるのが確実。
つーか、そのコードのドキュメントにどう記録するんだ?
「なんか仕様がよくわかんないからスイッチにした」ってか?
つーか、そのコードをメンテする奴の気持ちを考えなかったのか?
0327棄教者 ◆egKIKYO7cg
NGNG( a + b )^2 = a^2 + 2ab + b^2
0328デフォルトの名無しさん
NGNGこれ最強。
0329デフォルトの名無しさん
NGNG0330デフォルトの名無しさん
NGNG0331デフォルトの名無しさん
NGNG0332デフォルトの名無しさん
NGNG0333デフォルトの名無しさん
NGNG0334デフォルトの名無しさん
NGNG0335デフォルトの名無しさん
NGNGそろそろできましたか?
0336デフォルトの名無しさん
NGNGこっそり、どっかの大学に潜り込んで、大学の図書館で本読んだら?
あるいは、どっかの大学サイトで講義を盗み見するとか・・・
例:
ttp://www.ma.is.saga-u.ac.jp/uehara/coding.html
0337デフォルトの名無しさん
NGNGFFTを使って計算する時
上位桁と下位桁に別けて 実数のペアのFFT使って というやり方はやるよね?
0338デフォルトの名無しさん
NGNG0339デフォルトの名無しさん
NGNG(@´Д`)/< ハァハァ…
_ / / / \ コソーリコソーリ
\⊂ノ ̄ ̄ ̄ ̄\ \________________________
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
.|| ||
0340デフォルトの名無しさん
NGNG|∀゚)
⊂)
|ノ
|
0341デフォルトの名無しさん
NGNG0342デフォルトの名無しさん
NGNG0343デフォルトの名無しさん
NGNG0344デフォルトの名無しさん
NGNG0345344
NGNG1.0からn-1までのn個の「重複・欠員のない」要素からなる任意の数列Z{0,1,2,3...n-1}
2.それぞれの隣接要素の差による数列も「重複・欠員のない」要素からなる数列となる。
といったものです。
0346デフォルトの名無しさん
NGNGQ1、それは再帰定義なの? つまり n=1まで再帰的に定義されるの?
Q2、1階層下の数列は 0 を含む必要があるの?
0347
NGNG定義の1からして、2の数列は0を含みようがないと思われ
0348デフォルトの名無しさん
NGNGB[k]は0を含めないとしたら
よって、B[k]が負数と正数を同時に含む事になると B[k] に欠員が出来てしまう
B[k]に欠員が出来ないようにするにはB[k]の全ての符号は同じでなければならない。
A[k+1]=A[k]+B[k] だから A[k+1]=0 となるのは A[k]=-B[k] かk=0 の時だけ
○ もしA[k+1]=0 & A[k]=-B[k] があるとすれば B[k] が全て負となる
すなわち A[k+1]<A[k]を満たす必要がある。
[0..n-1] の要素をそういうふうに並べる方法は唯一で
A[0]=n-1,..., A[n-1]=0
その場合 B[k] は全て-1になる
○ もし A[0]=0 なら B[k]は全て正となる
すなわち A[k+1]>A[k]を満たす必要がある。 同じ理屈から
その場合 B[k] は全て1になる
結論 B[k]は0を含めないとしたらそのような数列は n=2の時にしかない。
0349
NGNGもともと1オクターブ+1度の音符を一つずつ並べて、1度から11度までの
全ての音階を含む音符列を作るという音楽の問題を一般化したものらしい。
0350345
NGNG例えばn=12の場合
1番の数列は「1〜12」もしくは「0〜11(mod 12)」の12個の整数を使ったもので任意の置換
2番の数列は「1〜11」の11個からなる「差の絶対値」の数列
ということでした。
(負数を含める場合は((+,-)*6)-1で11個になります。)
0351345
NGNG3行目以下訂正
差(interval)は「時計読み」です。
1番の数列の、ある部分が{2,3}となってる場合の差は1
{3,2}となってる場合の差は11となります。
絶対値ではなかったですね(汗
0352345
NGNGA=10,B=11です
1番:0295471AB386
2番:278B369145A(6)
こういう数列を算出するアルゴリズムを考えたいのですが、
是非専門家のお力をお貸しねがえれば・・
どうも2番の数列の真ん中と最後には必ず6がくるらしいのですが・・
0353345
NGNG(n)は個数で(n-1)は数値自身をあらわします。
modulo arithmeticでこのように書くべきでしたね。(12=0)
1番:0295471AB386(0)
2番:278B369145A(6)
0354デフォルトの名無しさん
NGNG0355594
NGNG0356デフォルトの名無しさん
NGNG4932桁の数
297432873839307941271439831657001782690861171774127...3919929342485788115111756822667491016704
になる。
0357354
NGNG0358デフォルトの名無しさん
NGNGプログラム板へ行って、2ちゃんのセキュリティガードの仕方を教えてもらえと言われました。
どなたかご存知ですか?なんか常識だみたいに言われたんですが。。。
0359デフォルトの名無しさん
NGNG君は悪い人に騙されたんだよ。
そんなのは存在しないから安心してお帰り。
0360デフォルトの名無しさん
NGNG負の値を2の補数表現を使うとします。
2進数で10000011は10進数で何ですか?
また16進数では?
0361デフォルトの名無しさん
NGNG(83)16かな
0362デフォルトの名無しさん
NGNGありがとうございます。
やっぱりこうでいいのか。
0363デフォルトの名無しさん
NGNGちゃんと宿題に「2ちゃんで聞きました」って正直に申告しとけよ。
0364デフォルトの名無しさん
NGNGベンチマークに使われるくらいだからアルゴリズムは「総当たり」っぽい。
0365デフォルトの名無しさん
NGNG0366デフォルトの名無しさん
NGNG0367デフォルトの名無しさん
NGNG一般の場合は知らんが、n+1が素数の時は簡単に構成できるぞ。
0368デフォルトの名無しさん
NGNGほんとですかい?
0369デフォルトの名無しさん
NGNG[n+1が素数]で思いだしたけど
ひょっとしてそれは[等比数列]によってかな?
0370367
NGNG0371デフォルトの名無しさん
NGNG一つの解だけなら簡単なんだけどな。
0372デフォルトの名無しさん
NGNGあっ!やっぱりかもしれない・・・しらべてみよ
0373デフォルトの名無しさん
NGNG367さんに感謝
0374デフォルトの名無しさん
NGNG0375デフォルトの名無しさん
NGNG0376デフォルトの名無しさん
NGNG0377デフォルトの名無しさん
NGNG1と2両方の条件を満たすものは一種
のようです。
0378デフォルトの名無しさん
NGNG0379デフォルトの名無しさん
NGNG作るものによる。
たとえばシミュレーションには必須だ。
ただし分野によらず高校数学レベルを理解できる程度には論理になれてないと
プログラミングでメシ食うつもりなら苦労するだろう。
(理屈が理解できればべつに公式は覚えている必要はない。そんなものは本に載っている)
0380デフォルトの名無しさん
NGNGいいでしょうか?
0381デフォルトの名無しさん
NGNG△に分割するのは楽そうだけど、凸なんて八角形にするのは
大変そうだなぁ。
0382デフォルトの名無しさん
NGNG0383デフォルトの名無しさん
NGNGどっかに片方が凸点になってる凹点から初めて 次に角度が負になる個所で分割したらいいんじゃないの?
これではダメなのかな
0385デフォルトの名無しさん
NGNG0386デフォルトの名無しさん
NGNG単に凸化するだけなら、
1. 凹点Aを探す
2. A-Bが他の辺と交わらないような点Bを探す
3. A-Bで分割、1に戻る
の繰り返しで出来る。
綺麗な分割にしようとすると、
・できれば分割数を最小にしたいとか、
・鈍角ができるだけ出ないようにしたいとか、
・切断する辺の長さを短くしたいとか、
いろいろあるけど、両立できるとはかぎらないので難しい
評価関数とヒューリスティックのさじ加減の問題になる…
0387380
NGNGえっと、それだと平面ですよね?
3次元でやりたいんです。
やっぱ難しいですよねー。
0388387
NGNG3次元で「1. 凹点Aを探す」方法って??
0389デフォルトの名無しさん
NGNG0390デフォルトの名無しさん
NGNG0391デフォルトの交点
NGNGもしあるならその座標を求める。
一番きれいに書いた人が優勝。
stuct LINE{
int x1,x2,y1,y2;
};
bool IsCross(LINE line1,LINE line2,POINT *is_cross){
・・・・・
・・・・・
}
ちなみに俺100行ぐらいかかった(恥)
0392デフォルトの交点
NGNG失礼
POINT *is_crossはPOINT *cross_pos
の間違いだった。
0393デフォルトの名無しさん
NGNG0394デフォルトの名無しさん
NGNG0395デフォルトの名無しさん
NGNG矩形の各辺と線分の交点判定をそれぞれやるしかないの?
0396デフォルトの名無しさん
NGNGやるしか無いと思うけど
先に、点の内外判定やれば頻度は下げられるとは思う
(内,内) 交点無し
(外,内) 交点有
(内,外) 交点有
(外,外) 可能性あり->判定
0397デフォルトの名無しさん
NGNG基本は >>396 でいいけど、内外の判定情報を増やしておくと、
(上の外,上の外)なら交点無し
(上の外,下の外)なら交点のある可能性あり→要詳細判定
とか分かるので、もうちょっと頻度は減るし、矩形のどの辺と調べればいいかもわかる。
具体的なアルゴリズムは「クリッピング」「アルゴリズム」をキーワードにすれば見つかると思う
ttp://www.people.or.jp/~fussy/algo/algo1-2.htm
とか。
0398デフォルトの名無しさん
NGNG使っているのはUBASICです。
三次関数f(x)=x3+ax2+bx+c の係数 a,b,c を入力して、
f(x) の極大値と極小値を出すのを今考えているんですけど、
なかなか初心者なもんでうまくいきません。
お願いします。
0399デフォルトの名無しさん
NGNG係数a, b, cに関わらず極大値は無限大、極小値は無限小。
0400デフォルトの名無しさん
NGNG> 係数a, b, cに関わらず極大値は無限大、極小値は無限小。
極大/極小 != 最大/最小
>> 398
2階の導関数を調べればOK.
0401デフォルトの名無しさん
NGNG詳しく説明されているサイトを教えてください。
0402デフォルトの名無しさん
NGNG1階じゃなくて?
0403デフォルトの名無しさん
NGNGただ、3次関数の場合は、微分がゼロであっても、極大極小点が無い場合がある
0404デフォルトの名無しさん
NGNG0405IP記録実験
NGNGhttp://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0406デフォルトの名無しさん
NGNG最初ね、かぶっちゃったこともあったしでもあいぴーっていうのはかぶらないんだね♪
0407IP記録実験
NGNGhttp://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0408デフォルトの名無しさん
NGNG0409デフォルトの名無しさん
NGNG通報しません!
0410デフォルトの名無しさん
NGNGIPとは何でしょうか
↑素人は誰だ!!!!!!!
0411デフォルトの名無しさん
NGNG2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 138720人 発行日:2003/1/9
年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。
そんなわけで、年末に予告したIP記録ですが実験を開始しています。
「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0412デフォルトの名無しさん
NGNG去年まで単なるメディアアーティストだったけど、TBCと動物病院から告訴されて
二年で数億損害賠償請求された。払う気ないけどね。
初回のみだけど、警察にログ提出を求められても任意だから拒否できる。
●売るだけ売りまくって2ch自体あぼーんすることもできるし、また転送量問題
思い切って持ち出せば50パーセントで信者が2倍になる。
金なきゃ雑誌やTVにもっと顔出せばいいだけ。売名行為にもなる。
「ハッキング」から「夜のおかず」まで色々あるのでマジでお勧め。
http://www.2ch.net
0413デフォルトの名無しさん
NGNG事が原因の1つとなって潰れたが、いまの2chは「誹謗・中傷・密告お断り」というのを出したのと
同じ事なんだよなあ、、、
0414デフォルトの名無しさん
NGNG先程、「天才」と呼ばれた
ディカブラットさまには頭を下げておきました。
皆さんが何を考えるか知りませんが
個人的に、
「結構ヤバイ」んです。
貴方方は気楽でしょうが。
末期がんに近い感じで追い詰められています(実際のクランケ御免なさい)
コレ、嘘じゃないのです
聞いて下さい
お願いします
0415デフォルトの名無しさん
NGNG0416デフォルトの名無しさん
NGNG0417デフォルトの名無しさん
NGNG多少の事でゴチャゴチャいうやつらが
自覚無自覚はともかくネットの可能性を潰そうとする
悪権力の子分になってるという現実は理解しようね
0418デフォルトの名無しさん
NGNG正直、2ちゃんねるが有名になったから訴えられるようになったと考えた方がいいと思うんだが?
0419デフォルトの名無しさん
NGNGなんかぼたんおしたらブラクラ風。
0420デフォルトの名無しさん
NGNG0421デフォルトの名無しさん
NGNG見にくいな。
特にそこの115はまとめになってないし。
それよりなんでそんなに頻繁にまとめ直すんだろう?
0422デフォルトの名無しさん
NGNGヽ(`Д´)ノ ウワァァン
0423デフォルトの名無しさん
NGNG皮肉な話だが2chで誰かに応えてもらったのって久しぶりだ>365
0424デフォルトの名無しさん
NGNG0425デフォルトの名無しさん
NGNG「裁判で負けたからしぶしぶ」であることだよなぁ〜。
0426デフォルトの名無しさん
NGNG0427デフォルトの名無しさん
NGNG2chはもはや常人がふらっと来て書き込みするような雰囲気じゃない・・・
0428デフォルトの名無しさん
NGNG0429デフォルトの名無しさん
NGNG2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 139038人 発行日:2003/1/10
なにやら、連日メルマガだしてるひろゆきです。
そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。
重くなって落ちたりしてもご愛嬌ってことで。。。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0430デフォルトの名無しさん
NGNG0431デフォルトの名無しさん
NGNG0432デフォルトの名無しさん
NGNG内部告発・差別的発言・タメ口・顔文字
ぐらいかな
0433デフォルトの名無しさん
NGNG14万8千光年は遠すぎたのだ
0434デフォルトの名無しさん
NGNG「韓国人は糞」← これくらいならどう足掻いても訴えられないっしょ。
543 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/10 20:58 ID:jWxHxvti
質の低い書きこみの例549 名前:fushianasan 投稿日:03/01/10 20:59 ID:XOyWB09Q
でも実際の類の書き込みは減らないのでわ?
551 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/10 21:00 ID:jWxHxvti
逮捕者が出れば、もちっと書きこみ減るかと。
0435デフォルトの名無しさん
NGNG発信元がわかるんで、告発された側が「よーし金でねじ伏せちゃうぞー」
とか言って裁判でも起こしまくって。
そんな状況はガクブルだから、面白そうな(真実である事が前提の)投稿は、減る?のかな?
考え過ぎ?って言うか見当違い?どうだ?どうなんだ?
0436デフォルトの名無しさん
NGNGいつか全板で強制表示になるのだろうか?
スクリプトくめばどこの板だって荒らせるだろうし
0437デフォルトの名無しさん
NGNGその人物になんかしたい、と書き込んだ人間についての情報は
おれがもし警察だったら、一応知ろうと努力はする。
なかにはそうとうエグいのもあるし。
0438デフォルトの名無しさん
NGNG0439デフォルトの名無しさん
NGNG0440デフォルトの名無しさん
NGNG0441デフォルトの名無しさん
NGNGちゃんちゃらおかしい事抜かしてましたが、そこんとこどうよ
0442デフォルトの名無しさん
NGNG0443デフォルトの名無しさん
NGNGで、書き込み者が特定できないから云々・・となると思うが・・・。
0444デフォルトの名無しさん
NGNG0445山崎渉
NGNG0446デフォルトの名無しさん
NGNG0447山崎渉
NGNG0448デフォルトの名無しさん
NGNG0449デフォルトの名無しさん
NGNG0450デフォルトの名無しさん
NGNG0451デフォルトの名無しさん
NGNG先生、高校数学が馬鹿でも理解できる本教えてん
0452デフォルトの名無しさん
NGNG0453デフォルトの名無しさん
NGNG0454デフォルトの名無しさん
NGNGお前ら最強の将棋プログラムしてみろよ part2
から流れてこさせてください。
http://pc2.2ch.net/test/read.cgi/tech/1043246252/148-
の流れで、「麻雀の場合の数」について納得してない人がいます。
0455デフォルトの名無しさん
NGNGあなたはそこの174と180のどちらの方ですか?
0456デフォルトの名無しさん
NGNG180でつ。
0457名無し募集中。。。
NGNGそうですか
もう納得してるかもしれませんね
0458デフォルトの名無しさん
NGNG与えられた仕様書通りにコーディングするだけなら算数で十分かもなぁ。
でも、研究開発とかでソフトウェア設計するなら数学いると思われ。
あと、理系科目全般、数学の知識は必須。
数学出来る人間は大体なんでも出来る。
0459デフォルトの名無しさん
NGNG0460デフォルトの名無しさん
NGNG円の方程式に、直線の方程式から得られる関係を代入して、
虚数でない解を持つかどうかを調べる。
0461デフォルトの名無しさん
NGNG0462デフォルトの名無しさん
NGNGお前は中学生か
0463デフォルトの名無しさん
NGNG1.直線と直角の傾きで円の中心を通る直線の式を求める
2.円の中心から1で求めた直線と元の直線の交点までの距離を求める
3.求めた距離が円の半径より長ければ交差していない
以上
0464459
NGNG483はわかったけど460はわかりそうでわからないっす
脳みそ中学生でした
0465デフォルトの名無しさん
NGNG0466デフォルトの名無しさん
NGNG多変数多項式のGCDを求めるアルゴリズムを教えてください。
0467デフォルトの名無しさん
NGNG0468デフォルトの名無しさん
NGNG0469デフォルトの名無しさん
NGNG円と交差してるかどうかは、円の中心点から半径以内に直線があるかどうか
点と直線の距離がわかれば解けます。
1、円の中心を原点に平行移動して 検索ワード「原点迄の距離」
2、直線x軸に平行になるよう回転して、y軸との距離
どちらかを使います
>>466
この板で[多変数多項式のGCD]なんて言われても判りません。
もっと問題を判り易く解説して下さい。
多変数多項式とは? その多変数多項式の大小の定義は?
0470デフォルトの名無しさん
NGNGGCD って最大公約数よね?
多変数多項式クラス作って、それに適切な剰余演算定義してやれば
後はユークリッドの互除法にかけるだけだろ。
多変数多項式の剰余演算をどうやれば作れるかはム板の連中には荷が重いんじゃないかな。
0471デフォルトの名無しさん
NGNG>ム板の連中には荷が重いんじゃないかな。
といいつつ、間違っている>>470は、はたしてム板の住人でした。
0472466
NGNGすみませんでした。「多変数多項式」は、
a^2 - b^2 - ca + bc /* (a + b - c)*(a - b) */
ab + bc + b^2 - c^2 /* (a + b - c)*(b + c) */
というようなものを考えていて、例えばこの二つの式から、共通因数
a + b - c
を導き出す方法が知りたいということです。大小については、
(a^3 * b^3) > (a^3 * b^2) > (a^2 * b^3) > (a^2 * b^2)
という感じがいいです。
>>470
剰余演算とはどういったものでしょうか?
一変数に関する剰余演算(ほかの文字は定数とみなす)はやってみましたが、
全体の次数を減らす方向には動かないようでした。
>>471
詳しく教えてください。
0473デフォルトの名無しさん
NGNG0474デフォルトの名無しさん
NGNGそれより簡単じゃないかな。
0475デフォルトの名無しさん
NGNGいわゆる記号数式処理ですか・・・・出来るというかノウハウ持ってる人は限られてるなあ
このスレ見てるかなあ
0476デフォルトの名無しさん
NGNG結局 GCDはユークリッドの互除法しかないわけで、
ただ、スカラと違って大小関係が定まらないから収束の保証が無いのがネックだね
0477デフォルトの名無しさん
NGNG俺には難しすぎるページばかり。
例えば8BitのCrcで生成多項式が1+X^3+X^7の場合はどのように
計算すればよいの? サルでも分かるレベルでお願い(;_;)
0478デフォルトの名無しさん
NGNG>例えば8BitのCrcで生成多項式が1+X^3+X^7の場合はどのように
俺も詳しくないのでビット数があってない(8bitならX^8が無い)場合に
どうすれば良いか分からんので1+X^3+X^7+X^8として説明するが
(恐らくX^8がなければ7bitのCRCとするべきなのだと思うが…)
生成多項式から次のように変換する
876543210 ← X^n のnに対応する値
110001001 ← 多項式にX^nが含まれていれば1
求めるCRCは8ビットなので、そのビットの値を無視して数値化し p とする
p = 0x91 (10010001) ← 多項式のX^0に対応するビットを最上位とする
CRCの初期値を0とする
CRC = 0
CRCを取りたいデータをnバイトのデータの配列 s とし
次からの一連(字下げ)の処理をn回繰り返す
CRCの最下位バイトに配列sのnバイト目のデータの値をxorする
CRC = CRC ^ s[n]
次からの一連(字下げ)の処理を(1バイト内の)bit回繰り返す
CRCの最下位ビットの値をflagとしCRCを1ビットシフトする
flag = CRC & 1 ← 最下位ビットを取っておく
CRC = CRC >> 1 ← そのビットをシフトして消す
flagが1ならCRCにpをxorする
CRC = CRC ^ p
0479デフォルトの名無しさん
NGNG正確にはCRCの値は、初期化の後に反転させたり、最後に反転させたり
データの扱い方によって変わったりしますが、大体こんな所です
で、この処理が何をやってるのか説明すると
元のデータをビットの列として並べて(この並べ方が結構曲者?)
一番左側を最上位と考え、最下位にCRCのビットに等しい0を追加します
次に1が立ってる最上位のビットに合わせて多項式の値でxorします
00011001000010000000… 元のデータ
000110010001 ← (多項式の値を最上位の1の位置に合わせてxor)
&bnsp; ↓
00000000000110000000… ↑の2つの値をxorした結果
00000000000110010001 ← ( 次の1の位置に合わせて )
&bnsp; ↓
00000000000000010001…
以下略
小細工が入る事を除けば基本は、こんなところで
↑の処理を繰り返し、元のデータの領域の値を全て0にした結果
最下位に付け足したビットに残った値がCRCとなります
0480デフォルトの名無しさん
NGNGスマソ
字下げが上手く行って無かったので修正
次からの一連(字下げ)の処理を(1バイト内の)bit回繰り返す
CRCの最下位ビットの値をflagとしCRCを1ビットシフトする
flag = CRC & 1 ← 最下位ビットを取っておく
CRC = CRC >> 1 ← そのビットをシフトして消す
flagが1ならCRCにpをxorする
CRC = CRC ^ p
0481本当にスマソ
NGNG>>478&480は分かると思うけど
> 次からの一連(字下げ)の処理を(1バイト内の)bit回繰り返す
の文は、最後までの全ての文を対象としています
0482デフォルトの名無しさん
NGNGレスありがとうございます。もう少し調べてみます。
0483デフォルトの名無しさん
NGNG0485デフォルトの名無しさん
NGNG2つずつで最大公約数を求めて、その最大公約数どうしで、また最大公約数を求めようかと思っているのですが、
ほかに何かいいほうほうはあるでしょうか?
0486デフォルトの名無しさん
NGNGユーグリッドの互除法を4つでやれば?
0487デフォルトの名無しさん
NGNG小さい方のふたつの公約数のうち、残りのふたつを割り切れるヤツってのは?
0488デフォルトの名無しさん
NGNG┏┻┓ ┏┻┓
0489デフォルトの名無しさん
NGNGと同等。
似たスレあったっけ?
0490デフォルトの名無しさん
NGNGたった4つぐらいならどうやってもいいような、
いや、(2つ,3つではなく)4つだからこそ難しいのか。
gcd(a,b) の計算時間は log(min(a,b)) に依存するし
maxやminと違って下限も決まってるから、
ソートされていれば小さいほうから順に
gcd(..gcd(gcd(gcd(n_1,n_2),n_3),n_4),...) が一番速いかと。
>>488は入力される個数が増えると遅くなりそう。なんとなくだけど。
ソートされてなければ、入力される数の性質を吟味して
そのままやるかソートしてやるか選ぶのが吉。
後出しじゃんけんみたいな特異な例をあげると
(240^10000 , 3^10000 , 160^10000 , 5^10000)
これだと488が一番遅くて
(240^10000 , 160^10000 , 5^10000 , 3^10000)
これだとそのままやるのが一番遅い
0491デフォルトの名無しさん
NGNG最速だと思われるアルゴリズムをおしえてください
0492デフォルトの名無しさん
NGNG0493デフォルトの名無しさん
NGNG下から2桁づつ区切っていく。
それと0〜99の平方根・・・というか、0〜10の平方をテーブルに
0494デフォルトの名無しさん
NGNG0495デフォルトの名無しさん
NGNG点と平面があって、「点から平面への垂線」と「平面」交点の座標を求めるにはどうすればいいですか?
0496デフォルトの名無しさん
NGNGまずはその点が原点になるように全体を平行移動させましょう。
平面をx-y平面と水平になるよう原点を中心に回転させましょう。
その後、平面のz軸座標に今の逆変換を行って下さい
0497デフォルトの名無しさん
NGNGここで語ってるやつは、どのプログラミング言語を使ってれば
自分が生き残れるかしか頭に無いだろ。
技術なんてあるわけないじゃん。
「使えねぇ〜OX」スレだって、自分の事だろ。やけに心情的に詳しいしさ。
0498デフォルトの名無しさん
NGNG0499デフォルトの名無しさん
NGNG0500デフォルトの名無しさん
NGNGその中の組み合わせで3万円に
一番近い数字になるように計算して一番近い順にならべていく方法が
あったら教えてください。
一応、考えている言語はC言語です。
0501デフォルトの名無しさん
NGNG0502デフォルトの名無しさん
NGNG典型的なナップザック問題だと思うので、それで検索してみたら?
http://www.google.co.jp/search?q=%E3%83%8A%E3%83%83%E3%83%97%E3%82%B6%E3%83%83%E3%82%AF%E5%95%8F%E9%A1%8C
0503デフォルトの名無しさん
NGNGありがとうございます。調べてみます。
0504デフォルトの名無しさん
NGNGhttp://www.amazon.co.jp/exec/obidos/ASIN/4874084141/qid=1047620985/sr=1-2/ref=sr_1_2_2/249-5951926-2649155
これって買いですか?
0505デフォルトの名無しさん
NGNGみんな持ってると思うよ
0506デフォルトの名無しさん
NGNGそんなことないよ。
てか、それの全ソースってWebで公開されてなかった?
他の書籍だっけか
0507デフォルトの名無しさん
NGNG『C言語による最新アルゴリズム事典』サポートページ
http://www.matsusaka-u.ac.jp/%7Eokumura/algo/
でも本は持っていたほうがよい
つか、俺の周りでは、もっていないやつがいない(15人ほどだが)
0508デフォルトの名無しさん
NGNG最後に勝ち残った者が3枚のドアから1枚だけ選ぶ!
どれか1枚の後ろに賞品があって、当たればもらえるということだ!
番組の司会者はどのドアの向こうに賞品があるか知っている!
参加者が選んだところで、司会者が残りの2枚のうちはずれを1枚開けて、
『良かったらドアを変えてもいいですよ』と言う!
では、ここで参加者は自分の選んだドアを開けるべきか?!
それとも変えるべきか?!あるいは変えても、そのままでも関係ないのか?!
0509デフォルトの名無しさん
NGNG関係ない。
0510デフォルトの名無しさん
NGNG変えたほうが確率的には得。
0511デフォルトの名無しさん
NGNG結局参加者が選んだドアが正解かどうかわからないのであれば、
選択肢が3つ(正解―はずれ―はずれ)から2つ(正解―はずれ)になっただけ。
よってそのままでも関係ない。
0512デフォルトの名無しさん
NGNGいまだにこんなこと言う人がいるのか。
結構、有名な問題だけどな。
めんどくさいので、数学板から転載。
参加者が最初に選んだ一枚があたりである確率は1/3なので、
司会者側にあたりがある確率は2/3になる。
司会者がはずれを1枚あけたとしても、司会者側にあたりがある確率は
2/3のままだから、変えたほうが得。
511は、ドアが100枚になっても同じ事を言うのかな。
参加者が1枚引き、司会者が残りのドアからはずれを98枚開いて、
参加者と司会者の2枚が残ったとき、あたる確率は同じといえるのか。
0513デフォルトの名無しさん
NGNGそんなことはない。
最初に自分が当たりを引く可能性は 1/3
この時は、司会者が残りのどちらをあけても最終的に残ったドアははずれだだから...
・変えた時ははずれ
・変えない時は当たり
最初に自分がはずれを引く可能性は 2/3
この時は、司会者ははずれを開けて最終的に残るのは当たりだから...
・変えた時は当たり
・変えない時ははずれ
つまり変えない時の確率は 1/3 の確率でしか当たらないが、変えた時は 2/3 の確率で当たることになる。
0514デフォルトの名無しさん
NGNG説明を読んでもわからない。
ネットの説明でもわからない。
0515デフォルトの名無しさん
NGNG○●◎
0516511
NGNGそれなら話しは変わるのだが、そうでなければ結局同じじゃないのか?
0517デフォルトの名無しさん
NGNG> あれ?1枚目をめくったとき、自分が正解したかどうかわかるの?
それがわかったら、100% 正解できるだろうが。
0518デフォルトの名無しさん
NGNG0519511
NGNGごめん、図示してようやくわかったよ。
Aを正解、B、Cを不正解として書く。
自分は「一番最初に引いたもの」であり、司会者は「その残りの選択肢」
残りは「司会者がその中の1つの不正解を外したもの」として考える。
自分 − 司会者 − 残り
A ― BC − B(またはC)
B ― AB − A
C ― BC − A
よって、最初で正解する確率は1/3、残りで正解する確率は2/3である。
もっと簡単に言えば「司会者が誤答を減らすので、残りのほうが有利」ということか。
0520511
NGNGやね…… (恥
0521デフォルトの名無しさん
NGNG0522デフォルトの名無しさん
NGNG0523デフォルトの名無しさん
NGNG自分は「一番最初に引いたもの」であり、司会者は「その残りの選択肢」
残りは「司会者がその中の1つの不正解を外したもの」として考える。
自分 ― 司会者 − 残り
A ― BC − B(またはC)
B ― AC − A
C ― AB − A
よって、最初で正解する確率は1/3、残りで正解する確率は2/3である。
もっと簡単に言えば「司会者が誤答を減らすので、残りのほうが有利」である。
0524デフォルトの名無しさん
NGNG最終的には、2枚の扉が残る。
どちらかひとつが当たりで、もう一方が外れ。
回答者はそれを選びなおすだけ。確率 1/2 。
先ほどまでに選んでいたものも、新しく選びなおすのも同じ確率。
0525謎だ
NGNG最初当たっていたのに、替えてはずれる確率=1/3*1/2
最初はずれていて、替えずにはずれる確率=2/3*1/2
最初はずれていたのに、替えて当たる確率=2/3*1/2
0526デフォルトの名無しさん
NGNG紛らわしいのは、問題の意味。
選択肢は「変える/変えない」であって「どのドアを選ぶか」ではない。
自分が正解を選んでいても、外れを選んでいても
司会者が外れを減らしてから選んだほうが正解率は上がる。
0527デフォルトの名無しさん
NGNG最初から当たっていて、替えずに当たる確率=1/3*1/2
最初当たっていたのに、替えてはずれる確率=1/3*1/2
最初はずれていて、替えずにはずれる確率=2/3*1/2
最初はずれていたのに、替えて当たる確率=2/3*1/2
以上より、
変えることで得する確率 2/3*1/2 = 1/3 , 損をする確率 1-1/3 = 2/3
よって「変えないほうが得」である。
>>526
>司会者が外れを減らしてから選んだほうが正解率は上がる。
それが条件付。
条件をつけられた以降は、その時点ですべてをリセットしないといけない。
したがって、司会者がドアを2枚に減らした時点で、
自分が選んだドア、と、選んでいないドア、の二つしかない。
だから、変更するかしないかであたる確率は 1/2 である。
...さて、どちらが正しい?
0528デフォルトの名無しさん
NGNG表を見ないで箱の中にしまった。
そして、残りのカードをよく切ってから3枚抜き出したところ、
3枚ともダイヤであった。
このとき、箱の中のカードがダイヤである確率はいくらか。
http://academy2.2ch.net/test/read.cgi/gengo/1014986922/530-
549のコメントに注目。
0529デフォルトの名無しさん
NGNGどっちも間違ってる。
> 最初から当たっていて、替えずに当たる確率=1/3*1/2
1/2 ってどう言うこと ?
最初から当たってる確率は 1/3 だ、絶対変えないと信念持ってる人は 1/3 の確率で当たることができる。
> >>526
> 条件をつけられた以降は、その時点ですべてをリセットしないといけない。
アホチャうん ?
0530デフォルトの名無しさん
NGNG> >>525
> 最初から当たっていて、替えずに当たる確率=1/3*1/2
> 最初当たっていたのに、替えてはずれる確率=1/3*1/2
> 最初はずれていて、替えずにはずれる確率=2/3*1/2
> 最初はずれていたのに、替えて当たる確率=2/3*1/2
>
> 以上より、
> 変えることで得する確率 2/3*1/2 = 1/3 , 損をする確率 1-1/3 = 2/3
> よって「変えないほうが得」である。
以上より、
変える事で損をする確率1/3*1/2 = 1/6,得する確率 1-1/6 = 5/6
よって「変えるほうが得」である。
+激しく矛盾+
0531デフォルトの名無しさん
NGNG条件付確率についてはそれで正しいと思うが?
確率の和が常に1になるようにしなければならないので。
0532デフォルトの名無しさん
NGNG0533デフォルトの名無しさん
NGNG禿同
0534デフォルトの名無しさん
NGNG自分がはずれを選んだ時、司会者は残り2つのうち、必ずはずれを引かなければならない。
1回目 司会者 2回目
--------------------------------------------
A B A = 1/3 * 1/2 * 1/2
B C = 1/3 * 1/2 * 1/2
C C = 1/3 * 1/2 * 1/2
C A = 1/3 * 1/2 * 1/2
B C B = 1/3 * 1/2
C A = 1/3 * 1/2
C B C = 1/3 * 1/2
B A = 1/3 * 1/2
選択を変えない場合……(1+1+2+2)/12=6/12
選択を変えた場合………(1+1+2+2)/12=6/12
結論:1/3のクジが1/2のクジになっただけで、変更に有利不利はない。
0535デフォルトの名無しさん
NGNG司会者は 参加者が1枚選んだところで、司会者が残りの99枚のうちはずれを98枚開けてくれる。
つまり、参加者が選んだドアが外れなら(外れる確率は99/100) とてもお得だよね。
さあ、変えた方が得かどうか
0536デフォルトの名無しさん
NGNG0537デフォルトの名無しさん
NGNGあんたの論理だと、選択変えない人が当たりを引く確率は...
A-B-A: 1/3 * 1/2 * 1/2
A-C-A: 1/3 * 1/2 * 1/2
の2つのパターンだから、2 * (1/3 * 1/2 * 1/2) = 1/6
になっちゃうんだけど、そこで既におかしいと思わない ?
0538デフォルトの名無しさん
NGNGB-C-B や C-B-C も入るのでは?
0539デフォルトの名無しさん
NGNG>>534 は、A が当たりと仮定しての話だろ ?
0540デフォルトの名無しさん
NGNGあ、そうか(汗)。
0541デフォルトの名無しさん
NGNG当たりを選んでから、選択を変える人が当たる確率は1/6、
はずれる確率も1/6。
当たりを選んでない場合は、選択を変えても変えなくても同じで、
その確率が2/3。
上のほうで、余事象で計算してる人が2人いたけど、
損も得もしない確率を忘れてるね。
0543デフォルトの名無しさん
NGNG意味わからん。
> 当たりを選んでから、選択を変える人が当たる確率は1/6、
当たりを選んでから、選択変えたら「必ず」外れるんじゃ ?
0544デフォルトの名無しさん
NGNG選択を変えた時に当たる確率は、最初の選択が間違ってる確率と同じ。
ドアが 3枚なら 2/3 だし、 100枚なら 99/100 。
# モンテカルロなら書いて確認したけど、読みたい?
0545544
NGNG普通に random にやってみて調べる program 、でした。
0546デフォルトの名無しさん
NGNGん ? 別にモンテカルロ法って円周率だけじゃないと思うが ?
説明とプログラムは円周率が簡単だし、結果の検証もしやすいから例に良く取り上げられるだけだよ。
0547デフォルトの名無しさん
NGNG確率論経由じゃないの?
0548デフォルトの名無しさん
NGNGモンテカルロ法=普通にrandomにやってみて調べるprogram
0549デフォルトの名無しさん
NGNG2ch では、正答を即答すればするほど、その後に(間違った)反論が続きます。
2ch での正しいレスの返し方は、多少のネタや誤答を待ってから行うことです。
0550デフォルトの名無しさん
NGNGドアが100枚だったら、
「参加者が1枚引き、司会者が残りのドアからはずれを【1枚】開いて、
参加者の1枚と司会者の98枚が残ったとき、あたる確率は同じか?」
のような例え/解説だってありえる。この場合結論は自明でないだろう。
つまり例えを用いるなら、その例えの妥当性も添えないと駄目。
とかゴネ煽って議論を混乱させるな。
俺は511じゃないからゴネないよ(w
0551デフォルトの名無しさん
NGNGまぁその場合「入れ替える」とは言わないけどナー
0553デフォルトの名無しさん
NGNG0554デフォルトの名無しさん
NGNG参加者の前にはA,B,Cの3枚のドアがある。どれか1枚の後ろには賞品が隠されている。
参加者はAのドアを選ぼうと、心の中で決めていた。司会者がはずれのドアを開けた後
ドアを変えれば、2/3の確率で賞品をゲットできることも知っていた。
ところが今日の司会者は、参加者がドアを選ぶ前にBのドアを開けた。
『このドアははずれです、さてドアを選んで下さい』
ここで問題。今、参加者の前にはAとCの2枚のドアがある。
参加者がCのドアを開けたとき賞品を獲得する確率はいくらか。
解答を書く時は、>>508の問題でドアを変えた時の、賞品獲得確率も書いてほしい。
0555デフォルトの名無しさん
NGNG0556デフォルトの名無しさん
NGNGお前アフォちゃう ?
そんなん 1/2 に決まっとるがな。
0558デフォルトの名無しさん
NGNG...どうなるかって、答えはもう出てるじゃないか。
0559554
NGNG>>508の問題とその解答を読んで楽しませてもらいました。(レスは付けてませんが)
「ドアを変えたほうが2/3の確率で有利」という意見が大勢のように見えましたが
どうも、すっきりしない気分なので上のような問題を作ってみました。
(1)司会者が参加者の選択を見てから、他のはずれドアを開けた場合(>>508)
(2)司会者が参加者の選択を知らずに、たまたま他のはずれドアを開けた場合(>>554)
で、どう条件が違うのか 2/3派の方たちの意見もとむ。
0560デフォルトの名無しさん
NGNG1) 1/3 + 2/3 = 1
2) 1/2 + 1/2 = 1
0561デフォルトの名無しさん
NGNGこの問題は、次のように書き直すことができる。
司会者の前にはA,B,Cの3枚のドアがある。どれか1枚の後ろには賞品が隠されている。
ところが参加者は遅刻をしてしまった。先に司会者がはずれのドアであるBを開けてしまった。
そのあと参加者はやってきたのだが……
ここで問題。今、参加者の前にはAとCの2枚のドアがある。
参加者がCのドアを開けたとき賞品を獲得する確率はいくらか。
************************************************************
ということで1/2。
参加者がどれを選択しても、それを司会者に伝えなければ影響はないので。
0562561
NGNG0563デフォルトの名無しさん
NGNGもしあったら教えて!
わからなかったので。
0564デフォルトの名無しさん
NGNG523は「Aを正解、B、Cを不正解として書く」という前提が誤り。
Aが不正解のケースを加味すれば1/2となる。
0565564
NGNG自分A 残りBC 司会者B 最終的な残りC
自分A 残りBC 司会者C 最終的な残りB
自分B 残りAC 司会者C 最終的な残りA
自分C 残りAB 司会者B 最終的な残りA
だから1/2だ
0566デフォルトの名無しさん
NGNG選択を変えた方が有利になってしまいますね。
うあー,納得したくない・・1/2 だと信じて疑わなかったのに・・
0567デフォルトの名無しさん
NGNG0568デフォルトの名無しさん
NGNG10000 回の試行で,
ドアを選ぶ→司会者がドアを開ける→そのまま派 .. 3333 回正解
同じく 10000 回の試行で,
ドアを選ぶ→司会者がドアを開ける→選択を変える派 .. 6666 回正解
ちょっと考え方を変えて
ドアを選ぶ→司会者がドアを開ける→
「残ったドアのうち,どちらを選ぼうか」と考え直す派 .. 5000 回正解
まぁ大体こんな感じになりますた。むちゃくちゃ面白いー。
これってゲーム理論と通じるところがあるですか? ゲーム理論は昔から興味があったけど。
0570デフォルトの名無しさん
NGNGABCの内、最初にAを選んだとする。
Aが当たる確率は1/3。Aが外れる確率(BCの内どちらかが当たる確率)
は2/3。
この場合はBCのどちらかに当たりが含まれる場合100%当てることができ
る(司会者がはずれを教えてくれるから)。
よって変えた場合は確率2/3で当てることができる。
という認識でいいの?
0571デフォルトの名無しさん
NGNGいいよん。
「選択を変える」という戦略をとると、最初に当たりを選んでいた場合は
自動的に外れ、最初に外れを選んでいた場合は自動的に当たりになる。
だから、当たる確率は最初に外れを選ぶ確率に等しい。
0572デフォルトの名無しさん
NGNG>>512は「番組の司会者はどのドアの向こうに賞品があるか知っている!」
という前提条件に違反しているので誤り。
各ドアに当りが有る確率は1/3、司会者がドアを1つ開けたとしてもそれは
100%ハズレのドアに決まっているので、残りのドアは選択肢が1つ減ったことにより
それぞれ当る確率が1/2に繰り上がる。
この問題は以下のように書きかえる事ができる。
「ドアが三つある。当りは1つ。ドアが1つ開けられ、それはハズレだった。
さて残りのドアの当る確率はそれぞれどれほどか?」
参加者が最初に選んだドアか否かは、当る確率に何ら影響を与えていない。
0573デフォルトの名無しさん
NGNGそこに条件付確率を入れると、問題の性質が変わるよね、ってことを言っているわけで。
>>572 そのものと、
最初に選んだドアが当たりだった場合、はずれだった場合に基づいて、
それぞれの選択変更による当たり・はずれの確率を求めること、と。
0574デフォルトの名無しさん
NGNGん?「司会者が当りを知らないという前提」って事?
それならば残りの箱が当りの確率が2/3ってのは分かる。
0575568
NGNG// 1 of 3
#include <iostream>
#include <stdlib.h>
#include <time.h>
int answer, panelists_selection, hint_door;
// ドアと賞品を準備
void prepare_3_doors_and_prize() { answer = rand() % 3; }
// 解答者はドアを適当に決める
void panelist_decides_door() { panelists_selection = rand() % 3; }
// 司会者は一度ドアを開ける
void master_decides_which_door_to_open() {
for ( int i = 0; i < 3; ++i )
if ( i != panelists_selection && i != answer ) {
hint_door = i;
return;
}
throw "やべぇ";
}
0576デフォルトの名無しさん
NGNGあたりまえだろ。
0577デフォルトの名無しさん
NGNGちゃんとすべてのパターンで検証した?
自分がはじめから当たりの場合と外れの場合で確率がことなるでしょ。
0578デフォルトの名無しさん
NGNG// 選択は変えない派
void panelist_does_nothing() { /* noop */ }
// もう一方のドアへ選択を変える派
void panelist_changes_door() {
for ( int i = 0; i < 3; ++i )
if ( i != hint_door && i != panelists_selection ) {
panelists_selection = i;
return;
}
throw "やべぇ";
}
// 「2つのドアのうち,どちらを選ぼうか?」と改めて考え直す派
void panelist_decides_again() {
int which = rand() & 1;
if (hint_door == 0) {
if (which == 0) panelists_selection = 1;
else panelists_selection = 2;
}
else if (hint_door == 1) {
if (which == 0) panelists_selection = 2;
else panelists_selection = 0;
}
else {
if (which == 0) panelists_selection = 0;
else panelists_selection = 1;
}
}
0579デフォルトの名無しさん
NGNGint main( int ac, const char *av[]) {
typedef void (*strategy_t)();
strategy_t panelist_final_answer[] = {
panelist_does_nothing, // 戦略 0
panelist_changes_door, // 戦略 1
panelist_decides_again // 戦略 2
};
srand( time(0) );
for (int strategy = 0; strategy < 3; ++strategy) {
int right = 0; // 正解の数
for (int i=0; i<10000; ++i) {
prepare_3_doors_and_prize();
panelist_decides_door();
master_decides_which_door_to_open();
// 解答者は何をするか?
panelist_final_answer[ strategy ]();
if (answer == panelists_selection)
++right;
}
std::cout << "戦略 " << strategy << " 正解数 : " << right << std::endl;
}
return 0;
}
0580デフォルトの名無しさん
NGNG>>>512は「番組の司会者はどのドアの向こうに賞品があるか知っている!」
>という前提条件に違反しているので誤り。
どこがどう違反してるのかわからん。
まさか、>>512の
>司会者側にあたりがある確率は2/3
を「司会者があたりをあける確率が2/3」と誤解してるのか?
0581デフォルトの名無しさん
NGNG○:変えないで当りになる
△:変えて当りになる
×:今回は考えなくて良いケース
■当りがAのケース
自分A 司会者B 残りC○
自分A 司会者C 残りB○
自分B 司会者A 残りC×
自分B 司会者C 残りA△
自分C 司会者A 残りB×
自分C 司会者B 残りA△
■当りがBのケース
自分A 司会者B 残りC×
自分A 司会者C 残りB△
自分B 司会者A 残りC○
自分B 司会者C 残りA○
自分C 司会者A 残りB△
自分C 司会者B 残りA×
■当りがCのケース
自分A 司会者B 残りC△
自分A 司会者C 残りB×
自分B 司会者A 残りC△
自分B 司会者C 残りA×
自分C 司会者A 残りB○
自分C 司会者B 残りA○
よって1/2
0582デフォルトの名無しさん
NGNG>どこがどう違反してるのかわからん。
司会者は当りのドアを絶対に開けないので、選択肢が減った事による
確率の増加を残りのドアだけに与える理由が無い。
故に
>司会者がはずれを1枚あけたとしても、司会者側にあたりがある確率は
>2/3のままだから
は前提に違反している。
0583デフォルトの名無しさん
NGNG参加者がドアを変更することであたりを得る確率は、1-1/(n-1) ってことでよい?
n=3, 1-1/2 = 1/2
n=100, 1-1/99 = 98/99
0584デフォルトの名無しさん
NGNG条件付確率だから、1/3 割る 1/2 で 2/3
だろ?
0585デフォルトの名無しさん
NGNGだから、それが間違いだっつーの!(笑
0586デフォルトの名無しさん
NGNGじゃあ残りの 2/3 の可能性も検討してみようかとふと脇を見ると,
なんと何時の間にか C のドアが開いているではないか! しかもハズレだっ!
という事で,B が当たりの確率は 2/3 になります。
これと似たような雰囲気で頭を悩ませる問題は技術者なんたら試験にも出て来ますよね?
「システムが上手く稼動する確率は 0.9 だ」とか値が示されているけど,
実際に計算する場合は 1 - 0.9 = 0.1 みたいに「上手く動かない確率」を
求めておくってのがポインツだったり・・・詳しくは忘れたけど・・・
0587デフォルトの名無しさん
NGNGよく考えろよ。
「残り2枚に当たりがある確率は2/3」
↓
「司会者が外れを1枚除く」
↓
「残り1枚に当たりがある確率は2/3」
これの、どこにおかしい点があるんだ?
それと、
>確率の増加
なんて意味不明な言葉を使うのはヤメロ
最初に選んだ扉が当たりの確率は常に1/3。
減ったりも増えたりもしない。
0588デフォルトの名無しさん
NGNG>なんと何時の間にか C のドアが開いているではないか! しかもハズレだっ!
>という事で,B が当たりの確率は 2/3 になります。
偶然にCが空き、かつそれがたまたまハズレならばその通り。
しかしそれは「司会者はどれが当りか知っている」という前提に違反するので誤り。
0589デフォルトの名無しさん
NGNGhttp://www.geocities.co.jp/SiliconValley-Oakland/9797/door.lzh
http://www.geocities.co.jp/SiliconValley-Oakland/9797/door_src.lzh
0590デフォルトの名無しさん
NGNG>↓
>「司会者が外れを1枚除く」
>↓
>「残り1枚に当たりがある確率は2/3」
>
>これの、どこにおかしい点があるんだ?
司会者は100%ハズレのドアを開けるので、それは最初から存在しないドアであるのと同じ。
だから残りのドアの確立だけ1/3から2/3に上げる根拠は無いのに上げているのがおかしい。
参加者が選んだドアも、選ばなかったドアも、当りの確率は1/3、分母が1つ減って1/2。
なんで、残りのドアを特別扱いするのか不思議
0591デフォルトの名無しさん
NGNG司会者は自分が最初に選んだ扉を空けられないからだよ。
つか、自分が最初に選んだ扉が当たりの確率は1/3のままなんだってば。
「司会者が外れを空けたから確率は1/2に増えた」なんて言うのは、
偶然当たったあとで「俺が選んだ扉は100%当たり」って逝ってるのと同じ。
ただの結果論。
0592デフォルトの名無しさん
NGNG0593デフォルトの名無しさん
NGNG解らない時のもどかしさと言ったら…
とにかくがんがれ>まだ解ってない人
0594デフォルトの名無しさん
NGNG分からん人は読んでミソ。
0595ぬるぽ男爵 ◆7jriffTro.
NGNG司会者は、当たりを知らないとしよう。
Aが当たりとすると、パターンは6通りじゃ。
自司残
ABC
CB
BAC
CA
CAB
BA
しかし司会者が当たりを知っていると・・・
0596デフォルトの名無しさん
NGNGドアを変えない場合は100枚のドアから一枚を選ぶ権利しか与えられないのと同じ。
ドアを必ず変える場合は100枚のドアから99枚選ぶ権利を与えられたのと同じ。
残り2枚になって運を天に任せコインを投げて変更するかしないか決めた場合は確率1/2。
0597デフォルトの名無しさん
NGNG「変えない」という決断をした時点で、2回目の選択をしたことになる。
結果的に同じものを選んだからといって、最初の確率と同じではない。
0598デフォルトの名無しさん
NGNG/_~,,..::: ~"'ヽ
(,,"ヾ ii /^',)
:i i"
|(,,゚Д゚) < http://www.k-514.com/
|(ノ |)
| |
ヽ _ノ
U"U
0599デフォルトの名無しさん
NGNG左の扉にはそのうち1枚だけを 右の扉には残りの99枚を入れました。
あたりがどのカードかは判りません。
さて、A君は 1:99 である事を知っていましたが、
B君はその事を知らず、どちらかに当たりが入っているとしか知りません。
A君とB君の当てられる確率はそれぞれいくらでしょうか?
0600デフォルトの名無しさん
NGNGあなたは1枚買いました。でも残りの300万枚を買い占めた大富豪が
あなたの1枚と大富豪の300万枚を交換してもいいといいました。
あなたならどうしますか?
0601デフォルトの名無しさん
NGNGどのみち確率は1/2だな、がっはっは!」
0602デフォルトの名無しさん
NGNGそれと確立とは違うぞ
0603デフォルトの名無しさん
NGNG0604デフォルトの名無しさん
NGNG0605596=600=601
NGNG目の前に扉が2つ残されて、「どちらを選んでも確率1/2だな」
と思ってしまう状況を大富豪の台詞にしてみたんですが。
ちょっと強引すぎですかね。
>596, >600, >601書いたのは私です。
0606596=600=601
NGNG・残りの国民の中で最も足の速い人間B君。
このふたりが100m走をした場合、勝つのはどちらでしょう。
ってもういいですね。
0607デフォルトの名無しさん
NGNG0608デフォルトの名無しさん
NGNG選択A(1/3)
司会者の持ってるカード:ABC−A=BC
不正解を1つ外した残り:BorC(どちらを選んでも結果は一緒)=不正解
選択B、C(2/3)
司会者の持ってるカード:ABC−(BorC)=A(BorC)
不正解を1つ外した残り:A=正解
選択を変えた場合
正解:不正解=2:1
これはもういいんだろ?
0609デフォルトの名無しさん
NGNGいいですか?司会者はハズレのドアを知っているので
・参加者が選んだドアと、はずれのドア
・残りのドア
とドアを分類する事が可能です。それぞれ当たる確立は1/2です。
はずれのドアを開けてもやはり1/2であることに変化は無いのです。
0610デフォルトの名無しさん
NGNG自分が最初にハズレのドアを選択する確率は、最初2/3だろ?
そして司会者が色々やって残った奴が正解する確率は(その中で)1/1だろ?
2/3 * 1/1 = 2/3じゃないのか?
0611デフォルトの名無しさん
NGNGでは次の問題なら?
3つのカードがあり、あたりは一つです。
これを2つの箱に入れました。 片方は1枚、片方は2枚入っています。
最初に箱を選択した後、 司会者はその箱にはカードは1枚しか入っていないと教えました。
その後、選択しなおしてもいいと言いました。
さあ、最初の箱のままにした場合の当たる確率はいくつ?
変更した場合の確率は?
0612デフォルトの名無しさん
NGNGって選ぶ人も箱にカードを入れるところを見てりゃわかるじゃん。
「その箱」って、選択された箱、の意味だよね?
それとも「正解のカードが入っている箱」の意味?
箱を選択することで、あたりが決まるの?
箱を選んだあと、カードを選ぶの?
選ぶ人にとって何が明らかで何がわからないことなのか、
文章から読み取れません。プログラミングのための国語と文章表現
スレを立てて、ほかの皆さんに教えを乞うてください。
0613610
NGNGまあ612の意味がわからないという指摘も最もだが、後ろの1行半は見苦しいだけ。
っていうか611が何を言いたいのか漏れもわからん。
0614デフォルトの名無しさん
NGNG特に1/2派の人。
0615デフォルトの名無しさん
NGNG0616デフォルトの名無しさん
NGNG当たりが1/10か1/13なら、各条件20回ずつぐらいでも有意な差が出ると思う。
0617デフォルトの名無しさん
NGNG0618617
NGNG#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define SELECT 3 // 選択肢
#define MAX 10000 // 試行回数
int win; // 選択を変えて当たった回数
void monty(void) {
int i, hit, choice, door, decide;
hit=rand()%SELECT; choice=rand()%SELECT; // 当たりと最初の選択
for (i=0; i<SELECT; i++) {
if((i!=hit) && (i!=choice)) { // 司会者が開けるのは、
door=i; break; // 当たりでも挑戦者の選択でもないドア
}
}
for (i=0; i<SELECT; i++) {
if((i!=choice) && (i!=door)) { // 挑戦者が選択を変えて選べるのは、
decide=i; break; // 最初の選択でも司会者が開けたドアでもないドア
}
}
if(decide==hit) win++;
}
void main(void) {
int i;
win=0; randomize();
for(i=0; i<MAX; i++) monty();
printf("%5d / %5d\n", win, MAX);
getch();
}
0619デフォルトの名無しさん
NGNG0620デフォルトの名無しさん
NGNG0621デフォルトの名無しさん
NGNG(あ)極限が1進数になるので不可能。
(い)ローマ数字なら出来るともいえる。
i + i = ii (1 + 1 = 2)
X + X = XX (10 + 10 = 20)
0622デフォルトの名無しさん
NGNG過去に数学・経済学界で大論争を引き起こした問題だ。
答えは「変えた方が得」なのだが、
その答えに納得がいかなくても恥じることはない。
http://www.google.co.jp/search?hl=ja&inlang=ja&ie=Shift_JIS&q=%83%82%83%93%83e%83B%83z%81%5B%83%8B+%83W%83%8C%83%93%83%7D&btnG=Google+%8C%9F%8D%F5&lr=
だから、そろそろ話題変えんか?
0623デフォルトの名無しさん
NGNGいや、十分恥じるべきだと思うが・・・
中学受験にも出たことのある問題だよ。
0624デフォルトの名無しさん
NGNG1人だけ?
0625デフォルトの名無しさん
NGNGこれで納得いかない1/2派には、どうしようもないので。
司会者は3つのボールと大きさの異なる2つの箱を参加者に見せた。
「この3つのボールのうち、1つは当たり、残り2つは外れです。」
参加者は、その中から1つを選んだ。
司会者は参加者が選んだボールを小さいほうの箱に入れ、
残り2つのボールを大きいほうの箱に入れた。
司会者は参加者に尋ねた「さあ、どっちの箱に当たりが入っていると思う?」
当然、大きい箱のほうが正解する確率は高いだろう?
大きい箱からボールを1つ取り出すなんていう行為は、何にも関係ない。
むしろ、回答者を混乱させる罠。
<<<< 話題を変えるために、ネタ募集中 >>>>
0626デフォルトの名無しさん
NGNG0627デフォルトの名無しさん
NGNGモナーはAのドアを選び、ギコはCのドアを選んだ。
ここで、司会者は残ったBのドアを開ける。はずれだ。
『ドアを変えても良いですよ。』
モナーはCのドアに変えれば2/3の確率で賞品獲得、
ギコはAのドアに変えれば2/3の確率で賞品を獲得できる。
これであってるの? >>2/3派の人
0628デフォルトの名無しさん
NGNG残念だけど、交換しても確率は1/2だ。
A) 最初の問題は、必ずハズレを除いた場合にどうなるか
これは 1:1+1 になる
B) 新しい問題は、たまたまハズレの場合にどうなるか
1/3の確率でBには当たりが入っていた。だから、
1:1:1 となる。
蓋をあけた時点でゲームが終る確率が1/3あったという事
0629625
NGNGいいか、もちついてよく聞け。
2人以上参加するのであれば、
1.他人が選択したものが何であるのか解らない
2.司会者は各人別々に選択肢を1つずつ外す
必要がある。
そうでなければ前提条件が変わってしまうので、確率も変わって当然。
0630625
NGNG0631デフォルトの名無しさん
NGNG赤い玉が2つ。白い玉が2つ。黒い玉が1つです。
箱の外から中の玉を見る事はできません。
貴方は箱に開けられている穴から両手を入れ、
左手と右手に玉を1つずつつかんで取り出しました。
左手につかんでいる玉を見てみると赤い玉でした。
その時に、右手も赤い玉をつかんでいる可能性はどのくらい有るでしょうか?
0632デフォルトの名無しさん
NGNG0633デフォルトの名無しさん
NGNGこれ以上この手の問題やりたいなら
「論理思考力トレーニング法:気がつかなかった数字の罠」
マリリン.サヴァント著、東方雅美訳訳、中央経済社
を読め。
モンティホールジレンマをはじめにコラムに出したマリリン嬢の書いた本で
その問題をはじめ色々な問題がのってる。
0634デフォルトの名無しさん
NGNG0635デフォルトの名無しさん
NGNG気にするな。
0636デフォルトの名無しさん
NGNG0637デフォルトの名無しさん
NGNG>>544 氏もモンテカルロ法で確かめた事があると言うし
>>575-579 >>589 >>618 にはソースコードもある。
コード内で恣意的に確率をコントロールしている部分が
あると主張したいなら、その部分を指摘するべきだし、
そうでないなら次は "なぜこれが正しいのか" を考えるのが建設的。
0638デフォルトの名無しさん
NGNG0639デフォルトの名無しさん
NGNG0640デフォルトの名無しさん
NGNGというか次にageるときは、何か問題書いてくれ!
0641山崎渉
NGNG0642山崎渉
NGNG( ^^ )< ぬるぽ(^^)
0643デフォルトの名無しさん
NGNG問題募集中
0644デフォルトの名無しさん
NGNG直径rの円の円周の長さを2πとする。
また、円の面積を円周によって囲われる内側の領域の大きさとする。
この時、円の面積Sをrとπを用いてあらわしなさい。
(当然のことながら公式そのまま書くだけってのはなしね)
0645デフォルトの名無しさん
NGNG0646デフォルトの名無しさん
NGNG直径rの円の円周の長さを2πとする。
↓
直径rの円の円周の長さを2πrとする。
0648644
NGNG人の名前使わないように・・。
公式の証明というか導出問題のつもり。
積分使えば一発(0からrまでのxでの円周長の定積分∫2πx=πr^2)なのかな。
できれば小学生か中学生レベルの回答を見てみたい。
0649デフォルトの名無しさん
NGNG644と名乗ったのはこのスレでは>>647が初めてだと思うが。ログ読んでいないがな。
0650デフォルトの名無しさん
NGNG3角形の面積は 底辺*高さ/2
円を3角形でN分割すると
一つの3角形の底辺はおよそ 2πr/N 高さは r 面積=πr^2/N
N個分の面積は πr^2
0651デフォルトの名無しさん
NGNG0652デフォルトの名無しさん
NGNGdS = 2πrdr
0-rで積分して
s = πr~2
0653デフォルトの名無しさん
NGNG>>644 のカキコと共に暗黙に 644 の一時コテハンが定義される。
このコテハンのスコープは当該スレのみとする。
0654:
NGNG☆^〜^★ 50音順で探せて楽して得する
http://sagatoku.fc2web.com/
あなたの探し物きっとみつかるよ☆^〜^★
0655デフォルトの名無しさん
NGNGボーズアインシュタインの法則を
示せ。(東大82)
(答え)
アインシュタインにボーズという接頭語が付くことによって
それによるアインシュタインのカツラである可能性を示唆している。
逆にアインシュタインという接尾語が付くことにより
それに伴うボーズのアインシュタイン性も問われてくる問題。
落ち着けば解ける本問は合否を分けるポイントといっても
いいだろう。
解き方だがまずボーズについて解き、リサイクリックな3変数関数g(x)
して仮定し、かつ真性包茎条件と、童貞条件より
e- >= 2/3*(yzu+アイーン)+シュタイナー;
と同値変形できる。
だがこれでは実測の値と大きく異なってしまうので
アインシュタインが修正を加え、不確定要素としてSを右辺に加えた。
e- >= 2/3*(yzu+アイーン)+シュタイナー+S;
これがボーズアインシュタインの法則である。
物理学的にはただしいのだが、この式を工学的に実用に耐えうるものに
するには微分係数をkと置きそれ導く。
g(x)+Sのグラフを書くと右図のようになり(ry)
見事にアインシュタインの髪の形になって、カツラをここに見出せた。
g'(x)のグラフの場合も同様にボーズのアインシュタイン性を示すものとなる。
0656デフォルトの名無しさん
NGNG0657デフォルトの名無しさん
NGNG0658デフォルトの名無しさん
NGNG偶数だと ボーズアインシュタイン統計に従う。
この場合、同じものを置換すると対称になる。
奇数だと、置換操作で反対称になる。
同じものを置換して反対称になるという事は、
もし、2つが同じ状態にあると置換すると反対称になる事になり、矛盾する。
だから、この場合、同じ状態になれない。
ボーズアインシュタイン統計は全てが同じ状態を取る事が出来る。
0659デフォルトの名無しさん
NGNG0660デフォルトの名無しさん
NGNGじゃ、解説
0661デフォルトの名無しさん
NGNGそうだね
この場合、究めて高い確率で司会者の方にあるのだから。
その圧縮された解を選択するほうが得ですな。
0662デフォルトの名無しさん
NGNG偶数次以外の係数がゼロなら、偶関数と呼ばれてるよね
たとえば cos は 遇関数
で、f(x)が偶関数だと、f(x)=f(-x) 奇関数だとf(x)=-f(-x) ね
二つに別けられるかどうかの単純な性質が、凝縮するかどうかにまで影響するって面白いよねって話でしょ
0663デフォルトの名無しさん
NGNG具体的にどのへんなんですか?
0664デフォルトの名無しさん
NGNGプログラミングを何の為にするかの問題で、
例えば、GUIを使ったCAD とか ゲームを作りたいならベクトルとか行列は必要だしね
でも、プログラミング全般の為に必要な数学は無いと言ってもいい。
ただし、概念に名前を付ける事、そして帰納的な思考は共通するものがあるよね。
0665デフォルトの名無しさん
NGNG0666デフォルトの名無しさん
NGNG逐次計算に変換するなら、
例えば123なら
1、先頭の 1 を代入
2、次に2を見て 前の1を10倍して 2を足す 結果12
3、次に3を見て 前の12を10倍して 3を足す。 結果123です
0667デフォルトの名無しさん
NGNG10進数 32ビット実数型
75 → 00009642
100 → 0000C842
例でいうと↑になるらしいんです
どうやれば32ビット実数型になるのか知りたいんです
0668デフォルトの名無しさん
NGNGそれは10進数->実数変換じゃなくて 整数->実数変換が知りたいという事?
10進数->実数変換は、四則演算が定義済(作成済)なら四則演算から>>666のように作成すればいい
0669デフォルトの名無しさん
NGNG例えば
ttp://www.ne.jp/asahi/license/ikawa17/info_fe/p_lesson/f_syou.html
で、具体的には
1、整数値のMSBを符号ビットに
2、整数値の絶対値を
3、2^23 より大なら右シフト 小なら左シフトを繰返して 2^23 に収める
4、シフト回数から指数部を
0670デフォルトの名無しさん
NGNGすみません 整数->実数変換 の方です
両方の内部表現を知らないといけないんですか
かなり難しそうですね ちょっと勉強してきます
簡単に変換してくれるツールみたいな物でもあればいいですが
その辺はスレ違いっぽいのでそろそろ消えます
答えて頂いてありがとうございました
0671デフォルトの名無しさん
NGNG0672デフォルトの名無しさん
NGNGボーズ・アインシュタイン統計
ボーズ粒子の従う統計。
ボーズ粒子は粒子の交換に対し波動関数が不変な粒子である。
粒子が同じ状態にいくつも存在する事ができ、
その事を考慮した統計になっている。
波動関数の符号が変わる粒子をフェルミ粒子と呼び、
この場合は同じ状態には1個までしか粒子が入れない。
これを考慮した統計をフェルミ・ディラック統計と呼ぶ。
これらは粒子数を多くしていくと
古典的なマクスウェル・ボルツマン統計に近似的に等しくなる。
しかし、「ボーズ・アインシュタインの法則」なんて言い方
今まで聞いた事無いんだが、東大、大丈夫か?
0673デフォルトの名無しさん
NGNG小学生には難しい・・
0674デフォルトの名無しさん
NGNG0675デフォルトの名無しさん
NGNG35だろ。
0676デフォルトの名無しさん
NGNG0677デフォルトの名無しさん
NGNG毛生えてますよ
0678デフォルトの名無しさん
NGNG> これらは粒子数を多くしていくと
> 古典的なマクスウェル・ボルツマン統計に近似的に等しくなる。
「温度が高くなると」かも。
0679デフォルトの名無しさん
NGNGいいなぁ。俺、中学に上がってからだよ。
0680デフォルトの名無しさん
NGNGごめん。
0681デフォルトの名無しさん
NGNGピタゴラス数 a^2=b^2+c^2 を満たす 整数 a,b,c が共通の約数を1以外持たない時 a,b,cのいずれかは素数である。 これは真か?
どうも、a=a1*a2 b=b1*b2 c=1c*c2 となる場合もありそうな気がするのだが
0682bloom
NGNG0683デフォルトの名無しさん
NGNG65 16 63
この場合どれも素数でないけど共通の約数はないよね?
間違ってるかも。
0684デフォルトの名無しさん
NGNG65=5*13
16=2^8
63=3^2*7
ですね。 という事で、
http://pc2.2ch.net/test/read.cgi/tech/1051528386/686 さん
素数かどうかの判定では見逃す可能性が出て来ます。
共通の約数があるかどうかユークリッドの互助法で求めるしかないでしょう。
0685デフォルトの名無しさん
NGNGその解決方法を探しています。
スレ立てるまでもない質問スレで級数展開を教えていただきましたが
その他の方法はありませんでしょうか?級数展開はわかんないんです。
0686デフォルトの名無しさん
NGNGa =1-a;
a =1-a;
とこの計算を2度やってみましょう。
数学的には元に戻る筈ですが、aが小さい程誤差が大きくなります。
浮動小数点数は c*2^d という方式で表現します。c,dのビット幅は固定です。
その為、1-a の段階で aの下位ビット情報が捨てられてしまう事になります。
ただし 1-a という計算結果ちゃんと 実数部の精度があります。
級数展開は 質問スレで書いたとおり
x/2 + x^2/8 + x^3/16+5*x^4/128+.. です。 x^4 が無視出来る程度に小さい時に 3次までの結果を使うといいでしょう.
0687デフォルトの名無しさん
NGNGy=1-√(1-x) として (1-y)^2-(1-x)=0 と変形、ニュートン法で解くのが速そうです
0688デフォルトの名無しさん
NGNG一部私の理解力の限界を超えましたが
取り敢えず3次の級数展開をやってみます。
ちなみにsqrt(1-x)=x/2 + x^2/8 + x^3/16+5*x^4/128+..
なのでしょうか?
どこを級数に展開するのかも・・・
0689デフォルトの名無しさん
NGNG0690デフォルトの名無しさん
NGNGいまは
N, N^2, N^3 と累乗していって、割ったときに0 になるまで増やしていって、
例えば、 25 を 3 真数でやるなら、
25 = 2 * 3^2 + 7
7 = 2 * 3^1 + 1
1 = 1 * 3^0
という感じでループを使っているのですが、もっと効果的な方法があるのではないかと思いまして。
0691デフォルトの名無しさん
NGNG次数が落ちるたびに符号変わるから
3項目プラスと違います?
0692デフォルトの名無しさん
NGNG準備
z=(1-y)^2-(1-x)=y^2-2*y+x これをyで微分
z'=2(y-1)
手順
1、y =1-sqrt(1-x)でyの初期値を求める
2、y =y-(y^2-2*y+x)/(2y-2) を2〜3度繰返す
>>691 sqrt(1+x) ならその通りですが、1-sqrt(1-x) なので全項が+です
0693デフォルトの名無しさん
NGNG普通はシフト演算とビットを見る事で行います。
msbを見るなら 16ビットなら $8000 と and して 左シフトしてゆきます
lsbを見るなら 1とand して右シフトしてゆきます
0694685
NGNG取り敢えず級数で教えていただいたものを
用いたら正しいものができました。ありがとうございます。
ニュートン法の方も試してみます。
なんか感動しました。
ありがとうございました。
0695685
NGNGだめだ・・・
0696デフォルトの名無しさん
NGNGごめんなさい、N進法を聞いてるんでしたね。
除算命令があるCPUなら 除算命令は割算結果と剰余が同時に出るので
25を変換する場合 3で割っては剰余を求めていけばOKです
25 = 8*3+1
8 = 2*3+2
2 = 0*3+2
という事で3進法 221 が求まります。
0697デフォルトの名無しさん
NGNG16bitの場合、上位H と 下位L に別けると H*256+Lとなります。
それぞれ 8ビット分のテーブルを用意しておきます。
3進法だと11桁分必要です。
11桁分のバッファを用意しておいて、3進加算をするわけです。
下位桁から3^5+3^2+3+1 から計算してもいいのですが
0698デフォルトの名無しさん
NGNGでは
ttp://www2s.biglobe.ne.jp/~hatena/products.html#6
からめも電卓を落として下さい。
x=1E-10
y =1-sqr(1-x)
y*y-2*y+x
y =y-(y*y-2*y+x)/(2*y-2)
y*y-2*y+x
の5行を1行づつコピペしては改行して下さい
1回目のy*y-2*y+x では誤差が大きいことが判りますが、2回目でゼロになってるでしょ?
ニュートン法は一般的には1回実行すると精度が倍になる手法です。
0699692
NGNGy*y-2*y+xが誤差を表しているんですね
ということは、cでは、何らかの命令文を
使用して、その誤差が一定値いかに収まるように
その計算を繰り返す方法をとればよいと?
取り敢えずやってきます。
do whileでいけるのかな・・・
c超初心者なんでがんばります
0700デフォルトの名無しさん
NGNGループしなくても
y =1-sqr(1-x) は十分良い近似値なんで
double の精度範囲なら
y =y-(y*y-2*y+x)/(2*y-2)
を無条件で2回実行すれば十分です。
0701699
NGNGメモ電卓で計算すると確かに2回で十分ですね。
一応プログラムとして提出しなければならないので
形にしておきました。
誤差のy*y-2*y+xが-方向から0に近づくことを
忘れていて誤差範囲の指定をプラスにしてしまった
ため途中死にそうになりましたが、
なんとか、なりました。
ありがとうございました。m(_ _)m
0702デフォルトの名無しさん
NGNGもっと一般的には n 進数加算を作っておき
2倍しながら2進数変換と同じように変換してゆきます
つまり n 進数で 1 2 4 8 16 32 64 256 516・・・を作って はデータのLSBを見ては加算しデータを右シフトするわけです
0703山崎渉
NGNGピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
0704デフォルトの名無しさん
NGNG0705デフォルトの名無しさん
NGNG0706デフォルトの名無しさん
NGNG0707デフォルトの名無しさん
NGNG0708デフォルトの名無しさん
NGNGインドの算数の教科書を読みなさい。
0709デフォルトの名無しさん
NGNGまず、次の数列を空で言えるまで練習しる。
2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536
ひとつずつ指を折りながら、4番目が16、8番目が256、12番目が4096、
16番目が65536だ。
0710デフォルトの名無しさん
NGNG「それなにやってるの?」と言われてからあまり人前でやらないように
してる。
0711デフォルトの名無しさん
NGNGダンプリストを毎日眺める。
ファイルフォーマットの解析をしたりすると覚えられるかも。
0712デフォルトの名無しさん
NGNG0713デフォルトの名無しさん
NGNG0714山崎 渉
NGNG__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
0715デフォルトの名無しさん
NGNGPerlでCGI組むだけのおしごとしてるんですが、
知っておくと便利な数学知識ってありますか?
つーても数学得意なのに文系の大学言ってたので、
高校数学まではばっちし、大学の数学はわからん。
(雑誌「大学への数学」の元、学コンマンですた・・・
つーても、しらんか)
0716デフォルトの名無しさん
NGNGない、CSSでも覚えとけ。
0718デフォルトの名無しさん
NGNGブール代数ぐらいは知っといた方がいいような…
0719デフォルトの名無しさん
NGNGまぁ、当たり前だな。結局、そう言う言語非依存のところが武器になってくるわけで。
でも、わざわざ勉強するほどのことかとも思う。特に1ビットな演算なら。
0720デフォルトの名無しさん
NGNGで、そういう基礎がすこんと抜け落ちてる椰子多くね?
日本語もそうなんだが。
0721デフォルトの名無しさん
NGNG三角関数以来数学を投げ出した(赤点回避以上の勉学をしてない)俺が
プログラマとして大成するのは無理というものだろう。
709のような小技というか小手先の鍛錬は文系向きだと思った。
0722デフォルトの名無しさん
NGNG0723デフォルトの名無しさん
NGNG0724山崎 渉
NGNG0725デフォルトの名無しさん
NGNG1024 2048 4096 8192 16384 32768 65536
0726デフォルトの名無しさん
NGNGスペルあってる?
0727デフォルトの名無しさん
NGNG0728山崎 渉
NGNG│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0729デフォルトの名無しさん
NGNG0730デフォルトの名無しさん
NGNGある点をクリックされました。
その点がある四点で囲まれた図形の範囲内に
あるかどうかを求めなさい。
ある点とある四点はすべて違う位置にあるものとします。
0731デフォルトの名無しさん
NGNGその手の問題って。
0732デフォルトの名無しさん
NGNGまず二次元なのか三次元なのかはっきりさせろ。
(クリックとか言ってるから、二次元だろうと思うけど...。)
0733デフォルトの名無しさん
NGNG内積を求める
0734デフォルトの名無しさん
NGNG0735デフォルトの名無しさん
NGNG4点をA, B, C, D として、クリックされた点をPとする。
P が ベクトルAB,ベクトルBC,ベクトルCD,ベクトルDAのすべてに対して同じ側にあればよい。
PがベクトルABに対してどちら側にあるかは
ベクトル AP を p, ベクトル AB を q として
p.x * q.y - p.y * q.x が 正か負かで判断できる。
四角形 ABCDが凸多角形でない場合は、二つの三角形に分割して、
どちらかの三角形に含まれるという条件で判定する。
0736デフォルトの名無しさん
NGNG709の数列は言えるけど、それだと2進と10進の変換だよね?
2進と16進の脳内変換方法も教えて
0737デフォルトの名無しさん
NGNG三角形の頂点3つと、中の点1つを考えて見ましょう。この4点が囲む
図形は一意に定義できません。凸でない図形3つがありえる。
さらには、外側の三角形も対象に含む場合もあるでしょう。
「4点が張る凸包内に」と問題を与えれば適当だったことでしょう。
>>735
正負で判断できるのは、ABCDが(辺が互いに交わらない)多角形の
頂点順に整列している場合のみで、4点に辺をつけたとき鼓の形に
なる場合うまくいきません。よって、一般の場合を考えて奇偶(パリティ)
を使ってください。
0739デフォルトの名無しさん
NGNGとつほう/おうほうでいいのかな?
0740デフォルトの名無しさん
NGNG0741デフォルトの名無しさん
NGNG質問! パリティをどんなふうに使ったら解決しますか?
0742デフォルトの名無しさん
NGNG>>730 >>737-738
4点を、適当な解釈によって、それらを包含する凸閉包に拡張する考えもあるようです。
そのものずばりは見つからなかったけど、手順(生成物)が同じページを発見
http://www.biwako.ne.jp/~hidekazu/advanced/spmech.htm
0743デフォルトの名無しさん
NGNG4ケタずつに区切ったら後はパターン認識だろ。2進→10進よりかずっと楽。
0744デフォルトの名無しさん
NGNG733ではないが
4点をA, B, C, D として、クリックされた点をPとして、
A, B, C, D がPの周りを時計回り、または反時計回りの順番に並んでいる場合は
APB, BPC, CPD, DPA のなす角の合計が2πまたは-2πになることで
判断できることが言いたかったんでないの
この場合だと、凹でもOK
0745730
NGNG数学苦手なので、これで実装したとだけ書いておきます。
http://www.geocities.co.jp/SiliconValley-Bay/4543/Rubic/SelectFace/SelectFace-1.html
0746デフォルトの名無しさん
NGNG0747デフォルトの名無しさん
NGNG0748デフォルトの名無しさん
NGNGdouble dx2 = p2.x - p0.x;
double dy1 = p1.y - p0.y;
double dy2 = p2.y - p0.y;
double a = atan2(dx1 * dy2 - dx2 * dy1, dx1 * dx2 + dy1 * dy2);
0749デフォルトの名無しさん
NGNG>>748
ちょうさん助かりました。
精進します。
0750デフォルトの名無しさん
NGNG// 回転する角度(radian)
// M_PI == 3.1415...
double s = 90*M_PI/180;
// 回転させる点
double x = 1;
double y = 0;
// 支点
double fx = 0;
double fy = 0;
// 支点からの距離 x-fx y-fy
double xx = ((x-fx)*cos(s)-(y-fy)*sin(s))+fx;
double yy = ((x-fx)*sin(s)+(y-fy)*cos(s))+fy;
結果
xx6.1230317691118863e-017
yy1.0000000000000000
yyはOKなんですがxxがふっとぶのはなぜなんでしょう。。。
0751デフォルトの名無しさん
NGNG0752デフォルトの名無しさん
NGNG0を90度回転しても0なんじゃ(+_+
高校の教科書開いてきます
0753デフォルトの名無しさん
NGNG0754デフォルトの名無しさん
NGNGちょっと複雑な式見るたびに丸1日考え込むのには飽きた。基礎から叩き直す。
0755デフォルトの名無しさん
NGNG昔、2chの数値計算かどっかのスレで見た記憶があるんだが忘れてしまった。。。
0756デフォルトの名無しさん
NGNG0757デフォルトの名無しさん
NGNGあ、すまん。重要なこと書き忘れた。
「空間内で」です(汗
0758デフォルトの名無しさん
NGNG0759デフォルトの名無しさん
NGNG自明な一つは想像付くけど、自明でない奴もあったりしない?
0760755
NGNG極座標のthetaとphiに一様乱数を振ると北極と南極に偏るっス。
>>759
uniqueとかどうかとかの議論は良いので、
とりあえずその自明な1つを教えてplease
0761755
NGNGすまん。読み間違えた。
解法がuniqueかどうかってレスしてるのかと思った。
ある球面に一様に分布する乱数点の生成がやりたいんです。
これでuniqueですよな?
0762デフォルトの名無しさん
NGNG一様乱数なのに、どうして極に隔たるのですか?
0763デフォルトの名無しさん
NGNG0764デフォルトの名無しさん
NGNGそうじゃなくて2度直行する方向い回転させてはダメ?
0765デフォルトの名無しさん
NGNG極に分布が偏ると思う。
クォータニオン使えば回転軸に縛られないから
できるかも・・・
0766デフォルトの名無しさん
NGNG0767755
NGNGおっしゃるように緯度経度でやってました。
2度直行する方向に回転させるつーのは、具体的には何やるんですか?
>>765
できるかもっていうか初めて聞いた言葉なんですが。。。
0768デフォルトの名無しさん
NGNG手元に本がない
0769デフォルトの名無しさん
NGNG0770デフォルトの名無しさん
NGNGそれだと、球「面」じゃなくて、球体の中になるぞ
0772デフォルトの名無しさん
NGNGクォータニオン(四元数)っていうのは簡単に言っちゃうと、
一般の複素数を拡張したような概念で、a+bi+cj+dk(a,b,c,dは実数、i,j,kは虚数)
っていうふうに記述されたりする。
これを使うと3次元でのあらゆる回転を4つだけの値で表現できる・・・
っとまぁ、詳しいことは興味があれば自分でしらべてもらって、
で難しい話抜きにしてクォータニオン使った場合の、
一様分布な球面座標値の計算手順は次のようなかんじです
(実際に確認してないのであまり自身ないです)
1.4つの値、a,b,c,dを乱数により生成
2.a,b,c,d各値の2乗の和が1になるように、それぞれの値を正規化する。
3.次の式より、x,y,zの値を求める
x = 1 - 2 * (b * b + c * c)
y = 2 * (a * b + c * d)
z = 2 * (a * c - b * d)
これで求めた(x,y,z)が半径1の球体上の
球面に位置する任意の座標値となるはず。
でも、こんな小難しいことしなくても
766の方法でシンプルにいけるかもしれませんね。
0773770
NGNG> それで、球体内の点を球面上に移せば一見良さそうですが、
> やはり捨てる分の点の偏りが出る気がします。
あ、そうか、それでうまく行くかも知れない。
球体内に均等分布するから、各点の座標を、中心からの距離で割ってやれば、
偏りはない。
(乱数そのもの質が悪くて、3次均等分布しないなら別だけど、まさかそんな
粗悪品をライブラリに入れているやつはおるまい)
0774755
NGNG実装してみましたが、偏ってました。
でも、面白そうなので勉強してみます。
>>773
球面内は確かに一様ですが、球外の捨てる分の点の分布は
球面に対して一様ではないと思うのでまずい気がします。
>>766
の方法は具体的にどうやるんでしょうか?
0775772
NGNGすいません、補足です。
2.の手順で正規化された値を求めるとき、
とりうる範囲が-1.0〜+1.0なので
乱数だすとき、負の値も考慮する必要があります。
偏ってしまったのは正の値のみの乱数で計算してしまった
ためかと思われます。
0776デフォルトの名無しさん
NGNG> 球外の捨てる分の点の分布は
> 球面に対して一様ではないと思うのでまずい気がします。
捨ててしまったものについては、考えなくていいと思う。
と、いうより、一様分布に悪影響を与えるものを捨てているのだ。と、
解釈したほうがいいんじゃない?
つまり、
「x,y,z が -1から1の範囲だというだけだと、立方体の中で
均等分布するから、これを中心からの距離で割って球面上に
移しても、球面上に均等分布はしない。立方体の頂点付近の
密度が高くなる)。
だから、球の外にある点は捨てる。」
と、いうこと。
0777デフォルトの名無しさん
NGNG0778デフォルトの名無しさん
NGNG1. φを[0, 2π)の一様乱数で作る。
2. tを[-1, 1)の一様乱数で作る。
3. θ=arccos(t)
4. x=sin(θ)cos(φ)
5. y=sin(θ)sin(φ)
6. z=cos(θ)
7. パンにはやっぱりネオソフト
8. (゚д゚)ウマー?
0779デフォルトの名無しさん
NGNG極地方を引き伸ばせばいいのだとは思ったけど、そっか、arccos なのか・・・
0780デフォルトの名無しさん
NGNGz=cos(θ)=cos(arccos(t))=t だから、これは高さ(z)に関して
点の密度を一様にしようという戦略といえるよね。
でも、赤道付近で1周まわした幅1センチの帯と、
極付近の幅1センチの帯では、赤道付近の方が
面積大きいじゃん。だから778だと、球の面積あたりの
点の密度は違ってしまう気がするけど。
0781755
NGNG確かに、0~1.0にしてました。
-1.0~1.0にすると、確かにそれらしいものができました。不思議だ。
>>776
勘違いしてました。確かに、これでできますね。
>>778
これも実装してみるとうまくいっているみたいですが、、、
この式はどうやって出てきたんだろう?
こうやって振り返って見ると結構解法あったんですねぇ。
直観的には776が一番分かりやすいかな。
みなさんどうもありがとうっス。
0782デフォルトの名無しさん
NGNG> この式はどうやって出てきたんだろう?
2次元の単位球面だよ。
0783780
NGNGプ>疑った俺
もっと勉強するか。
0784776
NGNG計算量という点でも、三角関数を使わないので776に書いたやり方が
お勧めではないかと。
ところで、Knuth の本を押入れから探し出して読んでみたら、おそるべき
回答が載っていた。
『平均ゼロ分散1の正規分布乱数』をN個用意して、
(x1,x2, ... XN) を作り、これを中心からの距離 sqrt(x1*x1 + x2*x2 + ... xN*xN)
で割ると、N次元空間の球面に一様分布する。
と、いうことなんだそうな。
776と似ているけど、一様分布の乱数ではなく正規分布の乱数を使うと、
*何も捨てていない* のに、球対称に分布するというのがポイント。
本には詳しい説明はなかったけど、考えてみると確かにそうだ。
単純に考えると、一様分布の時と同じで、立方体の頂点に近い場所の密度が
高くなりそうだけど、x,y,z はそれぞれ正規分布しているので、x,y,zの3成分が
同時に大きくなる確率は低いということで、うまく辻褄があう。
正規分布乱数同士の和は正規分布するので、座標軸を回転させても、
新しい座標軸で見た各成分は、やっぱり平均ゼロ分散1の正規分布乱数になる。
結局、この球状に広がる点々たちは中心からの距離にのみ依存する密度関数を
持つから、各点の座標値を中心からの距離で割ってやれば球面上に均等分布すると。
3次元だったら、776のほうが単純でいいと思うけど、高次元の空間については、
捨てる場合が増えてくるから、こちらのほうがいいかも。
0785755
NGNG極座標なのは分かるんですが、arccos使ってるあたりが謎なんです。
>>785
うーん、xyzの独立した正規分布合わせると
軸の方向によらずに一定の正規分布になるってことですかね?
本当なんですかね、、、Knuth疑うわけじゃないんだけど。
なんか考えると熱出そう。。。
ところで、正規分布の乱数はボックスミュラー法とやらで作るのかな?
(さっきググった)
0786デフォルトの名無しさん
NGNG「高さに対する密度」であることに注目だね。
赤道付近で1周回した高さ1センチの帯と、
極付近の高さ1センチの帯は
極付近だと半径が短い分、幅が広くなっているので、
面積は実は等しくなるってことで。
>>785
z=cosθな部分の円周の長さは2πsinθになるから、
θの確率密度が sinθ/2 になるようにすれば、球面上での分布が一様になる。
-1〜1の一様乱数(確率密度=1/2)である t との変換を考えると、
∫(-1〜t) (1/2) dx = ∫(0〜θ) (sin(x)/2)dx
になればいい(確率密度を積分したもの = 確率 が等しくなるようにする)。
これを解くと t = -cosθになる。
てなわけで、θ=arccos(t)
0787デフォルトの名無しさん
NGNGHamiltonの四元数(しげんすう)って和名がちゃんとあるんだ。まあ別にいいけどさ。
# octonion (ケイリーの八元数)もあるぞ
んで、やっぱKnuthのTAoCPって持っているべき?
上で驚異的な解法がもたらされたりしているようだが。
0788デフォルトの名無しさん
NGNGハミルトンの四元数は四元数の一部だぞ?
わかってるか?
0789デフォルトの名無しさん
NGNG3D関連で利用されてるんだね。
0790デフォルトの名無しさん
NGNG射影空間の方が良く使うがな。
0791デフォルトの名無しさん
NGNGクォータニオンによる回転表現はジンバルロックが起きないのが便利です。
アフィン変換と違って、クォータニオンでは移動や拡大縮小が表現できないので、
アフィン変換行列を作る下請けに使うことが多いけど。
0792デフォルトの名無しさん
NGNG0793デフォルトの名無しさん
NGNG16bit マシンでaに 0〜0xffff の値を設定し、実際に使う時bはスムーズに変更させたいとします。
そこで、毎サイクル b := b+(a-b)/256 のような計算をさせる事にしました。
が、これを整数演算ですると不感帯が出来てしまいます。
32bit中間レジスタ w(wh+wl) を用意して
w := a*256L+ b*256L
if w>0 then wh:=wh+1
else if w<0 then wh:=wh-1
b := b+wh
とすればいけるのですが、分岐を使わず、上手い計算手法はないでしょうか?
0794793
NGNG毎サイクル±1ならCFを使って上手く書けるのですが、それでは今度は時間がかかりすぎる為
b=b+(a-b)/256付近の変化量にしたいのです。
0795793
NGNG今考えているのは 16bitレジスタ w
w := (a - b) して
if ボロー then begin //負数
w-> キャリーを含めた右シフトx1
w-> 算術右シフトx7
b:=b+w;
end else begin
( w+$FFFF) して CFを残す
w-> 算術右シフトx8
b:=b+w+CF
end;
これでもまだ分岐が一つ入るので、なんとかこの分岐を減らせないかなと
使うCPUの特性は バレルシフト可能・ 分岐は4サイクルと重いのです
0796デフォルトの名無しさん
NGNGlong w =(long) ((unsigned long)a - (unsigned long)b);
int pls=-((-w)>>16L); //1以上ならなら 1
b = b+(w >> 8L);
b = b+pls; //算術右シフトで失った 0〜255 をカバーする
これでいいんじゃないの?
079827才♀
NGNG論理回路の問題で
「全加算回路の真理値表から直接論理式を構成してみなさい」
っていう問題でつまづいています。
真理値表
a b c | s c'
-------------
0 0 0 | 0 0
0 0 1 | 1 0
0 1 0 | 1 0
0 1 1 | 0 1
1 0 0 | 1 0
1 0 1 | 0 1
1 1 0 | 0 1
1 1 1 | 1 1
うまく表になったかな?
入力a,bと下からの桁上げcが与えられて、
その和sと上への桁上げc’を出力する回路です。
ブール代数の流れから来てる問題なんですけど、
ググっても理解できなかったのです(-_-;)
数才のない女に知恵を貸してください(m__m)
0799デフォルトの名無しさん
NGNG結婚してくれ
0800デフォルトの名無しさん
NGNGまず結果が1になるもの全てについて成り立つ式を考える
それから簡略できるところを簡略するって感じで行くのが良いかと。
bool s,a,b,c,c_dash;
s = ( !a && !b && c ) || (!a && b && c) || etc.....
c_dash = ( !a && b && c ) || (a && !b &&c ) || etc....
ってな感じで
0801デフォルトの名無しさん
NGNG27にもなって
なんでそんなことやってんの?
080227才♀
NGNGレスありがとうございます!
記号の意味(&&とか!)を他の教科書を参考にして解読してみます!
>>799
できればしたいです。
>>801
このまま行くとケコーンできないかもしれないという焦りから、
高校の教員免許を取る為に通信制の大学に入学したのです。
必修科目のレポートの為なのです(汗
0803デフォルトの名無しさん
NGNG&&はAND、||はOR、!はNOT相当。
×:s = ( !a && !b && c ) || (!a && b && c) || etc.....
○:s = ( !a && !b && c ) || (!a && b && !c) || etc.....
だった。スマソ
0804デフォルトの名無しさん
NGNG>>800のより簡単にはならないみたいだな。
c' の方は、少しは簡略化できる。
0805デフォルトの名無しさん
NGNGxorが使えるなら、
s = a^b^c なんだが。。
あとは、
c_dash = (!a && b && c) || (a && (b || c))
ってのどう? お前ら確かめて下さい。
0806805
NGNGあと、s/800/798/g スマソ..
0807805
NGNGになった。
080827才♀
NGNGc_dashの簡略化がわかるまで時間がかかりましたが、
なんとかできました。
おかげさまで、違う問題まで解けました。
プログラミングは必修なので、逃れられないけど、
この板を参考にがんばります!
0809デフォルトの名無しさん
NGNG0810デフォルトの名無しさん
NGNGgoogleで検索したら
誤差関数 erf(X) は、ガウス分布関数を 0 から x まで積分したもの
とか出てくるよ。
0811デフォルトの名無しさん
NGNGhttp://www2.odn.ne.jp/yuseisha/daiki/comp.htm
これに近いようなことをもう少し高度な話題まで書いてある本はありますか?
0812デフォルトの名無しさん
NGNGとりあえず判らないけど あげよう
0813デフォルトの名無しさん
NGNGhttp://www.mersenne.org/
って知ってるよね。
暗号理論に関する本ならいくつか知ってるけど、
なんのために素因数分解するの?
0814デフォルトの名無しさん
NGNGhttp://www.mersenne.org/
って知ってるよね。
暗号理論に関する本ならいくつか知ってるけど、
なんのために素因数分解するの?
0815デフォルトの名無しさん
NGNGそこに合成数があるから
0816デフォルトの名無しさん
NGNGfftsample/2のfftを二回再帰で呼び出していって、fftsampleが2に
なったら2sampleのdftを計算してretしたcodeをかいたんですがなんか
間違ってますでしょうか??
諸先輩方の御意見賜りたく候。
みたいな。。。
http://ea.uuhp.com/~rifkw/fftk.c
なんかうまくいかないんです。。
0817素人
NGNG0818デフォルトの名無しさん
NGNG入力1 入力2 出力
偽 偽 偽
偽 真 真
真 偽 真
真 真 偽
排他的論理和についてこれ以上何が知りたいというのだ…
0819デフォルトの名無しさん
NGNG偽 偽 偽
真 真 偽
この二つは理解しがたい。
偽を1、真を-1とすれば理解できるけど。ってそりゃ積か。
0820デフォルトの名無しさん
NGNG一人しか通れない穴みたいなものを想像して理解しよう。
0821デフォルトの名無しさん
NGNG主に特定のビットを反転する時に使う。
>>818 を見れば分かるが、
入力2が真の時には入力1が逆の結果になり、
偽の時には入力1がそのまま返される。
つまり、反転したいビットのみ1にしたものを入力2にしてやれば
入力1の特定のビットだけを反転する事が出来る。
>>819
ベン図書けばよく分かるぞ。
ttp://www4.ocn.ne.jp/~p-mayuge/kaisetsu/ronrienzan.html
0822デフォルトの名無しさん
NGNG排他的論理和は a != b のときに真になる演算。
和と付くのは、
真…1、偽…0で、
a XOR b = a + b を2で割ったあまり
という風にも考えられるからかな?
0823デフォルトの名無しさん
NGNGだからベン図書けば名前の由来もすぐ分かるんだって。
0824デフォルトの名無しさん
NGNGa^b
↓
(a & !b) | (!a & b)
0825デフォルトの名無しさん
NGNGなんていうか、排他的論理和はそういうものって納得するしかないだろう。
2入力1出力の論理関数は全部で16種類あるが、入力1と入力2について対称なのはそのうち8種類
そのすべてに名前を付けてるだけだな。
入力それぞれのパターンに対する出力を並べてみると、
両方偽 真と偽 両方真 関数名
偽 偽 偽 恒偽
偽 偽 真 論理積(AND)
偽 真 偽 排他的論理和(XOR)
偽 真 真 論理和(OR)
真 偽 偽 否定論理和(NOR)
真 偽 真 排他的論理和の否定(XNOR)
真 真 偽 否定論理積(NAND)
真 真 真 恒真
と、これだけの関数があることになる。
恒真関数や恒偽関数は意味がないし、NAND/NOR/XNOR はそれぞれ AND/OR/XORの否定だから省くと、
論理和(OR, |)/論理積(AND, &)/排他的論理和(XOR, ^) の3種類が残る。
XORをなぜ「排他的論理和」と呼ぶのかは、>>823 の言うとおり。
0826デフォルトの名無しさん
NGNG普通は EQUIV とか EQUIVALENT とかいわねえか?
0827デフォルトの名無しさん
NGNGキーワード意味を理解して使用するなら何でもよろし。
0828デフォルトの名無しさん
NGNG0829デフォルトの名無しさん
NGNGXNOR: exclusive negated OR
より、
NXOR: negated exclusive OR
の方がいいんじゃないか?
0830デフォルトの名無しさん
NGNG= p ≠ q
= (p ∨ q)∧-(p ∧ q)
0831デフォルトの名無しさん
NGNG=( ´V`)∧-( ´∧`)
0832デフォルトの名無しさん
NGNG0833デフォルトの名無しさん
NGNG入力側でNOTしても出力側でNOTしても同じだから意味的にはOK
0834デフォルトの名無しさん
NGNG0835デフォルトの名無しさん
NGNG(゚Д゚ ,,) {age)
(u u_)〜
0836デフォルトの名無しさん
NGNGウソをかくな
>>839
VBにはあるみたい
0839833
NGNGごめんなさい。
0840デフォルトの名無しさん
NGNGド・モルガンの法則だな。
あれ、ド・モアブルってのもあったな
0842デフォルトの名無しさん
NGNGこうか?
・ (!a ^ !b) ==(a ^ b)
・ (!a ^ b) == !(a ^ b) == (a ^ !b)
0843デフォルトの名無しさん
NGNGImpって小悪魔のことだよね。
小悪魔演算子?
0844デフォルトの名無しさん
NGNG定式化をお願いします!
5種類の合金を混合して、40%がスズ、
35%が亜鉛、25%が鉛から出来ている
新しい合金を作る。
|スズ|亜鉛|鉛 |価格
__________________________________
合金1|60|10|30|22
合金2|25|15|60|20
合金3|45|45|10|25
合金4|20|50|30|24
合金5|50|40|10|27
最小の購入費用で目的の合金を
作るために各合金はどれだけ
購入すればよいか、定式化せよ
Min 22*x1 + 20*x2 + 25*x3 + 24*x4 +27*x5
s.t.
という感じでお願いします
0845デフォルトの名無しさん
NGNG10*x1 + 15*x2 + 45*x3 + 50*x4 + 40*x5 ≧ 35
30*x1 + 60*x2 + 10*x3 + 30*x4 + 10*x5 ≧ 25
0846844
NGNGありがとうございます
0847844
NGNG3つの工場でそれぞれ缶詰を製造し、
4つの問屋に販売している。
輸送費を最小にする輸送計画を求める
線形計画問題として定式化せよ。
各工場から問屋への輸送費は次の通り
問屋A |問屋B |問屋C|問屋D|
工場1|464 |513|654|867
工場2|352 |416|690|791
工場3|995 |682|388|685
各工場の生産の上限
工場1|75
工場2|125
工場3|100
各問屋の需要
問屋A|80
問屋B|65
問屋C|70
問屋D|85
Min ???
s.t. ???
お願いします
0848デフォルトの名無しさん
NGNG二匹目の泥鰌は居ない
という事じゃなかろうか(藁
1つで御の字と我慢しつつ自力で頑張ってみろと言うのが正解かと(藁
0849デフォルトの名無しさん
NGNGって言われたら皆さんどんなの使いますか?
0850デフォルトの名無しさん
NGNG*(unsigned long int *)string;
三文字以下だとゴミが入るから注意してくれ。
0851デフォルトの名無しさん
NGNGそれだと三文字以下のを考慮しても 32bit 整数全体を舐めれない。
0x00 が途中に入ってくる数値を表せないし、
0x01-0x1F (\r, \t, \n を除く), 0xFD-0xFF とか
普通入ってこないし。
((unsigned long*)str)[0] + ((unsigned long*)str)[1]
の七文字以下を考慮したものとかどうかな?
0852つーか、ネタにマジレスするなよ。
NGNG> 32bit 整数全体を舐めれない。
そんな要件は書いてないけど ?
> 計算負荷の軽いヤツ
が最優先だろ。
0853849
NGNGすいません.
ハッシングという言葉で32bit全部なめるという意図を含められると思っていました.
できれば32bit全部をなめられるほうが良いです.
>>850,851
すいません.よく分からないのですが,他のメモリ空間の値をハッシュとして使う
という発想だと理解してよいでしょうか?
0854デフォルトの名無しさん
NGNG> ハッシングという言葉で32bit全部なめるという意図を含められると思っていました.
ハッシュにそんな意味はない。
ただ、32bit 全て使うほうが衝突が減るので効率的になるため、通常は 32bit 全て使うようにする場合が多い。
> すいません.よく分からないのですが,他のメモリ空間の値をハッシュとして使う
> という発想だと理解してよいでしょうか?
ぜんぜん間違ってる。つーか、「他のメモリ空間」ってどっから出てきた ?
C 言語を知らないと言うことか ?
だったら使う予定の言語書いてくれ。
0855デフォルトの名無しさん
NGNGhashはhashなわけかも。常に衝突するから意味ないけど最速。
それに比べれば>>850は結構いけると感じた。a-zしか現れないと
大胆に仮定しても、26^4(ほぼ2^19)ものhash key値を取りうるやん。
リアルな英文だったりすると相当偏るかもね。
>>850ほど速度を追求しないなら、32bit単位で全体をxorするのが
普通に考え付く汎用で速いhaskじゃないかな。実際よく見るでしょ。
0856849
NGNGようやく理解しました.Cは知っているつもりだったのですが・・・_| ̄|○
K&Rの角に頭ぶつけて逝ってきます・・・
>>850
これだと4文字以上の同じprefix持っている文字列に
同じhashが割り振られるのが気持ち悪いんですよね.
0857849
NGNGl = strlen(str);
hash = 0;
for(i = 0; i < l / 4; ++i){
hash ^= ((unsigned long int *)str)[i];
}
a = (l / 4) * 4;
for(i = a; i < l; ++i){
hash ^= ((unsigned long int)str[i] << ((i - a) * 8));
}
こういうことですよね?
これは"veryverylong"と"long"に同じhashが割り当てられるのが気持ち悪いんですよね.
そんな細かいこというなら「計算負荷が軽いもの」とか書くな!って言われそうですが・・・
結局,計算負荷とhashの一様性・予測不可能性がtrade offなんで
そこらへんの兼ね合いを皆さんどこで折り合いつけるのかなと思って聞いた次第です.
もちろん,hashの用途にもよるんですが・・・
って,最初からこう書けば良かったんですね.すいません.
0858デフォルトの名無しさん
NGNG> これだと4文字以上の同じprefix持っている文字列に
> 同じhashが割り振られるのが気持ち悪いんですよね.
違う。
気持ち悪いとかの問題じゃなくて、きちんと動作しない。
--- test.c ---
#include <stdio.h>
unsigned long int hash(const char *const key){ return *(unsigned long int *)key; }
char A[] = "AAAA";
char B[] = "BBBB";
int main(){
char *Key = "X";
strcpy(A, Key);
strcpy(B, Key);
printf("hash(\"%s\") -> %lx\n", A, hash(A));
printf("hash(\"%s\") -> %lx\n", B, hash(B));
return 0;
}
$ cc test.c
$ ./a.out
hash("X") -> 41410058
hash("X") -> 42420058
$
同じキーに対して違うハッシュ値が帰ってきたらまずいだろ。
0859デフォルトの名無しさん
NGNGはぁ?4文字要ると>>850に書いてあるだろう?
0860デフォルトの名無しさん
NGNGはぁ ?
俺が、>>850 = >>858 なんだけど。
>>856 が勘違いしてそうだから、>>850 の「三文字以下だとゴミが入るから注意してくれ。」のサンプルを書いただけだ。
もう少し落ち着いて書き込めよ。
0861デフォルトの名無しさん
NGNG>>858で自分が引用した文章を100辺読み直して、
「>>865はなにが気持ち悪いといっているのか?」
「>>858はなにが違うと考えているのか?」
という設問に答えられる程度の日本語力を身に着けてから出直してください。
0862デフォルトの名無しさん
NGNG> 「>>865はなにが気持ち悪いといっているのか?」
さあ ? 俺、予言者じゃねーからなぁ...。(藁
0863デフォルトの名無しさん
NGNGs/>>865/>>856/
0864デフォルトの名無しさん
NGNG0865デフォルトの名無しさん
NGNG0866デフォルトの名無しさん
NGNG自分はPerlかなんかからぶっこぬいて使ってる。
倫理的にはまずいだろうな…叩きレス付きそうな予感
0867デフォルトの名無しさん
NGNGそれなら シフトや掛け算を追加するとかすりゃいいじゃない。
for(i = 0; i < l / 4; ++i){
hash *= 2689 ;
hash ^= ((unsigned long int *)str)[i];
}
>>860 >>857のコードはゴミは入らないと思うが?
ただ、高速にしたいなら、switchで別けて一度にやればいいのにと思うけど、
まあ、そうするとインディアン依存になってしまうしな。
0868849
NGNG850の意図もちゃんと理解したつもりです.
私が856で気持ち悪いといっているのは,850の方法では
たとえば"aaaabcde・・・"と"aaaazyxw・・・"に同じhashが振られるように,
先頭4文字でhashの値が決まるのが
気持ち悪い(用途によってはダメダメなhashになる)ということです.
850のような方法を知らない,あるいは一見してその意味を理解できなかったのは
まだまだ私の修行不足ってことでしょうね.がんばります.
>>867
そうですね.そんな感じに落ち着けるのが無難でしょうね.
最後2行に書いてあることがよく理解できないんですが,
こういう「詰めた実装」をやるための細かい工夫が勉強できるスレってないですかね?
0869デフォルトの名無しさん
NGNGhash ^= ((unsigned long int *)str)[l>>2] & tbl[ l & 3]
みたいに処理すれば速いよ って話だよ。
0870デフォルトの名無しさん
NGNGエクセルのファイルを解説しているホームページとか本とか知らない?
英語のページなら見つけたんだけど、英語苦手で。
スレ違いなら無視してくれ。
0871デフォルトの名無しさん
NGNG誤爆だ。
0872デフォルトの名無しさん
NGNGやり方を教えていただけませんか?
0873デフォルトの名無しさん
NGNG0874デフォルトの名無しさん
NGNG直線は平面座標上では関数 y = ax + b だわな。
交点は2つの一次関数を方程式の形に置き
換えたときの、それぞれの連立方程式の解。
これは直線に限らない話。
0875デフォルトの名無しさん
NGNGx = a+td = A+TD
y = b+te = B+TE
という 状態からどう導けばよいのかわかりません。
0876デフォルトの名無しさん
NGNG平面上を十字に区切ったものが座標で y = ax+b のxは
水平な座標を、yは垂直な座標を指すのが慣例ですし、
その式だと x と y はどっちも同じ軸上の座標値を表してます。
まず a+td = b+te を変形して t = (a-b)/(e-d) です。
もう一度 x = a+td か y = b+te に、さっき出たt軸の値を
代入するともう片方の軸の座標値が帰ってくる、と。
0877デフォルトの名無しさん
NGNG普通の解釈では、tによる媒介変数表現で、交点も何も、1本の線しか描けない。
tが横軸、x,yが縦軸あるいは直線の式を表しているとするなら、
>>876 のように解けばよい。
もう一度、問題を見直すことをおすすめする。
0878デフォルトの名無しさん
NGNGここ馬鹿ばっかりだな :-)
その方程式を解けばいい。
t d - T D = A - a
t e - T E = B - b
だから行列、
d (-D)
e (-E)
の逆行列
(1/(- Ed + De)) {{-E, D},{-e, d}}
を
A - a
B - b
に掛けると(t, T)がわかるので代入。
0879デフォルトの名無しさん
NGNGすみません、厨なのでまだ行列は習ってないとおもいます。
>>877
現在やりたいことは
A:321.801, 238.908
B:421.388, 229.832
C:266.647, 308.221
D:327.560, 228.913
点A,Bを通過する直線1と
点C,Dを通過する直線2が交差する座標を知りたいのです。
0880デフォルトの名無しさん
NGNGとてもレベルが低そうなので説明するのがだるい。
親切な数学系の掲示板で聞いたほうがいい。
0881デフォルトの名無しさん
NGNGまだ学校で習ってないからと言って逃げる奴はプログラマには向かない。
高校の教科書でも買ってきて読むくらいの事しろ。
とりあえず、ベクトルとか行列で調べてみろ。
ネットでもそこそこ解説してるところがあるはず。
0882デフォルトの名無しさん
NGNG0883デフォルトの名無しさん
NGNG大学生向けの中等数学(高校生が習う
レベルの数学)指導書でも買いなされ。
参考書はジャンル分けがいびつなので
高校生以外の人にとっては検索性が悪い。
0884デフォルトの名無しさん
NGNG連立方程式解くだけでしょ
漏れがアフォなのかもしれんが、わざわざ媒介変数表示にしてる意味も良くワカラン
0885デフォルトの名無しさん
NGNGパラメータとして4点の座標点を貰って計算する方法が
わからないぽ。誰か教えてぽ。
0886デフォルトの名無しさん
NGNG松坂和夫先生の『数学読本』 その2
http://science2.2ch.net/test/read.cgi/math/1068504263/76-83
0887デフォルトの名無しさん
NGNG在庫切れになる前に買うしかないかのかな。しかし全部買うと16000円。
貧しい漏れにはつらひ。
0888デフォルトの名無しさん
NGNG細野真宏先生が良いという話も聞いたことがあるのですが、
両方知っていたら感想聞かせてください。
とりあえず、明日本屋に行ってみますが・・・
0889デフォルトの名無しさん
NGNGx = a+td = A+TD (1)
y = b+te = B+TE (2)
この式からtをくくり出して2つのt=の式(3),(4)を作る。
(3) = t = (4)なので(3) = (4)という式(5)を作る。
式(5)からTをくくり出せばT=の式(6)が得られる。
これで終わり。
式(6)の分母が0かどうかを最初にチェックするのを忘れずに。
分母の値が0の場合、2直線は平行。
(6)の式で求めたTを使ってx,yを求めればよい。
0890デフォルトの名無しさん
NGNGの方が2001/04/23に書いておられるような
「凹な空間を凸な空間に分割する方法」を知りたい。
0891デフォルトの名無しさん
NGNG0892デフォルトの名無しさん
NGNG0893デフォルトの名無しさん
NGNG0894デフォルトの名無しさん
NGNG0895デフォルトの名無しさん
NGNG0896デフォルトの名無しさん
NGNG3次元以上でも同じ考えで四面体に分割でいけるんじゃないの?
有限要素法方面調べれば、そんなの沢山みつかりそうだけど。
もっとも、三角形や四面体は、それなら「十分」という条件。
細かすぎるかも。計算量考えるともっと少ない分割にしたいわな。
0897デフォルトの名無しさん
NGNG0898デフォルトの名無しさん
NGNG「割と簡単に分割できることに気がついてがっかり。なんで今まで気がつかなかったんだろう...。
」
といえる程簡単なの?それとも彼は天才?
0899デフォルトの名無しさん
NGNGその周辺で一番底を見つけて、
底から一番遠い頂点を結んで、
その線と垂直方向にいちばん近い頂点の3点で分割する
みたいな分割を繰り返してけば大丈夫じゃないの?
0900デフォルトの名無しさん
NGNG西暦y年m月d日が所属している週は、いったい第x週でしょうか?
ただし、週は日曜日から始まり土曜日で終わるとします
たとえば、西暦2004年がうるう年で1月1日が木曜日なら、
西暦2004年1月10日は第1週であり、
西暦2004年3月1日は第9週となることを
指を折って数えました
x = f(y,m,d) となるような計算式はどうなりますか?
0901デフォルトの名無しさん
NGNG0902デフォルトの名無しさん
NGNGとりあえず Zeller の公式を引っ張ってくれば後は簡単。
0903デフォルトの名無しさん
NGNG0904デフォルトの名無しさん
NGNG0905デフォルトの名無しさん
NGNGx implies a
0906デフォルトの名無しさん
NGNG知ってると思いますけれど一応
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/mt.html
解説しろっていっても純粋数学を基礎としているので,ここに居る誰も解説できないだろうし
もし仮に解説されてもあなたも恐らく理解できないと思います.
Cに標準でくっついてくるrandより長周期でかつ一様性(特に高次元での一様性)の高い
乱数ルーチンとしか言いようが無いです.
ついでに質問投げておきますが,今現在sineあるいはcosineの数値計算をする上で
一番使われている(連分数)展開公式ってどれですか?
0907デフォルトの名無しさん
NGNGレス、サンクス。
連休を利用して、数学をやり直してます。
細野とはじめからていねいにシリーズを使ってる。
記号の読み方ってわからないのが多いな。難しい・・・。
0908デフォルトの名無しさん
NGNGホームページにのってる簡単な解説だ。とりあえず読んでみれ。
http://www.math.sci.hiroshima-u.ac.jp/%7Em-mat/MT/math.html
0909デフォルトの名無しさん
NGNG細野なつかしいな。大学受験でおせわになったよ。
0910デフォルトの名無しさん
NGNGぜひこの暗号解けないものでしょうか!?
325argf493rdtr521styh075artg625agfa113ller041fsre.2122ffj7343qer7813fda
0911デフォルトの名無しさん
NGNGマルチ氏ね。
0912デフォルトの名無しさん
NGNG#include<MMR.h>
#include<iostream.h>
int main(void){
cout<<MMR("325argf493rdtr521styh075artg625agfa113ller041fsre.2122ffj7343qer7813fda");
return(0);
}
MMRライブラリが必要だから落としてこい。
0913デフォルトの名無しさん
NGNGちょっとほしくなってきたぞ
0914デフォルトの名無しさん
NGNG0916デフォルトの名無しさん
NGNG0917デフォルトの名無しさん
NGNGの扱いかたがわかりません。
高校の数学でアップアップなので、参考書が難しいのです。
たとえば、ある波形をフーリエ変換して、その結果が
struct {
double *x;
double *yi;
} cmprx;
のような構造体に入ったとして、500Hzから1000Hzのバンドパスフィルタを作る
にはどのような計算をすればいいのでしょうか?
0918デフォルトの名無しさん
NGNG0919デフォルトの名無しさん
NGNG0920デフォルトの名無しさん
NGNG知識をひけらかすために書き込みすんな。
http://www5.ocn.ne.jp/~report/news/dnacom.htm
0921デフォルトの名無しさん
NGNGフーリエ変換でという事になると、データ全体が収まっているのですよね?
でしたら、フーリエ変換した周波数軸上で、500〜1000以外の全部の値をゼロ(複素数なので実も虚も)にしてしまえば良いのです。
もし、データーをブロック処理したいなら、そればFIRフィルタを理解しなければなりません。
0922デフォルトの名無しさん
NGNG0923デフォルトの名無しさん
NGNG0924デフォルトの名無しさん
NGNG=(10^-2.0)*(10^0.4*x)
=0.01*{10^(4/10)*x}
=0.01*(10^4)*(10^1/10)*(10^x)
でいいんですか?
0925デフォルトの名無しさん
NGNG0926デフォルトの名無しさん
NGNGマルチ?
0927デフォルトの名無しさん
NGNGセリオ?
0928デフォルトの名無しさん
NGNG説明しているサイトを教えてください>_<;
0929デフォルトの名無しさん
NGNG0930デフォルトの名無しさん
NGNG同じことなのですか?
(ごめんageさせて)
0931デフォルトの名無しさん
NGNG0932930
NGNG0933デフォルトの名無しさん
NGNG0934デフォルトの名無しさん
NGNG0935デフォルトの名無しさん
NGNG同じです
0937930
NGNGttp://eritokyo.jp/system/spline/
にあるような2次元スプライン補間システムって、
横にスプライン補間かけてから、縦にスプライン補間かければいいのですか?
(またはその逆で縦にかけてから、横にかける)
0938デフォルトの名無しさん
NGNG必要とされる手法・知識はほぼ共通ですねー。
ただ、「平滑化スプライン」の方は、区間の境界をなめらかにする
ために、微分係数を調整することが違うといえば違うかな。
微分係数というと難しく聞こえるけど、ただの連立2次式だから
最小二乗法を知ってる人なら楽勝よ。
0939デフォルトの名無しさん
NGNG実際には直交のポリラインにする事が多いからf(x),g(y)で使う。
弱点は、上への関数しか扱えないこと(山腹にある洞窟は不可)。
0941デフォルトの名無しさん
NGNG0°<=θ<=360°の範囲で求めたい。
外積使おうとしても同じ結果だし、
どんな方法が有りますか。
0942デフォルトの名無しさん
NGNG0943デフォルトの名無しさん
NGNG0944デフォルトの名無しさん
NGNGhttp://pc5.2ch.net/test/read.cgi/tech/1090227743/246-
まさにその話題。
0945デフォルトの名無しさん
NGNG0946デフォルトの名無しさん
NGNGふつうにacos(a・b / |a| |b|)かと思ったが
0947デフォルトの名無しさん
NGNG向きも考慮したい(a と b の位置関係が逆になったら角度も逆にしたい)ってこと?
a, b を複素数とみなして、
a' = a / |a|, b' = b / |b|
c = b' / a'
θ = atan2(Im(c), Re(c))
で、-180<θ≦180 の範囲で角度が出る。
>>946
それだけと、角度向きが分からない。
0948デフォルトの名無しさん
NGNGc = a / b で十分。余計な乗除算は時間の無駄。
しかも範囲は -2π<θ≦2π になる。ラジアンだから。
0949デフォルトの名無しさん
NGNG細かいこというなら
a = ax + i ay, b = bx + i by として、
c = a / b * |b| = (ax bx + ay * by) + i(ax * by - ay * bx)
とした方が計算コスト低いけどな。
0950デフォルトの名無しさん
NGNGベクトルを1つずつ0度からの角度をatan2で求めてその差から
求めました。
c = b/a って何を意味するものなんでしょう?
割る事による図形的な意味が分からない。。。
949さんの仰る計算コストという点で自分のしたやり方は無駄が多そうな。というか、絶対そう。
0951デフォルトの名無しさん
NGNG>950
複素平面上で考えるといい。
複素数の割り算が極座標形式でどうなるかということ
0952デフォルトの名無しさん
NGNG次スレたてて
0953デフォルトの名無しさん
NGNG複素数勉強しる。
一応、複素数の知識無しで説明しとくと、
a = (ax, ay), b = (bx, by)、θ = ∠AOB とすると、
ax * bx + ay * by = |a| |b| cosθ
ax * by - ay * bx = |a| |b| sinθ
θ = atan2(sinθ, cosθ)
= atan2(|a| |b| sinθ, |a| |b| cosθ)
= atan2(ax * by - ay * bx, ax * bx + ay * by)
0954デフォルトの名無しさん
NGNG行列とかベクトルってのが出てくるのですが
これらは何なのでしょうか?
0955デフォルトの名無しさん
NGNG行列:集合
ベクトル:行列の向き
0956デフォルトの名無しさん
NGNG大体の感じだが、
ベクトルというのは、空間座標の点
っで、ベクトルに行列を掛けた結果は、
その点の移動(ある平面に関する対象点や、回転、平面への射影など)後の
点の座標を表していると考えればいいんじゃないかな?
0957デフォルトの名無しさん
NGNGわかりやすい解説ありがとうございました。m(_ _)m
みなさんのやってたやり方って3Dの計算だったんだ。
2D前提で勝手に思い込んでました。
>>952
スレの立て方がわからない〜。
役立たずですみません。ぐはっ。
0958デフォルトの名無しさん
NGNGプログラミングの為の数学と算数 vol.2
http://pc5.2ch.net/test/read.cgi/tech/1094368921/l50
0959デフォルトの名無しさん
NGNG貴様関連の話は全部2Dだっつーの。
0960デフォルトの名無しさん
NGNG0961デフォルトの名無しさん
NGNG0962デフォルトの名無しさん
NGNG0963デフォルトの名無しさん
NGNG0964デフォルトの名無しさん
NGNG0965デフォルトの名無しさん
NGNG0966デフォルトの名無しさん
NGNGまあ、所詮は埋立て作業だし。
0967デフォルトの名無しさん
NGNG0968デフォルトの名無しさん
NGNG0969デフォルトの名無しさん
NGNGその前後に()とか�@とか√とか+-×÷とか記号が並んでなかったかえ?
0970デフォルトの名無しさん
NGNG0971デフォルトの名無しさん
NGNGうれしそうだな
0972デフォルトの名無しさん
NGNGいや、それは違うと思うがな。
0973デフォルトの名無しさん
NGNG0974デフォルトの名無しさん
NGNG0975デフォルトの名無しさん
NGNGこの板って結構1000レス近くまでまともに利用されることが多いよな。
0976デフォルトの名無しさん
NGNG0977デフォルトの名無しさん
NGNG0978デフォルトの名無しさん
NGNG0979デフォルトの名無しさん
NGNG0980デフォルトの名無しさん
NGNG0981デフォルトの名無しさん
NGNGこの板も厨房率高いけど、厨房とそうでない香具師の棲み分けが
一応成り立ってるのが大きいかも。
0982デフォルトの名無しさん
NGNGhttp://science3.2ch.net/test/read.cgi/math/1076139772/100-
0983デフォルトの名無しさん
NGNG0984デフォルトの名無しさん
NGNG0985デフォルトの名無しさん
NGNG0986デフォルトの名無しさん
NGNG0987デフォルトの名無しさん
NGNG0988988
NGNG0989デフォルトの名無しさん
NGNG0990デフォルトの名無しさん
NGNG0991デフォルトの名無しさん
NGNG0992デフォルトの名無しさん
NGNG0993993
NGNG0994デフォルトの名無しさん
NGNG0995デフォルトの名無しさん
NGNG0996デフォルトの名無しさん
NGNG0997デフォルトの名無しさん
NGNG0998デフォルトの名無しさん
NGNG0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNG10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。