1 名前:デフォルトの名無しさん [04/09/05 16:22] プログラムに必要な数学、算数に関する話題について 語りましょう。TIPS/Q&Aスレです。
645 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 01:50:51 ] 具体的なものを使わず、じゃない。 数字や記号や式を具体的なものとして捉える力のほうが大事。 俺の持論だけど。
646 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 02:41:21 ] F = ma なんのことか分からん罠
647 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 06:25:56 ] >>643 おまいさんは 脚の総本数 = 4 * 亀の個体数 + 2 * 鶴の個体数 から遣り直した方がいい。
648 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 07:19:32 ] ツルとカメと、あわせて8ひきいます。 足の数はぜんぶで、26本。 ツルは何匹、カメは何匹?
649 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 07:21:05 ] ttp://www.morinogakko.com/classroom/sansu/bunsyoumondai/turukame/kiso.html
650 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 07:30:39 ] pc10.2ch.net/test/read.cgi/tech/1169300052/10 【 課題 】プログラミング演習 1)N桁の数字を各桁毎に分解し、その数字の並びの組み合わせで得られる 最大の数から最小の数を引くという演算を、結果が収束または循環するまで繰り返す。 例: a)1111 のとき 1111 - 1111 = 0 収束 b)2006 のとき 6200 - 0026 = 6174 さらに 7641 - 1467 = 6174 収束 2)上の演算をN桁で構成される全ての数字について行い、 その桁数における収束パターンの一覧を結果として表示する。 例: N = 4 のとき 1000 〜 9999 までの数字で確認 3)Nを1〜10程度まで可変にしてそれぞれの結果を出力。 【 形態 】Javaアプリケーション 【 GUI 】Swing(CUIでも可) 【 Ver 】1.5以上 【 期限 】月曜17:00 【 補足 】 できれば数字の組み合わせが重複するケースや 計算の途中で既知の値(系列)に到達した場合は それ以降の計算を省略する等して高速化を図ること
651 名前:デフォルトの名無しさん mailto:sage [2007/01/23(火) 23:26:57 ] >629 受験数学が駄目なのか、微積分とか代数幾何とかの 教科書レベルの基本的概念を掴むところから駄目なのか 想定している大学のレベルはどれくらいか たとえば、物理の物体の運動を数式の暗記ではなくて、 微積分の概念を用いて理解するなら数値積分の結果を グラフにしたりするのがよくあるパターンかと思うが、 それならプログラミングなんてする必要はなく、excelで も十分な罠。
652 名前:デフォルトの名無しさん mailto:sage [2007/01/24(水) 02:21:07 ] >>650 でかい配列作って計算結果の一覧表を作ればおk
653 名前:629 mailto:sage [2007/01/24(水) 22:15:45 ] >>650 これは私宛てでしょうか?これはいったい何なんでしょうか? >>651 受験数学は駄目ですね。これは基本概念が掴めていない所為だと 思います。志望は阪大・大阪市立の医学部です。 excelですか。一度調べてみます。有難う御座います。
654 名前:デフォルトの名無しさん mailto:sage [2007/01/25(木) 10:38:57 ] >629 >論理性はある方だとは思います。 >数学的思考が出来ていない 矛盾してないか?
655 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 03:07:02 ] 国語における論理(≒常識的論理)と、数学やプログラムのそれとは、 若干のズレがあるからな。 たとえば、「明日の花見は、雨ならば中止します。」と幹事が言ったとして、 「では晴れたらどうするんですか?」なんて質問をしたら、馬鹿呼ばわりされること必至。 (日常会話の「ならば」は、必要十分条件を意図して使われていることが多い。) 数学(プログラム)的には、この質問は至極自然かつ妥当なものなのだが。
656 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 10:25:47 ] >653 基本概念が掴めていなければ,応用もできんわな そんなヤツに医者になってほしくない・・・
657 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 11:03:26 ] >>655 でも、その国語と数学のずれを認識できない奴のことを、 はたして論理性があるといえるのか?
658 名前:デフォルトの名無しさん mailto:sage [2007/01/26(金) 22:47:39 ] それを論理の違いとして捉えているところがすでにダメダメだろ 「数学では論理を正確にするが,日常ではルーズにする」とかな そうじゃなくて言葉の意味が違うだけ 力学で言う「仕事」が普通に言う「仕事」と違うっていうようなもの
659 名前:629 mailto:sage [2007/01/26(金) 23:54:56 ] >>654 いえ、私は、 数学的思考とは、物事を順序立てて考える事であり、具体的な文字を使わず、 抽象的な文字を用いる 思考です。又、余計な言葉は入れず必要な事だけを述べて行く・書き下して 行く様にする思考です。 こう言いました。 この私が呼んでる数学的思考という能力が劣っていても、論理性が高いという事は ありえます。 先ず、具体的な文字を使わず、抽象的な文字を使う。という事と論理性とは なんの関係もありません。(まぁ、厳密に調べて言ったら、多少なりとも関係 しているでしょうが) 次に、余計なことを述べず必要な物だけを述べる。と言うのも、関係有りません。 別に不必要な物を付け足しても、論理的な展開はでき、論理力が高いという事はあります。 最後に、物事を順序立てて考える。と言うことですが、これは正直よく反論出来ません。 別に物事を順序だてて考えなくても、論理力が高いと言う事はある。脳みそは複雑でバラバラな 事でも統合的に処理できている。というぐらいしか言えません。 また、頭の良い人から論理性が高い。と言われますし、実際国語の点数も良いです。 なので、私の論理性が高くない、と言う事はあまり考えるべきでないと思います。
660 名前:629 mailto:sage [2007/01/27(土) 00:04:12 ] >>655 国語における論理(≒常識的論理)と、数学やプログラムの論理は別に 考えているつもりです。 >>657 >>658 何処でどう私の事を、その国語と数学のずれを認識できない奴と、 思ったのですか? もし、論理性の欠如から来る、ミスなら気をつけて下さい。 話がいらん、何も有益が無い方向に曲がってしまいます。
661 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 00:11:08 ] 論理がどうこうよりも、急がば回れで、小中学生レベルの算数・数学の問題を解きまくったほうが、計算はできるようになると思う。
662 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 01:18:26 ] 数板かどっかに行って欲しいなあ。 本人は論理的なつもりなのかも知らんが、誤った前提を元に論理も糞も無いだろうに。
663 名前:629 mailto:sage [2007/01/27(土) 02:19:15 ] >>662 うだうだ文句垂れるだけならサルでも出来る。 >>661 演算は出来ます。というか誰も演算できないなんて言ってません。 まぁ、大体このスレでの有益な意見は出たので、これで失礼します。 一部の人が怒りっぽく、荒れてきましたし。 私が言ってないことを言ったかの様に述べたり、確定してない事を確 定してると思い込むのは、恐らく、頭脳から来る頭の悪さでは無く、 人格の欠陥から来る頭の悪さでしょう。 人格の欠陥から来る頭の悪さは大概自己愛の欠落からきています。 自己が自分や他人(特に両親)から肯定されていないんですよ。 一度両親の元へ行って、愛を与えて貰いに行くのがいいと思います。 もしくは、両親との不仲を直し、互いに愛し合う関係になったほうが 良いです。それで、もしかしたら直ると思いますよ。ではノシ
664 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 02:30:09 ] 怒りっぽくなったり荒れたりしてるのは、お前さんだけのように見えるが。 論理性があって計算もできる奴が、どうして >数学出来ません。物理できません。化学の計算できません。 なんてなるのかが不思議でしょうがない。
665 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 03:07:16 ] 663見りゃ分かるとおり、コイツは勝手に論理飛躍した上で他人の人格欠陥を指摘するタイプだ。 どこも論理的じゃないから、不思議でもなんでもない。
666 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 10:23:34 ] >659 「数学的思考=抽象化」ということか オレは「数学的思考=論理的思考」だと思ってたんだが そもそも,抽象化は考える前の「単純作業」だと思ってたし その辺,みんなはどうよ? >別に物事を順序だてて考えなくても、論理力が高いと言う事はある これはさすがに違うんじゃねえか? もう見てないのかな
667 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 10:26:52 ] 自分の考えが否定されたり,お望みの回答が得られなかったら人格攻撃をするなんてのは アレな人の典型のようにも思える
668 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 13:53:01 ] >>666 呼びたいのか?w 俺はもう帰ってきて欲しくないが
669 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 15:25:34 ] >>659 日本語の勉強を、中学校辺りから遣り直してください。 仮令国語の点数がよくても、このような文章としてなっていないものを書いているようではお郷が知れます。
670 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 15:30:12 ] >>668 大丈夫、この手の香具師は自意識過剰だから自分の話が出ないか気になって必ずヲチしている。 プライドが充分に低いか高いかしなければ二度と書き込まないでくれるはずなのだが……
671 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 17:05:37 ] 最初は普通の受験生かと思ってたのに、こんな奴だったのかよw
672 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 21:17:51 ] それが論理的かどうかは別だけど、 物事をシンプルにまとめる力がないと、プログラムでは苦労するだろうな、 と、経験的に思う。
673 名前:629 mailto:sage [2007/01/27(土) 21:19:32 ] 呼ばれたんで出て来ました!w >>670 さんは中々鋭いですね。私はナルシストです。 では本題に、 >>666 実際、多くの受験生が苦手としている科目が数学と物理です。 これは人が抽象的な思考をするのが苦手だからだと思います。 より具体的に説明された方が理解しやすいのは経験からも判ると思います。 ので、抽象化を'単なる'単純作業と捕らえるのは違うと思います。 しかし、出来る人からすると、単なる単純作業なんでしょうね。 >別に物事を順序だてて考えなくても、論理力が高いと言う事はある これはさすがに違うんじゃねえか? これについては、一例を出しますと、 ある繋がった1〜10迄の事があるとします。順序だてて考えて行くとは、 1.2.3.4.5.6.7.8.9.10と一から十迄規則的に考えて行く思考法の事です。 一方の私がそうでなくてもいける、と言ったのは、 2.5.1.4.6.3.7.9.10.8.と不規則ながらもこれを頭の中で正確に関連づける思考法が 人には出来るという事です。不規則な順序で進めても、それらを正確に関連づけて 最終的に上手く統合出来る。そしてそれは確固とした論理性であり論理力である。 と言うことが言いたかった訳です。
674 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 22:01:54 ] >>673 >670によると、プライドが高いか低いかどっちかだそうだけどどっち?
675 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 22:05:17 ] >多くの受験生が苦手としている科目が数学と物理です。 これは非常に簡単な理由がある。 こららは所謂理数系と言われる教科なのに、教えている教師は 所謂文系と言う数学物理を苦手とする傾向のある連中が多いからだ。
676 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 22:17:17 ] >>673 ×ナルシスト ○ナルシシスト
677 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 22:52:52 ] 高校数学物理で抽象化して捉える能力が重要だと思ったことはないなぁ 大学以降は抽象化されたものを扱う機会が増えたが、どちらかというとそういう考え方は苦手だった。 そんな自分でも高校のときは数学や物理には苦労しなかったので、 受験レベルの内容に抽象的な思考はそれほど必要ないと考えている。 >>629 には数学や物理ができない原因が本当に抽象的な思考の部分にあるのかを考えてみてほしいな。 あと元々はプログラミングが役に立つかという話だったけど、 プログラミングに手を出したコストに対して得られる対価が小さいかなと思う。 もっと楽にスキルを上げる方法はありそう。 少しでも興味を持ったのなら、受験は抜きにして趣味でやってみるのもいいかもしれない。 嫌だったら辞めればいいだけの話だし。
678 名前:デフォルトの名無しさん mailto:sage [2007/01/27(土) 22:57:28 ] 青チャートやれよ それが終わったら赤に行け
679 名前:661 mailto:sage [2007/01/27(土) 23:40:15 ] >>663 そうか、すまん。 お前が論理性があるというので、学校の数学から論理性を取り除いて残るものと言ったら計算しか思いつかなかった。 それだけのことだ。
680 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 11:10:15 ] ナルシス →ナルシシズム、ナルシシスト ナルス →ナルシズム、ナルシスト ja.wikipedia.org/wiki/%E3%83%8A%E3%83%AB%E3%82%B9 お前同郷かw 頑張れよw 抽象化じゃなくて一般化という用語を使えばもっと楽だろうに。 〜ist の用法を一般化したらナルシシストになりそうなことは想像できるだろう。 ナルシスを知らなければしょうがないが。
681 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 14:02:55 ] 誤用とはいえ広く浸透してる言葉の揚げ足取っても仕方ないやね
682 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 15:52:17 ] -istの一般的用法だと、人名の後ろにはistでなくてianをつけないか? ○machiavellian ×machiavellist
683 名前:デフォルトの名無しさん mailto:sage [2007/01/28(日) 15:56:56 ] 暮らし安心ナルシアン
684 名前:デフォルトの名無しさん mailto:sage [2007/01/30(火) 05:08:18 ] 大学の時に数値計算法の本をたくさん勉強した。 かなり役に立った。特に微積に関してはかなり深く勉強できたと思う。 でも今はCOBOLのプログラマだ・・・orz 全く数値計算法なんて役に立たねえっす。
685 名前:629 mailto:sage [2007/01/31(水) 05:51:03 ] 数値計算法の本って具体的にどんなですか? 良かったら教えてくださいまし。
686 名前:デフォルトの名無しさん [2007/01/31(水) 10:30:54 ] 最小二乗法ライブラリはどこにありまつか?
687 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 11:03:43 ] >>686 ttp://www.netlib.org/lapack/index.html
688 名前:686 mailto:sage [2007/01/31(水) 11:13:39 ] サンクス>>687 LAPACKでググったら、直線のサンプルもすぐ見つかりました。 ttp://www.sip.eee.yamaguchi-u.ac.jp/kou/lapack.html 実際にやりたいのは真円のフィッティングだから、もうちょっと調査しないと。
689 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 11:33:59 ] 円だと最小2乗では普通にやったら直線のように解けないよ。 数値解を繰り返しで求めるか ttp://www.tensyo.com/urame/prog/linealgo.htm 中心からの距離の2乗の誤差の2乗で代用すれば解けるそうだ
690 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 11:40:36 ] >>685 ニューメリカルレシピ・イン・シー
691 名前:686 mailto:sage [2007/01/31(水) 11:42:04 ] あ、そうですか。では、そのやり方でやります。 やりたいのは4点(真円になるか”?”)から円の中心と半径を決めたいです。 >中心からの距離の2乗の誤差の2乗で代用 ちょっと難? 関係ないけど今回の場合、 ttp://okwave.jp/qa1812202.html は参考にならないような気がしました。
692 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 12:02:12 ] 円は3点で求まる。 >>689 にも ”3点を通る円” で公式が書かれているね 4点なら最小2乗を使うほどにはデータ量が多くない。 4点から3点を取り出しては公式で中心を求めて 4つ求まった中心の平均を出したらどうだろ? その中心から4点への平均距離を求めて、それを半径の代用としたら?
693 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 12:09:42 ] >>中心からの距離の2乗の誤差の2乗で代用 >ちょっと難? これはデータの特性にもよるだろな。 使った感じでは十分だよ。 もっとも画像からのデータでデータ量は十分あったが 何より式一発で求まるのは非常にありがたい
694 名前:691 mailto:sage [2007/01/31(水) 12:19:57 ] >>693 ごめんなさい、書き方が悪かったです。 そのやり方が悪いという意味じゃなくて、文章難しくて、 その文章どおりにするには何をどうすれば良いのか考えなきゃという意味です。 >>692 その通りやってみたんですが、トンデモない円が出来て(3点だと上手く行く)。。。 どういう算数でやろう? 最小二乗法は? 「中心からの距離の2乗の誤差の2乗で代用」ってどういう意味? ← 今ここ といった感じです。
695 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 12:22:31 ] >>692 の方法でとんでもない円になるようなデータなら 最小2乗を使ってもとんでもない結果しか出ないよ これがデータ100点あって1個だけ飛び離れてるような状態ならマシだけどさ
696 名前:691 mailto:sage [2007/01/31(水) 12:29:27 ] >>695 その通りなんですが、 未知データの解析なので、 「最小二乗法を使っても円にならない」ならそれもひとつの結論、 みたいな。
697 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 13:38:16 ] 何も考えずにたった4点で最小二乗法をやるのは馬鹿げてる。 もし論文なんかで出したら一笑されるぞ。 少数観測点からデータを復元する話は GPS などの位置計測で よくある話で、そういう場合にまともな推定をしようとすれば 観測点の状態が分かってることが必要になる。 たとえば、真の値からのずれがある確率分布に従うと仮定を 置けば、最尤推定などによって最もそれっぽい場所が出る。 正規分布に従うと仮定してよい場合は最尤推定は最小自乗法に 一致するため、多くの GPS ではこの仮定を(知ってか知らずか)置いている。 多量のデータで最小自乗法が有効なのは、中心極限定理によって 分布が正規分布に漸近するため。
698 名前:691 mailto:sage [2007/01/31(水) 13:40:21 ] あ、このページ >★最小2乗法による円弧推定 ってそのまんまのタイトルがあった。 3点から円を求めるのもこのページから見つけたのに気付かなかったOTL
699 名前:691 mailto:sage [2007/01/31(水) 13:43:33 ] >>697 >何も考えずにたった4点で最小二乗法をやるのは馬鹿げてる。 >もし論文なんかで出したら一笑されるぞ。 了解、納得でつ。 必ずしも円になるのか分からないデータの解析なので、 逆にデータ解析結果から観測点が円にならないという結論を出しますが。 ある部分は円、ある部分は円にならず従って応力受けてる、みたいな。
700 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 13:48:36 ] >逆にデータ解析結果から観測点が円にならないという結論を出しますが。 これはいえない。最小自乗法では円にならなくても、ほかの方法では 円になる場合があるかもしれない。
701 名前:699 mailto:sage [2007/01/31(水) 13:57:36 ] >>700 じゃあ、ほかの方法教えて。 ところで、 >★最小2乗法による円弧推定 を読んだら、 >この3つの方程式を解けば良い. で終わってる。 解かないといけないのか。
702 名前:デフォルトの名無しさん mailto:sage [2007/01/31(水) 14:12:46 ] >>701 上で述べられていた任意の三点の中心の平均や重心は有力。 また、697 で述べたように、最尤推定はひとつの別の方法。 ほかにも最小自乗や最尤推定を部分に含むが、適当な ペナルティ関数を設定して最小化問題として解く手もある。 最尤推定やペナルティ法は、円になるかどうか分からないものの 判定なら、おそらく最小自乗を用いるよりも良い結果が得られる。 (最小自乗では、一直線上のデータは半径が(ほぼ)無限大の円と 判断されるが、通常の応用ではそれを弾きたいことが多い)
703 名前:701 mailto:sage [2007/01/31(水) 14:33:09 ] >最尤推定やペナルティ法は これらはライブラリにもなってなさそうだね。 実装難しそう...
704 名前:701 mailto:sage [2007/01/31(水) 18:42:23 ] >2a( X*X/N -XX)+ 2b(X*Y/N -XY) =X(XX+YY)/N-XXX-XYY ----1) >2a( X*Y/N -XY)+ 2b(Y*Y/N -YY) =Y(YY+XX)/N-YYY-XXY ----2) >r*r=(XX+YY-2.0(a*X+b*Y) )/N+a*a+b*b; ----3) >この3つの方程式を解けば良い. やっぱこれ何度読んでも分からないんだけど、 4点をどうやって代入するわけでしょうか? 解答が目の前にありながら使いこなせないorz
705 名前:デフォルトの名無しさん mailto:sage [2007/02/01(木) 12:41:01 ] >>704 X → 肺i XX → 肺i*xi XXX → 肺i*xi*xi Y → 輩i YY → 輩i*yi YYY → 輩i*yi*yi 以下略 の意じゃね? xi, yi が配列要素で直線上にない3点が最低限必要と。
706 名前:デフォルトの名無しさん mailto:sage [2007/02/05(月) 17:23:56 ] >>704 後は、1) 2)式から a,b2変数の連立一次方程式を解けば中心が求まるでしょ? それを3)に代入すれば半径も求まる
707 名前:デフォルトの名無しさん mailto:sage [2007/02/14(水) 10:09:26 ] たぶん、質問者の目的には、 4点中 3点で求まる円から、 残った1点までの円からの距離2乗(|中心からの距離-半径|)を出して それを4つ加算した結果、 またはそれを半径で割って正規化したもの でいいんじゃないのか?
708 名前:デフォルトの名無しさん [2007/02/28(水) 21:55:01 ] 保守アゲと質問募集
709 名前:デフォルトの名無しさん [2007/03/25(日) 15:02:16 ] 幅 W、高さ H の楕円上に N個の点を等間隔に打とうと思いました。 for(i = 0; i < N; i++) { int x = cx + sin(i * 2 * PI / N) * (W / 2); int y = cy + cos(i * 2 * PI / N) * (H / 2); plot(x, y); } ところがというか当然というか、これだと W = H の円の時にしか点が等間隔になりません。 どうしたら良いでしょうか? 知っていなくてはいけない公式などありましたら教えてくださいませ。
710 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 15:24:58 ] 少し上のほうにあった,放物線を速さ一定で進むというのと同じ話だよ
711 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 15:26:04 ] あれ,と思ったけどそれは他スレか
712 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 15:44:51 ] 楕円の円周の長さは 楕円積分という厄介な分野で それを等間隔に分割というのは、その厄介な問題に挑戦するという事になる 数式では基本的に解けないから、数値積分で頑張るしかないよ
713 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 15:46:43 ] W > H > 0になるようにして int x = cx + W * cos(i * 2 * PI / N); int y = cy + H * sin(i * 2 * PI / N); でどうでっしゃろ?
714 名前:713 mailto:sage [2007/03/25(日) 15:47:20 ] あ、無理だったごめん
715 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 16:06:21 ] 楕円関数の近似式をkの値を適当に決めたルックアップテーブルみたいな形で用意しとけばいいんじゃね? それつかって円周を求めた(ここではLとおく)として 始点(仮に中心からx軸方向に幅/2移動した点としよう)から 円周にそってl ( = n×L, nは適当な実数)分移動したときの座標(x,y)ってのは楽に求まるの? 精度気にしないのならこれでいけると思うんだけど、どうでしょうか?
716 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 16:20:25 ] 近似でいいのなら、 Nの個数を30倍くらいに増やし一度テーブルを作成して 補間で、近似値を求めるのが一番簡単だろう
717 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 16:40:25 ] もう少し詳しく。 そのテーブルの中味と、 何のデータを元にして、 何の式で補間するか書いてください お願いします(-∧-)
718 名前:709 mailto:sage [2007/03/25(日) 16:51:16 ] ありゃ、思いのほか厄介な問題だったんですね・・・ >>715 円周に沿って l の座標を求める方法がよくわからないです。すみません。 >>716 で言う方法かはわかりませんが、自分ならこうやりますがどうでしょう? 1. 30N の全ての点の座標を求たテーブルを作る 2. 隣り合う点との距離を三平方の定理で求めることを全ての点について行い、円周の近時値を計算する 3. 円周を N等分した長さを求め、これを当初の N個の頂点間の距離 d とする 4. 30N のテーブル中の頂点の中から、それぞれの点の円周上の位置(始点からの距離)に近いものを選んで点を打つ
719 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 16:53:40 ] 補間は、とりあえず線形補間とすれば、 テーブルの中身: double ax[N*30]; double ay[N*30]; double aL[N*30]; double L=0; ax[i] = cx + W * cos(i * 2 * PI / N); ay[i] = cy + H * sin(i * 2 * PI / N); if( i != 0 ) L+= hypot(cx-ocx , cy-ocy); aL[i]=L; ocx=cx; ocy=cy; のテーブルを作るでしょ? Lを周長の代用として、 c= L*i/N で aL[k]<=c && aL[k+1]<c になる k を見つけて比例で分割して w = ((c-aL[k]) /(aL[k+1]-aL[k]) + k) :2*Pi/N を角度にするという感じ
720 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 17:04:31 ] >>718 >円周に沿って l の座標を求める方法 楕円積分の逆関数だから、楕円関数使って求まる気がする。 もちろん、楕円関数の値は数値的に計算するものだけど。
721 名前:719 mailto:sage [2007/03/25(日) 17:13:07 ] ゴメンミス テーブルは aL だけでいい。 double aL[N*30]; double L=0; for( i=0;i<30*N;i++}{ ax = cx + W * cos(i * 2 * PI / N); ay = cy + H * sin(i * 2 * PI / N); if( i != 0 ) L+= hypot(ax-oax , ay-oay); aL[i]=L; oax=ax; oay=ay; } 次のループは for( i=0;i<N;i++}{ で while(aL[k]>c) k++;
722 名前:719 mailto:sage [2007/03/25(日) 17:16:37 ] ありゃ、元の式は 違うのか、 上の ax = cx + sin(i * 2 * PI / N) * (W / 2); ay = cy + cos(i * 2 * PI / N) * (H / 2); に訂正、 続き、 w = ((c-aL[k]) /(aL[k+1]-aL[k]) + k)*2*PI/N; int x = cx + sin(w) * (W / 2); int y = cy + cos(w) * (H / 2); plot(x, y); }
723 名前:709 mailto:sage [2007/03/25(日) 17:30:02 ] >>722 丁寧にどうもありがとうございます。 よくわかりました。 >>720 まずは楕円積分というのを勉強しなくてはいけなそうです。 おいおいスキルアップしたいと思います。 >>710 よろしければそのスレを教えてもらえないでしょうか。 放物線を速さ一定で進むってのも興味あります。
724 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 17:44:59 ] 楕円の周長なら ttp://www.tensyo.com/urame/prog/ALGO.HTM の後ろの方に計算方法が書いてあったけど コレは今回の問題には応用できないな
725 名前:しょう [2007/03/25(日) 20:12:39 ] ある学校の生徒数は 1年生が全体の三分の一であり、2年生と 3年生の生徒数の比は5:6である。1年生の生徒数をa人、2年生の生徒数をb人とするとき、bをaの式で表せ。 この問題誰か解いてください
726 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 20:19:03 ] プログラミング関係ないな。 宿題は他をあたりなさい。
727 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 20:22:52 ] 1) a*3=b+c 2) b*6=c*5 1' a*3*5=b*5+c*5 a*3*5=b*5+b*6=b*11 b=a*3*5/11
728 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 20:23:34 ] うわーなんてむずかしいもんだいなんだー
729 名前:しょう [2007/03/25(日) 20:27:12 ] 解らないですか?
730 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 20:28:17 ] ヒントください せめて何学年まであるか、一学年何クラスかぐらいはわからないと・・・
731 名前:しょう [2007/03/25(日) 20:31:33 ] 高校受験の問題です。問題用紙のままカキコしました。
732 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 20:34:09 ] ……('д`)帰れリア厨
733 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 20:41:40 ] SPI並の難しさだな 中学生じゃ解けないよ 大学入って掃き出し法を習うまでとっておきなさい
734 名前:デフォルトの名無しさん [2007/03/25(日) 21:04:47 ] 厨房でも溶けるだろ >727間違ってる 1)a*2=b+c だな。 で、2)はb:c=5:6から出した式ですね あとは連立方程式
735 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 21:31:43 ] このスレの上の方で文系は数学から逃げ〜とか言ってたけど 俺数学選択で早稲田受かったよ
736 名前:デフォルトの名無しさん [2007/03/25(日) 21:38:14 ] おめでと(^O^)/
737 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 21:42:19 ] ありがと(^0^)/ まぁ政経だけどねwショボいけど
738 名前:デフォルトの名無しさん mailto:sage [2007/03/25(日) 22:12:11 ] 理系で数学から逃げた俺は退学して工場労働者やってるお(^o^)
739 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:05:29 ] >>723 これだった pc11.2ch.net/test/read.cgi/gamedev/1170387853/
740 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:10:22 ] >>734 それを言うなら、 a = (a + b + c) * 1/3 だろ。実際のところ、3学年しかないという前提はどこにもないわけだが。
741 名前:デフォルトの名無しさん mailto:sage [2007/03/26(月) 00:26:09 ] >>723 楕円の周長計算、 「使えるだけでいい」という姿勢なら 単に数値計算ライブラリからソースコピればいける気が。
742 名前:デフォルトの名無しさん [2007/03/27(火) 01:25:31 ] テスト www.youtube.suppa.jp/?uk5LgzILKQU59%+0kBtqQp0RJf30%+8rTFpttjtSU89%+eKWwj9JoAln29%+OSjDO5IUnWJ14%+amKCPh1YrDR14%+KmClRwiAMOy29%+4gIU8IV2hvR14%+CxM26WyV1_d29%+mIBUzAsDgyE132%+@1@_AutomaticPlay
743 名前:デフォルトの名無しさん [2007/03/27(火) 02:01:51 ] >>742 はコチラへ移動しました ★☆YouTubeのCMを連続動画に☆★ //ame.x0.com/main/070327015730.html ame.x0.com/main/070327015730.html
744 名前:デフォルトの名無しさん [2007/03/28(水) 11:26:38 ] 円と曲線がどれだけズレてるかの面積?みたいなものはどうやって計算すればよいですか?
745 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 11:31:26 ] 曲線が定義済なら、数値積分すればいいじゃない
746 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 11:37:36 ] あ、曲線は自由曲線(ドットというか。。。)です。
747 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 11:43:15 ] 50レスほど戻れば、似たような話をしているよ >>689 のリンク先のページは見た?
748 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 13:40:09 ] >>746 その離散点使って、数値積分的なことすれば? Σ(点から直線への距離 × 傾き) みたいなのを。
749 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 19:00:37 ] 曲率の分散とか?
750 名前:デフォルトの名無しさん mailto:sage [2007/03/28(水) 23:08:36 ] >>746 >あ、曲線は自由曲線(ドットというか。。。)です。 ドットを数えろ。
751 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 08:38:46 ] ラジャ>>750
752 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 08:57:37 ] 円と離散点群がどれだけズレているかなら、 案1、 (点と中心との距離-半径)^2 の平均 ÷ 半径^2 案2、 ( 点と中心との距離^2 - 半径^2 )^2 の平均 ÷ 半径^4 あたりだろう。
753 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 14:03:24 ] 「ズレている」がきちんと定義されんとなんとも。 基準円よりも広いところで円をなす点たちと 基準円上のある点にのみ集中する点たちで どっちが「円からズレている」かは一概には言えない。
754 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 14:22:10 ] そこで残差の二乗の総和ですよ
755 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 15:48:26 ] 何が「そこで」なの? 残差自乗みたいな簡単な尺度では「(概形が)円からズレてない」 みたいな位相的な構造はとても捕まえられないはずだけども。
756 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 16:07:10 ] >>753 それは、 ズレを最小にする円があるかどうかの問題になるんじゃないのか? 指定された円とのズレという量があればそれを最小にする半径、中心も求められるわけで・・・ それとも何か素晴らしいアイデアをお持ちで?
757 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 16:33:07 ] >>756 だから「ズレている」を定義してくれと言ってるんだけどな。 一点に集中してても「ズレてない」とするなら残差自乗で十分だし、 そうでないならより輪郭線抽出などの手法が要るかもしれない。
758 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 16:37:32 ] 欠点はあるが 簡単な定義は>>752 くらいしか無いだろう? もう少しややこしくするなら、点同士がどれだけ中心からの角度で分散しているかの数値を入れるかい?
759 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 16:44:25 ] なんとなく想像だけど、手書きの丸と円のずれ具合を定量化したいんじゃないのかな? だとすれば>750で充分だと思うのだけど。 #目的も判らずに数学的な意味を見出そうとしても虚しいばかりだ。
760 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 16:52:34 ] ドットを数えるってどうやるの?
761 名前:ラジアンの比較で躓いてます mailto:sage [2007/03/29(木) 16:57:43 ] 別スレで pc11.2ch.net/test/read.cgi/tech/1175129517/9 の質問をして、最終的にこちらに誘導されてきました。 質問の回答として、以下のコードを教えてもらいました。 v1 … p1→p2 のベクトル v2 … p2→p3 のベクトル struct point { double x, y; }; bool isJustLeft(point v1, piont v2) { double corssProd = v1.x * v2.y - v1.y * v2.x; //外積 double norm1 = v1.x * v1.x + v1.y * v1.y; // |v1|^2 double norm2 = v2.x * v2.x + v2.y * v2.y; // |v2|^2 if( corssProd < 0.0 ) return false; // 時計回りはダメ if( crossProd * crossProd == norm1 * norm2 ) return true; // 直角判定 return false; } でも、ベクトルの外積って通常3次元のベクトルを返しますよね。上記だと > double corssProd = v1.x * v2.y - v1.y * v2.x; //外積 とスカラー値を返しているのですが、今一つやっている意味が判りません。 yuki.to/math_cgi/prybbs.html?log=3&mode=res&no=36824 ぐぐったらこんな掲示板見つけたけど、回答者の答えがイマイチ判りません。 コードを通して、ベクトルを理解したいのですが、誰か教えてもらえませんか?
762 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 17:08:28 ] v1,v2の外積の結果は、その2つに直角な方向ですが、 v1,v2が平面上なのでZ成分のみとなります。 だから省略したのでしょう
763 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 17:24:43 ] 外積の定義って曖昧というか、人によって違うというか。 1つは、>>762 の言うように、3次元ベクトルの外積の考え方を使って、 (x1, y1, 0) × (x2, y2, 0) = (0, 0, x1 y2 - x2 y1) の z 成分のみを取ったもの。 もう1つは、n 次元のベクトルは、n - 1 本あれば、それらに垂直なベクトルが決まるので、 n - 1 本のベクトル → 1 本の n 次元ベクトルを求める演算を外積と呼ぶ。 こっちの流儀だち、2次元ベクトルの外積は1本→1本の演算になって、 「積」というとちょっと微妙。 まあ、x1 y2 - x2 y1 は、外積の値というか、 符号付面積、あるいは行列式よね。 3次元ベクトルの外積は、その絶対値が符号付面積になってるから、 その類推で、2次元ベクトル2本の貼る平行四辺形の符号付面積を外積と呼ぶのかも。
764 名前:ラジアンの比較で躓いてます mailto:sage [2007/03/29(木) 17:36:19 ] >762 なるほど・・・時計回りだとZ値が下方向 反時計回りだと上方向になる性質を利用して、 Z値だけで判断すればいいという事ですね!!
765 名前:ラジアンの比較で躓いてます mailto:sage [2007/03/29(木) 17:39:31 ] もうひとつ質問ですが、ここは何をやっているのでしょうか? double norm1 = v1.x * v1.x + v1.y * v1.y; // |v1|^2 double norm2 = v2.x * v2.x + v2.y * v2.y; // |v2|^2
766 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 17:47:02 ] >>765 え、えっと、変数名もnormだし、コメントもnormだし、normを計算しているんじゃないかなあ。
767 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 17:53:54 ] 直角であるかどうかは 内積x1*x2+y1*y2 が0になる事 (v1.x * v2.y - v1.y * v2.x)^2 -(v1.x * v1.x + v1.y * v1.y)*( v2.x * v2.x + v2.y * v2.y) を変形してくと・・・・ って内積計算した方が計算量少ないかもしれないが まあ、折角 外積計算したからって所じゃないのかな
768 名前:ラジアンの比較で躓いてます mailto:sage [2007/03/29(木) 18:03:57 ] >766 一瞬正規化?とか思っちゃいましたが、「ノルム」でしたか・・・orz
769 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 18:19:33 ] >「ノルム」 って日本語の数学では何だっけ?
770 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 18:27:37 ] 世の中には日本語の数学と英語の数学があるらしい。
771 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 18:37:01 ] 定まった和訳は無く、日本語をあててる本も特に知らないなあ。 参考までに、中国語では「范数」と書くそうな。
772 名前:デフォルトの名無しさん mailto:sage [2007/03/29(木) 18:41:31 ] >>769 ノルムはノルムじゃない? 数学用語としてじゃなくて、一般には基準とか模範って訳すけど。 ノルムに似たので(というか、絶対値の一般化)付値ってのがあるけど、 それは英語でも valuation。
773 名前:デフォルトの名無しさん mailto:sage [2007/03/30(金) 08:56:16 ] 則(のり)じゃなかったか? 片方を90度回転したベクトルで内積をとっても、時計回り判定はできる。 90度回転操作を (x, y) → (-y, x) とすると、外積とコメントされた式と同じになる。 好きな方で解釈するといい。
774 名前:デフォルトの名無しさん mailto:sage [2007/03/30(金) 09:20:27 ] 内積外積を使わなくてもこれは解ける 片方のベクトルが水平(y成分が0)になるように回転変換し、 もう一方のベクトルのx成分が0なら垂直で y成分の符号を見ればいい でも、それが内積と外積になっちゃうんだけどね
775 名前:デフォルトの名無しさん mailto:sage [2007/03/30(金) 11:56:04 ] プログラミングの学習を先にはじめて、その必要に迫られて その都度、数学の教養を身に着ける順序でも遅くなくねえ? 問題集をひたすら解くだけの抽象的な数学の本ばかり読んで いると、生きることの意味がわからなくなってくるよ。
776 名前:デフォルトの名無しさん mailto:sage [2007/03/30(金) 11:57:48 ] 既出でしたら、ごめんなさい 半径10センチの球表面の座標(XYZ)をファイルに出力したいと考えております 点の間隔は0.1センチぐらいでいいかな、と ファイルに落とす部分は、わかっているんですが 座標を算出するアルゴリズムが、さっぱりわからなくて お分かりになる方、御教授いただけると助かります
777 名前:デフォルトの名無しさん mailto:sage [2007/03/30(金) 12:20:47 ] >>755 それが許されればな。 >>756 3次元空間なら x^2 + y^2 + z^2 = 半径^2 を満す実数だったと。 ざっぱになら x と y で for ループ回しながら z の値を算出すすとか。 もしくは 三次元空間の極座標 x = 半径 * sin(th1) * sin(th2) y = 半径 * sin(th1) * cos(th2) z = 半径 * cos(th1) 解説: hp.vector.co.jp/authors/VA030421/fdd06.htm で角度(th1, th2)でループまわすことも考えられる。 角度で回すのなら、球面三角法 ja.wikipedia.org/wiki/%E7%90%83%E9%9D%A2%E4%B8%89%E8%A7%92%E6%B3%95 も見おくべし。
778 名前:776 mailto:sage [2007/03/30(金) 12:56:17 ] >>>777 ありがとうございます。できたっぽいです たすかりました
779 名前:デフォルトの名無しさん mailto:sage [2007/03/30(金) 20:41:06 ] そのような極座標だと、目の細かい場所と粗い場所ができないか できてもさしつかえないならいいけど、もしさしつかえあるなら ユニバーサルメルカトル図法みたいな雰囲気で局所座標系を とったりするとよさそうな気が
780 名前:デフォルトの名無しさん mailto:sage [2007/03/31(土) 01:53:29 ] 等間隔にするならジオデシックスフィア(日本語でなんて言うのか知らん)の頂点として出すとか
781 名前:デフォルトの名無しさん mailto:sage [2007/03/31(土) 02:39:25 ] まあ、やっぱり極付近ほど密になるけど、↓みたいなのはある。 www.cubido.at/Blog/tabid/176/EntryID/86/Default.aspx ジオデシックドームの頂点求めるんだたら↓これ? www2.tokai.or.jp/tomo-kun/readmeJ.html
782 名前:デフォルトの名無しさん mailto:sage [2007/03/31(土) 04:54:50 ] 正20面体に重心細分を繰り返して得られる多面体とかではどうかね
783 名前:デフォルトの名無しさん [2007/04/11(水) 11:07:50 ] 自由な曲線(ベジェ曲線か、折れ線の点列)を円弧のあつまりで近似したいんですが、 ヒントはないでしょうか?
784 名前:デフォルトの名無しさん mailto:sage [2007/04/11(水) 11:16:08 ] 円弧は半径が決まっているの? つまりフライスのようなので削るというような場合? 単純に円弧で近似したいのがどういう状況か判らないのだけど 曲線の場合は、微分が一致するように接続してゆけばいいのだけど 円弧の場合は2点と半径で求まってしまうので、 どうやっても接続点が尖がってしまう
785 名前:デフォルトの名無しさん mailto:sage [2007/04/12(木) 00:12:15 ] 円弧と線分ならどうにかそれっぽくなるかも
786 名前:デフォルトの名無しさん mailto:sage [2007/04/12(木) 08:40:07 ] 円弧の半径に制限無かったら、無限小の円弧になるだけだろ。
787 名前:デフォルトの名無しさん mailto:sage [2007/04/13(金) 04:39:53 ] 無限小の円弧の集合では曲線は近似できないのでは。
788 名前:784 mailto:sage [2007/04/13(金) 06:06:45 ] まてよ。 接続点で中心の方向が一致すればいいと解けば 接続点が尖らないように出来るか
789 名前:デフォルトの名無しさん mailto:sage [2007/04/13(金) 06:16:25 ] >>788 ) ( ) ( こういうこと?
790 名前:デフォルトの名無しさん mailto:sage [2007/04/13(金) 13:54:27 ] 円弧も極小の長さで繋いでゆけばどんな曲線でも表現出来るし、 直線も半径を限りなく大きな値にすれば可能っぽいね。 適当に曲線から3点抽出して、3点を通る円を求めればいいんじゃね? 必要精度に達していなければ間隔を短くし、足りてれば長くして情報量を落とせばいけそう。
791 名前:デフォルトの名無しさん mailto:sage [2007/04/13(金) 20:32:08 ] 半径無限大に飛ばせば曲率ゼロだしな。
792 名前:デフォルトの名無しさん mailto:sage [2007/04/14(土) 00:14:38 ] よくあるフォームの座標系を 0| ―+―――→x | | ↓ y を、 y ↑ | | ―+―――→x 0 | に変換する行列教えてください。
793 名前:デフォルトの名無しさん mailto:sage [2007/04/14(土) 00:26:24 ] 1, 0; 0, -1
794 名前:デフォルトの名無しさん mailto:age [2007/04/14(土) 15:36:47 ] >「network.standard-url.escape-utf8」を「false」にしてください。 >about:configで「network.standard-url.encode-utf8」を「true」にします。 上記の設定で、無事、日本語になりました。 気になるのは、IE7では、『"』⇒『"』でしたが、 forum.mozilla.gr.jp/?mode=new&no=0&X= '国際化' forum.mozilla.gr.jp/?mode=new&no=0&X=" 国際化" FireFox2では、『"』⇒『%22』になっていました、少々オシイです。 forum.mozilla.gr.jp/?mode=new&no=0&X= '国際化' forum.mozilla.gr.jp/?mode=new&no=0&X=%22 国際化%22 『%22』を『"』に戻す作業が残ってしまいます。 共通化としてOpera9の国際化URL設定も分かると良いと思います。
795 名前:デフォルトの名無しさん mailto:sage [2007/04/18(水) 10:03:30 ] 数学的要素が少ないプログラムの分野は何ですか? ゲームプログラムは数学的要素満載だと思うのですが。
796 名前:デフォルトの名無しさん mailto:sage [2007/04/18(水) 10:46:25 ] 事務web系
797 名前:デフォルトの名無しさん mailto:sage [2007/04/18(水) 13:57:03 ] >>795 どんな分野であっても、スレタイが読める程度の日本語力は必要。
798 名前:デフォルトの名無しさん mailto:sage [2007/04/18(水) 21:51:26 ] >>796 事務web系って何ですか?
799 名前:デフォルトの名無しさん mailto:sage [2007/04/18(水) 22:46:08 ] 全国の支社から出退勤のデータを収集して給与を計算するとか ネット通販の注文を受け付けて倉庫に発送を指示するとか
800 名前:デフォルトの名無しさん mailto:sage [2007/04/19(木) 02:44:55 ] そういうのって地味だから長く働けそうですね。
801 名前:デフォルトの名無しさん [2007/04/19(木) 02:48:30 ] 追記 出来るだけ長く働ける分野が良いんです
802 名前:デフォルトの名無しさん [2007/04/19(木) 11:29:46 ] 息子が大学に行く直前まで働ける職種でおk?
803 名前:デフォルトの名無しさん mailto:sage [2007/04/19(木) 11:38:45 ] 数学、算数はプログラムに必要か? pc11.2ch.net/test/read.cgi/tech/1171457185/ を汚した奴だろ? あちこち汚してゆくような奴が奴隷の待遇の上下を聞いたって嫌われるだけだろうに
804 名前:デフォルトの名無しさん mailto:sage [2007/04/19(木) 23:48:04 ] 就職先探すのとかは完全にすれ違い。帰れ。
805 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 06:19:39 ] >>802 あなたの息子を舐め舐めしますよ
806 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 09:01:30 ] これから数学の勉強始めてみようと思ってるんだが、プログラミングに役立つ 勉強方法が知りたい。大学受験レベルの数学問題をひたすら解くのがいいのか、 公式を理解しつつ大学レベルの数学を勉強するのがいいのか。 どんな風にすればいいか教えてください。。。。。
807 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 09:31:49 ] 大学レベルの数学もいろいろあって、いまのあなたの プログラミング・数学の能力と、役立てようとしている 方面によって勉強すべきものは変わる。 目的に近いところを読んでから、不足してそうな部分を 適宜補うってのが順当なごく普通の勉強の仕方。 どんなのがやりたいか言ってくれれば本などは紹介するよ。 因みに受験レベルの数学は単純計算すら覚束ないなら 仕方が無いけれど、そうでなければやる必要なしと思う。
808 名前:デフォルトの名無しさん mailto:sage [2007/04/21(土) 16:00:13 ] > プログラミングに役立つ勉強方法が知りたい。 これは例えるなら「スポーツに役立つ練習方法を知りたい」と言ってるようなもの。 スポーツの種目によって練習方法が違うように、プログラミングの分野によって役立つ 数学の分野も違う。 # プログラミングで飯を食っていきたいなら、数学より簿記でもやった方が潰しがきくような気がしないでもない。
809 名前:806 mailto:sage [2007/04/22(日) 13:35:06 ] >>807-808 レスサンクス。 プログラミングはCの基本的な文法を理解している程度で、数学に関しては 高校レベルもサパーリな状況です。 簿記の知識って業務系だとそんなに役に立つのか。。。。 それなら一応日商の簿記一級を持ってるんで、この知識を生かして業務系に 進んだほうがいいのかなと思ってるんだが、 「生涯現役でプログラマなんだぜ?」 な漏れとしては組込み系や制御系のほうがいいのかなと考えたり、、、 今現在はどの分野にいこうか迷ってるところです。 どうやらプログラミングに必要な数学は各分野ごとにまちまちで、漏れの やりたいこと自体もまだ定まってないので、とりあえず高校レベルの数学を 勉強する。そしてその時の勉強法としては大学受験を目指す感じのやり方 じゃなく、基本的な公式を理解する程度でよいってことでFA?
810 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 21:45:37 ] 人に分からないことは全く問題ないけど、 全部頼るのは良くない。 自分で決める、たぶんそれが一番大事だ。
811 名前:デフォルトの名無しさん mailto:sage [2007/04/22(日) 22:39:13 ] >人に分からないことは全く問題ないけど、 日本語でOK。
812 名前:デフォルトの名無しさん mailto:sage [2007/04/24(火) 00:45:08 ] 進路相談は完全に板違いなんでとっとと消えろな 毎年毎年現れる上に、人によって状況が違うし、いちいち答えてたらキリが無い
813 名前:全知全能者 [2007/04/25(水) 05:10:58 ] いつの世も物を言うのは「力」だ。 原始時代は「筋力」 江戸時代は「家柄」 そして現代は「金」 現代社会では金を持っている人間が強い。 革新的なパラダイムの転換が無い限りこの価値観は変わらない。
814 名前:デフォルトの名無しさん [2007/04/25(水) 15:49:14 ] そして、この先は『人柄』が力となる。
815 名前:デフォルトの名無しさん mailto:sage [2007/04/29(日) 00:22:43 ] ピクセルのフェード計算についての質問をさせてください。 実行したいのは以下の式です。 // dst[0 〜 255]: 転送先ピクセルの色要素) // src[0 〜 255]: 転送元ピクセルの色要素) // rate[0 〜 255]; srcの比率 ) // (すべてbyte型です) // フェード式 = (dst * (255 - rate) + src * rate) >> 8; ~= dst + (((src - dst) * rate) >> 8); (~= はニアリーイコールです) これを実現するために以下のような計算方法がよく使われています。 1) short tmp = (short)src - (short)dst; //< 符号付き2バイト数に拡張します 2) tmp = (short)(tmp * rate); //< 演算結果の下位2バイトを結果として受け取ります 3) tmp = (word)tmp >> 8; //< 無符号型としてシフト() 4) byte result = (byte)(dst + (byte)tmp); //< tmpの下位1バイトのみを足し込みます これだけ見ると変に複雑に見えますが、 実は計算にはmmxを使っていて4要素まとめて演算します。 そこで、1要素につき2バイトの範囲内で (src - dst){-255 〜 255} * rate{0 〜 255} の符号付き乗算をしないといけないため、このようなことになっています。
816 名前:815 mailto:sage [2007/04/29(日) 00:24:22 ] >>815 の続きです^^ 例えば、src=0, dst=255, rate=255の場合、 結果としては0が期待されますが、実際に計算してみると 1) tmp = -255 = 0xff01 2) tmp = (short)(0xff01 * 0xff) = (short)0xfff01ff = 0x01ff 3) tmp = 0x01 4) result = (byte)(0xff + 0x01) = 0x00 となり正しい結果が得られます。 また、src=200, dst=225, rate=200の場合は、 204程度が望まれますが、実際に計算してみると 1) tmp = -25 = 0xffe7 2) tmp = (short)(0xffe7 * 0xc8) = (short)0xc7ec78 = 0xec78 3) tmp = 0xec 4) result = (byte)(0xe1 + 0xec) = 0xcd = 205 とほぼ正しい結果が得られます。 上の式は有名なライブラリで使われている式でもあり、 正しいことはほとんど保証されているのですが、 これがなぜ正しいのか証明できる方はいませんか? 少なくとも自分には理解できないです。 文献でもいいです。よろしくお願いします。
817 名前:デフォルトの名無しさん mailto:sage [2007/04/29(日) 00:48:54 ] >>815 どうしてもなにも、定義そのままの計算式じゃん。 > 1) short tmp = (short)src - (short)dst; //< 符号付き2バイト数に拡張します (src-dst) は、-255〜+255 なので、short に納まる。 > 2) tmp = (short)(tmp * rate); //< 演算結果の下位2バイトを結果として受け取ります (src-dst)*rate は、-65280〜+65280 なので、2の補数で17ビット必要→shortだと1bit足りない→後述 > 3) tmp = (word)tmp >> 8; //< 無符号型としてシフト() ((src-dst)*rate)>>8 は -255〜+255なので、2の補数で9ビット必要だが、2)の時点で9ビット目の情報は落ちている > 4) byte result = (byte)(dst + (byte)tmp); ここで、8ビット整数で計算するのだから、上記3)の所で、結果は8ビットあれば十分。9ビット目の値は要らない。 8ビットで演算するのに「-1(0xff)を足す」のも「255(0xff)を足す」のも、まったく同じ結果になることに気付けばOK。 3)の結果で、-255 が出てきたのを、+1 として処理してもまったく問題ない。 → -255〜-1 を +1〜+255 で処理しても結果は同じ。
818 名前:デフォルトの名無しさん mailto:sage [2007/04/29(日) 14:31:47 ] >>817 おお! 8ビットまで精度を保証すればうまくいくってことね^^ どうもありがとう
819 名前:デフォルトの名無しさん [2007/04/29(日) 18:19:52 ] 数学の知識はそりゃあった方が良いと思うけど、 一番大事なのは物事を合理的に考える事が出来るか。
820 名前:デフォルトの名無しさん mailto:sage [2007/04/29(日) 19:08:45 ] 合理的に考えれば2chで質問するほど無駄なことは無い訳だが
821 名前:デフォルトの名無しさん [2007/04/29(日) 19:46:50 ] 自由な曲線(ベジェ曲線か、折れ線の点列)を円弧のあつまりで近似したいんですが、 ヒントはないでしょうか? と、質問した者です。 点列が1個の円や直線にフィットするかどうかは、最小二乗法などで、 解決できると思います。 したがって、どういう風なグループで円弧や直線にすると、さらに最小になるか、 という問題になるような気がするのですが、そういう問題には、どのような考え方で臨めばよいでしょうか。
822 名前:デフォルトの名無しさん mailto:sage [2007/04/29(日) 20:18:42 ] やりたい事が判らないから困ってしまうのだけど、 円は3点で決まるから、3点毎に円弧を描いても、近似と言い張れば近似になる。
823 名前:デフォルトの名無しさん mailto:sage [2007/04/29(日) 20:40:03 ] 4点あるときにどの3点を選んで円弧にするかっていう話?
824 名前:デフォルトの名無しさん mailto:sage [2007/04/30(月) 01:30:11 ] 円弧だけじゃなくて、適宜直線も使いたいってことかい?
825 名前:デフォルトの名無しさん [2007/05/02(水) 18:06:14 ] たとえば、N点(3000点とか)からなる折れ線の図形があったとして、人間は図をかけば、適度にこの部分は円弧だろうとか、直線だろうとか、あてはめることができます。 それを、精度をあたえることで、コンピュータに計算で円弧+直線に解かせられないでしょうかね。
826 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 18:27:41 ] 使う円弧の数に制限が無いのなら、>>822 の方法で指定点での誤差ゼロで描ける 使う円弧の数を減らしたいという要求があるなら 単純に端から3点でフィッティングして、次の点が誤差の範囲内ならと処理してもいいし 最小2乗円を求めては、誤差の範囲が収まるならとやってもいいとおもう ただし、誤差だけでは、つなぎ目がガクガクに見えるという事になる だから、それが嫌なら、点との誤差が幾ら以内で、接続が滑らかであるというような条件を追加しないといけない
827 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 19:42:29 ] >>825 用途を書いてくれればもう少し具体的なアドバイスが出てくると思われ
828 名前:デフォルトの名無しさん mailto:sage [2007/05/02(水) 20:19:07 ] >>825 滑らかじゃなくていいなら既に色々レスついてるからそれ参照。誤差ゼロ。 滑らかである必要があるなら、確かに精度(許容誤差)を与える必要はあるだろう。 滑らかって何とか言うならもっと勉強しなさい。
829 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 00:50:19 ] ペゾルドにかいてなかったっけ?
830 名前:デフォルトの名無しさん mailto:sage [2007/05/15(火) 23:20:02 ] ttp://www.emit.jp/prog/prog_div.html の高速除算なのですが、 どうしてこれで正しく計算できるのか分かる方いませんか? あと、割られる数が負数のときでも上手くいくような つまり X / D = Q (Qは整数) のときに -X / D = -Q となるような高速除算の方法を知っている方はいますか?
831 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 01:13:49 ] 830のリンク先はなーんか誤差が出そうなやり方だなー。 定数除算なら、誤差項を1ビット誤差以下に抑えればいいから、こういうことは出来るけど。 32bit同士の乗算がオーバーフローせずに使える場合。 X/3 = [X/3 + 2n/(3*2^32)] (∵ 2n/(3*2^32) < 1bit ) = [ (2^32 + 2)/3 * (n/2^32) ] = 1431655766 * n / 2^32 = 1431655766 * n >> 32
832 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 01:16:49 ] あ、途中でXがnになっちまった……。 nが負なら最後に1足してくんなまし。
833 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 07:36:56 ] >>830 Web上にある情報を、どれも正しいと思うな Q=trunc(X/D +0.5) と計算したい筈なのに m = 2*n-------------------1) R = (2^m - 1) / D ---------2) Q = (R * X + 2^n) >> m ------3) から>>m を2のベキに変更して Q = (R * X + 2^n)/2^m Rに代入して Q = ((2^m - 1) / D * X + 2^n)/2^m Q = (2^m - 1) /2^m * X/ D + 2^(n-m) ~~~~~~~~~~~~~~~~ ~~~~~~~ (2^m-1)/2^m は1ではない 2^(n-m) は 0.5 ではない これは単に使いたかった範囲で巧くいっただけだろ
834 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 11:48:36 ] >>831 ,832 ありがとうございます。 一応、プログラムを組んで実験してみたのですが、 違う結果しか得られませんでした。 自分の理解が足りていないのかもしれません。 チェック用プログラムをアップしますので、確認していただければ幸いです。 kissho.xii.jp/1/src/1jyou6388.lzh >>833 整数における割り算なので、やりたいのは四捨五入ではなく切り捨て、 つまりQ=trunc(X/D) です。 あと、使える値の範囲も>>830 のページ上に書いてありますよ。
835 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 16:28:10 ] >>834 831に書いた方法は、 R=(2^32 + F)/Dのとき、F=D-1では、多くのDで誤差が出る。 大事なのはRが割り切れることと、F/2^32が1bitより小さい正の値になること。 これが満たされない場合は、 R=(2^33+F)/Dとか、R=(2^34+T)/D-2^32なんかを使う必要がある。 (おまけに最後の例は最後に2^32分の補正が必要) 以上のようにR の決定がそんなに単純じゃないんだー。 だから定数除算って書いた。 っていうかハッカーのたのしみって本を買えばこういうことが書いてある。 興味あるならオススメ。
836 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 17:04:05 ] >>830 swox.com/~tege/divcnst-pldi94.pdf > Division by Invariant Integers using Multiplication > > 4 Unsigned division > 5 Signed division, quotient rounded towards 0 > 6 Signed division, quotient rounded towards -∞
837 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 18:06:56 ] ターゲットのチップにも寄るだろうけど、Intel系でって話なら普通に割り算命令使った方が速いんじゃね?
838 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 18:13:07 ] >>837 実測してみないとなんともだけど割り算の結果を遅延評価するといいかもね。
839 名前:デフォルトの名無しさん mailto:sage [2007/05/16(水) 23:59:10 ] >>835 そうなんですか^^ ハッカーの教科書は持っていたのですがこんな話題があるとは知りませんでした。 ちょっと研究してみようと思います。 >>836 そのページを見てみたのですが、正確にやるのは結構大変なんですね^^ よく使う定数の除算のみを最適化して あとはテーブルなりなんなりで処理することにしました。 >>837 pc11.2ch.net/test/read.cgi/tech/1168399966/99- ↑を見て欲しいのですが、x86のdiv命令は おそらくもっとも効率化がめざましい命令の一種です。 最新の石ならばそのままが一番速いと思うのですが、 昔のCPUを考慮するとなかなかそういうわけにもいきません。
840 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 00:08:18 ] >>839 この手の高速化は高級言語で記述してもコンパイラが糞なら無意味だし、そもそも可読性が落ちるので歓迎されない。 そうなるとアセンブラでの記述に限定されるわけだが、肝心のターゲットが書かれていないので議論するだけ無駄。 というかそもそもこのスレ向きの話題じゃない。
841 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 00:55:37 ] なんでいまさら昔のPCのことを考慮する必要があるんだ
842 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 01:26:26 ] >>840 その理屈で行くとハッカーのたのしみや>>836 の内容は まったく無意味ってことになりますね。 もちろんそんなことはなくて、 ビット演算やコンピュータ用数学(?)にはある程度の普遍性があります。 だから、ターゲットが明確に決まっていなくてもある程度は意味はあります。 (一応、特定アーキテクチャ専用の話題は避けたつもりなのですが、 div命令のレイテンシの話題はたしかにスレ違いですね^^) >>841 ここでいう「昔のCPU」とは、Pentium4やAthlonXPクラスの (多分)今一番普及しているCPUのことです。 さすがに考慮しないわけにはいかないです^^
843 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 06:19:35 ] >>842 アセンブラ系スレなら有意義なんだろうが、それ以外の場所じゃ完全に無意味。 >ビット演算やコンピュータ用数学(?)にはある程度の普遍性があります。 これもない。現にシフト命令が異様に遅いコアが存在する。 5年10年前なら確かにその言い分は通用したが、複雑化したx86系CPUで 除算命令のような数クロックを稼ごうという時にターゲットも指定しないなんてありえないだろ?
844 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 07:11:01 ] >>843 > アセンブラ系スレなら有意義なんだろうが、それ以外の場所じゃ完全に無意味。 んなことない。定数除算→乗算の最適化をやってくれない環境はあるし、自分 が仕事で使った RISC とかは加減シフトが実効 1 サイクル、乗算が 2 サイク ルに対して除算命令は 33 サイクル(中で何やってるかわかるな。しかも除算 命令実行中に割り込みが入ると割り込み終了後に再度除算命令を実行し直す)。 > 現にシフト命令が異様に遅いコアが存在する。 後学のために教えてくれ。
845 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 07:46:16 ] >>844 だから、それはアセンブラ系のスレでやってくれということでしょ
846 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 08:04:05 ] 負数での符号については423から、同じような事一度やってるからな。 速度だけの問題なら他でやって欲しい所。
847 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 09:09:48 ] >>843 自分がもともと質問していたことは、除算→乗算+シフトの変換方法です。 (このスレのおかげで定数除算の最適化という分野があることを知りましたし、 特定の除算の最適化もできそうな感じです。 その点は本当に感謝しています) 確かに石によって演算速度の違いがあることは事実なのですが、 そういったこともふまえて、対象となるCPUをつらつら挙げて CPU別の最適化方法をここで聞いた方がよかったのですか? もちろん、自分的には大歓迎なのですが^^ >>846 収穫もあったことですし、自分はそろそろ去りたいと思います^^
848 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 10:32:12 ] >CPU別の最適化方法をここで聞いた方がよかったのですか? 最適化スレもあればアセンブラスレもあるのに?
849 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 10:51:11 ] 特定のMPUの話じゃなければ充分メタな話出来るだろ…。 そういう命令セットの定義とかも数学の範疇じゃないのか?
850 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 11:24:26 ] >>848 >CPU別の最適化方法をここで聞いた方がよかったのですか? は>>843 の >除算命令のような数クロックを稼ごうという時にターゲットも指定しないなんてありえないだろ? に対するレスです。 当然、自分の考えは>>848 さんと同じで「それはスレ違いでしょ?」です。 >>849 命令セットの定義が数学の範疇だというのははじめて聞きました。 そうなのかもしれないのですが、 自分は特定アーキテクチャの最適化の話はここでするべきでは無いと考えたのです。
851 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 11:45:33 ] 何がやりたいから判らなくなってるが、ようするに、 R>0 Xは正負のint 範囲で Q=trunc(X/D) を Q= (int)(((long)X*(long)R + k) >> (long)m ) で計算したいが 適切な R と m を求むって事だろ?
852 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 11:45:45 ] 使える命令とその計算コストを厳密に定義した上で最適な計算を 求める問題ってのは、特に並列計算の分野で見ることがある研究だね。 実際のCPUくらいのコストモデルでやるのはかなり大変だと思うけれど
853 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 11:46:45 ] ウザ…スレ違いだって言われてんだから素直に移動しろや。 少なくともここはアセンブラの話題振るスレじゃねえことくらいは理解してんだろ?
854 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 21:17:53 ] 離散的数の演算は数学だ。 ただ、その実装手段が大抵の場合アセンブラしかないだけ。 CPUの除算が遅いとか言い出したヤツが最初にスレ違い。
855 名前:デフォルトの名無しさん mailto:sage [2007/05/17(木) 23:01:21 ] 車のスピード違反みたいだなw 除算は多倍長文字列でやった事あるけど、 別と比べて極端に難しかった。
856 名前:デフォルトの名無しさん mailto:sage [2007/05/18(金) 01:50:28 ] 結局実装の話になると思うけどね。 ここがム板である限り。
857 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 05:32:05 ] >>855 除算は四則のうち、唯一「トライ&エラー」的要素が必要になってくるからな。 「除法の定理」という、それほど単純ではない性質に則った結果にしなければ いけないという縛りがその原因だろう。
858 名前:デフォルトの名無しさん mailto:sage [2007/05/19(土) 15:26:24 ] どっちかっつーと数学板向きの話題だな
859 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 08:21:46 ] 除算を自作でやってみると、0除算がなぜダメなのかが分かる。
860 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 08:28:33 ] ニュートン法で除算を解く手順はどうなりますか?
861 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 08:37:57 ] www.tensyo.com/urame/prog/ALGO.HTM > a/b >ニュートン法でcを更新すれば良い結果が得られます > ニュートン法x-f(x)/f'(x)を適用するのに > c*b-2^n=0 f(x)=b*x-2^n f'(x)=b とやったのではダメです > b-2^n/c=0 f(x)=b-2^n/x f'(x)= 2^n/x^2 > x:=x-b*x^2/2^n+x=(x+x-b*x^2/2^n)=x+(x*(1-b*x/2^n)); > c:=c+(c*(2^n-b*c))/2^n と更新します
862 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 08:44:08 ] >>859 除算をわざわざ自作しなくても簡単に判ることですが? それとも、r = p / d を r * d = p に変形することもできないんですか?
863 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 09:10:47 ] >>862 それだと 0 / 0 が定義出来てしまいますが?
864 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 10:23:45 ] >>863 あんた馬鹿? dが0のときにpが0になるrは、一意には決まらないんですが。 つまり、0 / 0は数学的には解があるってこと。1 / 0とは事情が違う。
865 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 11:06:44 ] >858 全くだなw
866 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 13:17:07 ] 北極の氷が融けて水面が上がるという話があるが、それがありえないのは アルキメデスの原理を学んでいれば理解出来る筈だ。 実際にグラスに氷を入れて、水をすりきれ一杯にして、水がこぼれない実験をするまでは判らないのだろう 0で割るとどうなるかも、そりゃ数式を弄くれば予想は出来るが それと、実際に計算させてみての実感とは違うものなのだろう
867 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 14:43:02 ] 海に浮かんでる氷が溶けても海面上がらないけど、 地面の上に乗ってる氷が溶けると海面上がるよな。 北極って、大陸ではないけど、 小さな島状の部分とか浅瀬もなく、完全に氷が海に浮いてる状態?
868 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 14:50:03 ] 実際に計算することと、計算過程をプログラミングすることは、違う。 >>867 どこまでを北極というかによって変わるが、基本的に北極海には問題になるほどの陸地はない。 勿論北米北欧ロシアの海岸線を含むわけだが、面積比で言えば問題にならない。
869 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 15:19:40 ] 問題なのはグリーンランドだよ 映画でアルゴアが言ってた >>866 グラスに氷とかのすぐできるような実験もしないで 「本に書いてあるからそうなんです」って胸を張るような 中世の暗黒時代さながらの学問態度は取りたくないものだな 馬の歯は何本あるんだっけ
870 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 15:47:10 ] www2.odn.ne.jp/seimei/essay271.htm でも、氷河期が終わるんなら、氷床も無くなって当然では?
871 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 16:23:24 ] >>866 >アルキメデスの原理を学んでいれば うみのみずはしょっぱいです。でも、ほっきょくのこおりはしょっぱくないです。
872 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 16:41:13 ] 北極の氷でも海の水が凍ったものは 塩を含むだろう。 その上に降り積もった部分は違うだろうけど
873 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 16:43:46 ] >>872 面白い考え方だな
874 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:09:45 ] www.littlewaves.info/marine/wq_sgravity.htm 塩分濃度が35ppt で 温度15℃の時の比重が1.0263 つまり、塩が溶けると 1.035/1.0263 = 1.0085倍に膨張するといいたいわけ?
875 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:15:29 ] >>874 つ[浮力]
876 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:15:36 ] >>872 >海の水が凍ったものは 塩を含む もしそうなら、半導体価格は今より何倍も高いはずだ。
877 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:16:37 ] 北極の氷はプログラムと関係あんのか?
878 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:17:15 ] 数学とは関係があるかもしれない。
879 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:18:24 ] >>878 そんなことは聞いてねぇよ、北極の氷はプログラムと関係あんのかって聞いてんだよ
880 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:20:10 ] >>879 あると思うの? んなことマジで聞いてるの?
881 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:23:48 ] >>880 雑談でスレ埋めるな、って嫌味も通じない馬鹿か…
882 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:31:33 ] そんな当たり前のことを承知の上でおちょくっていることにも気付けない?
883 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 17:32:49 ] それもまた雑談なのだ。 同じ雑談なら、面白がる方がいいだろ さて blog.livedoor.jp/yuge15978/archives/8126608.html のように、真水が凍った氷が溶けて水面が上がのが正しそうに見えるけど 氷が溶けると、塩水の濃度は下がるのだから、濃度が下がる事により容積は下がるので その効果が打ち消す可能性もあり、やっぱり実験しないと判らない
884 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 18:35:54 ] >>876 海氷の塩分濃度は10〜12gだそうだ。 海水の1/3程度だとはいえ、まだ塩分はそれなりにあるみたい
885 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 18:42:39 ] >>871 たまに、海水は真水より比重が大きいのだから、 水銀の上で氷が溶ければ水面が上がるように、水面が上がるという人がいる。 でも、これは海水の主成分が水である事を忘れている。 氷が溶ければ真水ではなく、塩水になり、塩水は薄まる。 塩分濃度と比重は変化が小さい時には比例するので、 トータル水面は変わらないのさ。 極端に言えば、海水中の塩分と、水を別けて計算すればいい。
886 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 20:59:20 ] ええと、 氷の比重0.917 水の比重1.000 海水の比重1.024 海水上に出る氷の容積は、1-0.917/1.024 = 0.104 氷が水になると1-1/1.024 = 0.023 一旦は水面は氷*2.3%だけ持ち上がるよね? その後塩水と混じると水面が下がるわけ?
887 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 22:48:44 ] 1
888 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 22:52:39 ] 2
889 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 22:54:08 ] 3
890 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 22:56:04 ] 4
891 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 22:59:28 ] 5
892 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 23:06:04 ] 6
893 名前:デフォルトの名無しさん mailto:sage [2007/05/21(月) 23:16:00 ] >>876 ヘンリーラウールの法則によると凍った海水には塩が含まれる
894 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 00:05:39 ] 7
895 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 00:08:06 ] 8
896 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 00:17:38 ] 9
897 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 00:35:25 ] 10
898 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 00:57:15 ] 11
899 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 02:43:23 ] 埋めようとしてるのは はずかしいボケをしたお友達かな?
900 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 08:17:30 ] スレ違いよりかはマシなんじゃないの
901 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 08:18:11 ] 痲疹よりは感染力低いな
902 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 20:26:08 ] __ /\ / / \ \ / /______ _____ ___ ___ ___ .\// _______/ /__ __/ [][] _| |_| |__ _| |_ /\ /__/ ______ / / | _ | |_ レ'~ ̄| \ \ / / | |___  ̄| | / / / /| | .\/ / / ̄/ / ̄/ / \__| | |  ̄ /_ / | |_ / ̄ ̄  ̄  ̄  ̄/ |_| |__| \/ /\ ̄/ / ̄/ / ̄/ / ̄ / / /  ̄  ̄ ̄  ̄/ \/  ̄ ̄ ̄ ̄ ̄/ / ̄ 2007 Summer @ Shou-nan / ̄ / www.2ch.net/sea/  ̄ ̄
903 名前:デフォルトの名無しさん [2007/06/04(月) 19:59:53 ] このスレ vol3 は必要ですか?
904 名前:デフォルトの名無しさん mailto:sage [2007/06/04(月) 21:16:03 ] 次スレの心配は950超えてからでいいよ
905 名前:デフォルトの名無しさん [2007/06/07(木) 14:35:14 ] 去年からはじまった totoBIGというクジがあります。 これは 引分、勝ち負け を0,1,2 の3値で表現して、14試合分を ランダム発券するというものです 売り上げの40%が一等原資、10%を2等以下で別けます。 300円でキャリーが無ければ上限3億円 キャリーがあれば6億円が1等賞金の上限です でいつ買えば得なのか、還元率を求めたいと思いました。 2等以下はまず平均に出るとして 300円中 30円 とし、 1等原資は 売り上げX口として300*X*0.4+CY (CYはキャリー金額) 1等が1口以上出る確率は(1-(1-1/3^14)^X なので 30+(300*X*0.4 +CY)*(1-(1-1/3^14)^X)/X と求まります。 が、上限が6億なので、155円以上の結果は正しくないと思えます。 どういうプログラムを作ればいいでしょう?
906 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 15:14:24 ] 980超えてからでOK
907 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 15:56:57 ] >>905 P = 1/3^14 として X 中 1個が出る確率* 当選金 X 中 2個が出る確率* 当選金 X 中 3個が出る確率* 当選金 を2項分布で確率を求めて累積したらいいんじゃないの? もしかして、nCr とかオーバーフローするのかな? ならポアソン分布で近似すればいいって、これも オーバーフローするか・・・・困ったね
908 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 16:06:19 ] 電卓で計算させたら、 やっぱりポアソン分布の方がオーバフローし易いみたいだな。 n個中k個の確率は2項分布なら n!/(k! * (n-k)!)*p^k*(1-p)^(n-k) で、階乗をそのまま計算したらオーバフローするから kの大きい所まで計算する必要はないから、 for 文で計算すればオーバーフローしないんじゃないかな と無責任に言ってみる
909 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 17:26:18 ] >>905 いつ買っても損をする。 なぜなら賭博とはそういうふうに出来ているから。 totoがダメだったのは、賞金頭割りだから順当な結果の回は1等数千円とかザラ、荒れるとビックリするほど当らない。 BIGはどうなるかわからんけど、totoで客離れちゃったからキャリー期待するのは難しいんじゃないかなぁ。 計算すんのは楽しいけどねw
910 名前:905 mailto:sage [2007/06/07(木) 18:38:35 ] >>908 ありがとう。その式で計算させました。 JavaScriptですが function combination(n, k) { var i,c=1; for(i=1;i<=k;i++){ c=c*(n+1-i)/i;} return c; } function P(n,k) { var p0=1.0/Math.pow(3, 14); if(k==0) return Math.pow( 1-p0 ,n ); return combination(n, k) * Math.pow(p0,k) * Math.pow( 1-p0 ,n-k ); } function kangen(CY , X) { var i; var gensi=X*300*0.4+CY; var umax=6E8; if(CY==0) umax=3E8;//キャリーが無い時は上限3億円 var sum=0; for(i=1;i<20;i++) { //iが1当の数 var a=Math.min(gensi/i,umax); //1等の配当は原資を当選数で割った金と上限の小さい方 p=P(X,i); sum += i*a*p;//当選金総額x確率を掛算 if(p<1E-6)break;//計算誤差が6桁以下になれば終わり } return 30+sum/X; }
911 名前:905 mailto:sage [2007/06/07(木) 18:43:51 ] 計算結果は、 キャリー 100万口 200万口 300万口 400万口 500万口 600万口 700万口 800万口 900万口 0億円 53円 71円 79円 82円 86円 86円 88円 89円 89円 1億円 72円 88円 101円 112円 113円 115円 117円 120円 123円 2億円 90円 105円 117円 119円 119円 121円 123円 126円 127円 3億円 109円 122円 126円 124円 125円 126円 129円 130円 130円 4億円 128円 134円 130円 129円 130円 132円 134円 133円 133円 5億円 144円 137円 135円 134円 136円 138円 136円 136円 136円 6億円 145円 140円 139円 140円 142円 140円 139円 139円 139円 7億円 147円 144円 143円 145円 143円 142円 142円 142円 143円 8億円 149円 147円 148円 147円 145円 144円 144円 145円 144円 9億円 151円 150円 150円 148円 147円 146円 147円 147円 146円 10億円 153円 153円 151円 149円 149円 149円 149円 148円 147円 11億円 155円 153円 152円 151円 150円 151円 150円 149円 148円 12億円 155円 154円 152円 152円 152円 151円 150円 150円 150円 キャリーが4億でも還元率は50%の 150円ありません。 そして、いくらキャリーが増えてもやっぱり155円から還元率は増えません。 9億くらいキャリーが溜まって、やっと50%の還元率です。 計算があってるとすればヒドイ設計のクジです。
912 名前:905 mailto:sage [2007/06/07(木) 18:50:06 ] あ、全体は、 htmlファイルに <HTML><HEAD> </HEAD> <BODY> /////////////// この間に >>910 のコードを入れる。/////////// var x,y; document.write('<TABLE BORDER><TR><TD>キャリー'); for(x=100;x<1000;x+=100)document.write('<TD>'+x+'万口' ); for(y=0;y<20;y=y+1) { document.write('<TR>'); document.write('<TD ALIGN=RIGHT>'+y+'億円</TD>'); for(x=100;x<1000;x=x+100){ document.write('<TD ALIGN=RIGHT>'+Math.round(kangen(y*1E8,x*1E4))+'</TD>'); } document.write('</TR>'); } </SCRIPT> </BODY> </HTML>
913 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 18:50:42 ] >>911 宝くじって大体そんなもんだよ。 もっとひどいこともある。 競馬は還元率75%らしいけどね。
914 名前:905 mailto:sage [2007/06/07(木) 19:02:03 ] ヒドイと思ったのは、キャリーが少ない時に還元率が異常に悪い事です。 宝くじやロトよりも悪いです。 これでは、キャリーが8億超えないと買う気になれず、 だから売れないのでしょう。 14試合ではなく13試合にしておけば、1等の平均賞金は2億程度になりますが 5億キャリーすれば還元率が100%を越える事になり、もっと面白いクジになったでしょうね。
915 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 20:30:17 ] >>914 そんな設定のくじは売り手が拒否する
916 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 20:47:34 ] 還元率なんて50%くらいが当たり前なんじゃ。 微塵でも還元率が100%超えちゃう可能性があるものはギャンブルとしてはちょっとどうかと。
917 名前:905 mailto:sage [2007/06/07(木) 21:08:52 ] >>916 還元率が100%超えてる間は、当然みんなブッコムでしょ? だから、心配は要らない。 というか売れてみんなハッピーだと思うけどな 13試合にすると平均は1億9千万だけど、この効果で売り上げが上がるだろうから 1等6億は逆に出易かったろう。 14試合にしたせいで、>>911 のように全然面白くないクジになってしまったかと だってキャリーが11億無いと、買うのは馬鹿ってクジだもの。
918 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 21:16:44 ] 作る側が馬鹿を釣るという意図しかもってないってのがよく分かってよかったじゃん
919 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 21:21:15 ] くじの価格設定には理論付けが一応あるけど、 そこでは買い手が馬鹿であることを仮定するからねえ。
920 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 21:28:57 ] キャリー4〜5億から、サマージャンボあたりと並ぶんじゃない? そもそもマジでもうけたい人は宝くじなんてしないさ。
921 名前:905 mailto:sage [2007/06/07(木) 21:37:32 ] まあ確かにそうだな。 馬鹿を釣りたいって事なんだろけど、 馬鹿でも欲は持ってるから、還元率が宝くじの45%より低いと買わないだろう。 回せる財布は限られてるからね。 で、買われないからキャリーが溜まらないの悪循環。 だから去年末からはじめて、1等がまだ2回しか出ていない惨状。 せめて、完全ランダムじゃなく、全部の組み合わせ 3^14 をシャッフルして 発行する方法にしておけば 480万口に1つは確実に1等が出るから ずっと早くリミットの155円に達するのに、馬鹿だよね。
922 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 21:53:46 ] で、あんたはどうしたいの。文句言いたいだけだったらチラシの裏にでも書いてね。 具体的になんか変えたいならこんなとこに書いてないで適切なところに行ってね。
923 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 22:18:49 ] 自分の能力を関与する余地の無いギャンブルは、基本的に損するだけなのよ。 まず、胴元が儲けを確保してから残りをどう分配するかっていう事を考えてる訳だから。 計算とかするまでもなく、ね。 BIGだろうがジャンボだろうが確率なんてあって無きがごとしなので、どっちが有利とかないな。 一枚も買わなければ確率0だから、とにかく一口買って、リターンがデカイ方に張るのが賢いやり方。 ジャンボを10枚セットで買う奴とかはどうかしてると思う。 もっとも、一口買う時点でノータリンの貧乏人と言われればそれまでだが。
924 名前:905 mailto:sage [2007/06/07(木) 22:37:02 ] まあ、そりゃ既に1億くらい資産持ってるなら別だろうけど 資産200万以下で、貯蓄中なら、収入の2%程度までを 還元率が悪くても 億くらいのリターンのある宝くじに入れるのは悪くないと思うんだ。 コツコツ貯めるだけだと老後の資金でせいっぱい、生きてるだけでせいっぱいだもんね。 でも、そういう目的だと、宝くじの3等とか4等っていらないんだよね。 トトBIGは1等に40%集中だから、いいかと思ったけど、やっぱりダメだね
925 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 22:42:10 ] totoBIGの売り上げが落ちた理由は、還元率どうこうじゃなくて、 14試合中引き分けが5試合以上とか、強いチームが負けまくってるとか、 つまりそういう、「見た瞬間にはずれがわかるくじ」が氾濫しまくってることが原因だと思う。
926 名前:905 mailto:sage [2007/06/07(木) 22:47:07 ] そこらへんは、ランダムに発券されてるのを信じるなら問題ないと思うのだけど まあ、最近は役所仕事は信じられないからアレだけど それより >>911 の結果を見てしまうと キャリーが9億以下の時に買う気になれない方が大きいと思うのだが? 300円で5円くらいは損しても許せるが、それ以上は俺は許せんのだけど
927 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 22:56:57 ] 本当に儲けたい人は宝くじなんて買わない。 株でも貯蓄でもいいけど、還元率が100%を超える金融商品なんてそれこそたくさんある。 じゃあ何でわざわざ宝くじを買うかっていうと、 やっぱり一時であっても夢を見れるからだと思うんだよね。 「もし3億当たったら何買おう?」とか考えるだけでも楽しいしwww ただ、totoBIGの場合はそれが難しいみたいだね。 そもそも1/3の確率で引き分けが出るなら14試合中4試合が引き分けになるけど、 その時点でほとんどはずれだって分かる。
928 名前:905 mailto:sage [2007/06/07(木) 23:10:56 ] >>927 それは金持ってるから言えるんだよ。 俺はこれから貯めるわけだからさ。 でもさ、株も確実に儲かるわけじゃないでしょ? というか小金で株を景気の良い今買って景気が悪くなって金必要になって売ったら損するわけだしさ、 貯金は、サトウキビ燃料のせいで物価上がってインフレになりそうな今は目減りするだけのようだし といって、土地は買えるだけ金ないしで、 まあ、ほんと、勉強でもして自分に投資でもするしかないけど 投資しても使い捨てられるだけのような感じだし。
929 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 23:44:12 ] スレ違いに気づけ馬鹿
930 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 01:05:59 ] >>928 いや、貯める目的ならなら余計に宝くじはやめとけ。 貯蓄なら確実だし、株だって還元率50%は無いから安心しろw
931 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 03:02:59 ] この外基地はこのスレで何がしたいの 熊が人間に問いかけている
932 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 03:17:55 ] 新しいタイプの荒しだなw プログラムが当たり前に書けるレベルの知能があるなら、完全ランダムの賭博はしないだろ。 そのへんが全く理解出来てない時点で905の程度が知れる。
933 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 12:49:48 ] >>911 それで騙されて買う馬鹿がいるんだから 胴元にしてみればすばらしい設計ではないか
934 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 09:04:43 ] いくつかの数値を32段階に量子化して表現するときって (最大値-最小値)/(32-1)で32段階になると思うのですが、 これ、あってますか・・・?
935 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 09:17:25 ] あってるかといわれても、そういう定義を選ぶかどうかの問題では?
936 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 09:22:46 ] 少なくとも31で割るのは間違ってるとは言える
937 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 09:37:51 ] 0と31を含めるのなら、それで32段階では?
938 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 14:42:47 ] 32で割ってから1足す方が良いですね
939 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 15:28:54 ] ええと 32で割るというのは、何を割るのでしょうか? 入力をXとして trunc( (X-最小値) / (最大値-最小値)* (32-1)) とやるか round( (X-最小値) / (最大値-最小値)* 32 ) とやるか という話?
940 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 15:36:42 ] 量子化後の値域が [0 .. 31] なのか [1 .. 32] なのか [0 .. 32] なのか
941 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 17:15:56 ] X[0.0 〜 2.0]の値を取る小数点数をY[0 .. 31]の整数型に量子化することを考える。 普通に考えると、こうなる。 (1) Y = trunc(X * 32 / 2.0) (X が 2.0 を含まない場合) (2) Z = X * 31 / 2.0, Y = trunc(Z) (X が 2.0 を含む場合) (3) Z = X * 31 / 2.0, Y = trunc(Z + 0.5) ((2)だとXがきっかり2.0のときしかYが31にならないので少し改良) X が 2.0 を含まない場合は全く問題ない。 しかしそうで無い場合は、(3)を使っても 0.0 <= Z < 0.5 → Y = 0 0.5 <= Z < 1.5 → Y = 1 30.5 <= Z <= 31.0 → Y = 31 (Zの最大値は31のため) つまりY=0, 31の場合だけ、とれるZの範囲が半分になってしまう。 この場合の量子化を正確に行うのは少し難しい。 改良案として、 Z = X * (32 - delta) / 2.0 (deltaは適度に小さい数。Xが整数値ならdelta = 1) Y = trunc(Z) としてYを計算する方法がある。 つまり、0.0 <= X <= 2.0 の値を 0.0 <= Z <= 31.99999... に写像してしまえばいい。 もう一つは、X = 2.0 や Y = 32 の値だけを特別扱いする。 つまり、 Y = trunc(X * 32 / 2.0) if (Y == 32) Y = 31 (Y -= (Y >> 5)) としてしまう方法もある。
942 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 17:57:43 ] 実数の定義域が [0, 32) なんだから 量子化後は [0, 31] でいいよ
943 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 18:23:44 ] > (X が 2.0 を含まない場合) それ[0.0 〜 2.0]と書かない
944 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 01:06:42 ] X が 2.0 を含まない場合は問題ないが、[0.0 〜 2.0] の場合は問題がある。 って言ってるんじゃないの。
945 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 02:46:10 ] どうみても>941が表記わかってないだけだろ。
946 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 20:14:41 ] 画面の前のわからない僕ちゃんへ、ということでとりあえずWikipediaでいいかな ja.wikipedia.org/wiki/%E5%8C%BA%E9%96%93_%28%E6%95%B0%E5%AD%A6%29
947 名前:デフォルトの名無しさん [2007/08/08(水) 07:42:25 ] 保守
948 名前:デフォルトの名無しさん [2007/08/12(日) 03:44:24 ] 板違いならすいません。 どうしてもわからないので質問したいのですが DirectXで3Dのゲームを組んでるのですが、ある点からポリゴン面までの 最短距離をはかりたいのですが、数学的知識があまりなくうまくいきません なんとか距離をはかる方法はないでしょうか? ポリゴン面はとりあえず3点で構成されているただの一枚のポリゴンです。
949 名前:デフォルトの名無しさん mailto:sage [2007/08/12(日) 07:01:48 ] >948 ある点=点P、ポリゴン面=僊BCとする 次の3通りの可能性がある 1.面上の何処かが一番近い >面の法線ベクトルで点Pを通る直線がポリゴンと交わる時、交わる点が一番近い 2.3辺の線上の何処かが一番近い >1を満たさず、各辺と点Pからなる三角形の内角が90度を越えない場合、点Pと該当する辺に垂直に交わる点が一番近い 3.3頂点の何処かが一番近い >1と2を満たさない場合、3頂点のうち一番距離が近い頂点が一番近い
950 名前:デフォルトの名無しさん mailto:sage [2007/08/12(日) 07:12:19 ] |(PA×PB)・PC| / |AC・BC| とかのほうがかえって早いとかは?
951 名前:デフォルトの名無しさん mailto:sage [2007/08/12(日) 19:14:06 ] 丁寧なレスありがとうございます。 両方試させて頂きます。 ただ、今のところ面の法線をだして、面上の交点をだそうと試みてるのですが、 なかなか上手くいきません・・ とにかくもう少しがんばってみます
952 名前:デフォルトの名無しさん mailto:sage [2007/08/13(月) 05:37:18 ] なんとか上手いこといきました、ありがとうございました。
953 名前:デフォルトの名無しさん [2007/09/11(火) 11:29:54 ] 保守上げ。 970くらいで次スレたてるよていです
954 名前:デフォルトの名無しさん [2007/09/12(水) 11:37:52 ] 最近、離散数学のさわりをやって感動した者です。 商業系の高校行って、大学進学したもんで普通科高校でやる数学I-III、A-Cを まったくやってないんだけど、中学3年の証明でつまずいてたヤツが、新課程の 数学I-III、A-Cを独学するに辺り、最適な参考書、数学攻略本は何があるでしょうか。
955 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 11:55:15 ] 学校の図書館で、読めそうなのを週に何冊か借りては読んだらいいと思うよ 面白そうなの1冊、単なる小説1冊、ちょっと難しそうなの1冊として 毎週続くようにね。
956 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 01:03:06 ] 読み物なら数学ガールなんて面白いぞ。
957 名前:デフォルトの名無しさん mailto:sage [2007/09/13(木) 01:27:06 ] >>956 俺もちょうど今日会社で数セミの紹介記事見て面白そうって思ったところだ アマゾンで買ってみるか
958 名前:デフォルトの名無しさん mailto:sage [2007/09/29(土) 05:14:16 ] なにかと思って調べてみたらPerlの糞本だしてた結城浩か・・・イラネ
959 名前:デフォルトの名無しさん [2007/10/10(水) 18:28:53 ] 質問です。 離散データを微分したいのですが、 C/C++系で微分ライブラリって何がありますか? オイラーみたいな?
960 名前:959 mailto:sage [2007/10/10(水) 18:35:40 ] 良く知らないのですが、 単純差分が1次、Eulerが2次、Taylorが3次、Runge-Kutteが4次、であってまつか?
961 名前:デフォルトの名無しさん mailto:sage [2007/10/10(水) 18:58:15 ] そんな詳しくもないけど、ルンゲクッタ法とかオイラー法とかって 数値微分じゃなくて、微分方程式の解、要するに求積の方のアルゴリズムじゃない? 微分の方は、離散点のデータしかないとなると、 差分近似するか、適当な関数で補完して微分するかくらいしか思いつかない。
962 名前:デフォルトの名無しさん mailto:sage [2007/10/10(水) 22:05:41 ] これか ja.wikipedia.org/wiki/PID%E5%88%B6%E5%BE%A1
963 名前:959 mailto:sage [2007/10/11(木) 08:36:05 ] 全然わかんないよ(つД`。)ウワアン
964 名前:デフォルトの名無しさん mailto:sage [2007/10/11(木) 09:54:37 ] 離散データから微分なんて出来る筈が無いだろ。 fs/4以上含まないとしても、荒い近似しか出来ない。
965 名前:デフォルトの名無しさん mailto:sage [2007/10/11(木) 14:04:49 ] 連続の場合に微分、離散の場合は差分って言うんじゃないのか。 959は近似をしたいのか、差分を出したいのか、なんなのか。
966 名前:959 mailto:sage [2007/10/11(木) 14:25:08 ] 実は2階微分というのが分からなくてオイラーかな?とか色々考えたんですが、 2階微分って、もしかして、2回微分するってことですか? それで微分とは等間隔の場合、隣の値と差分取るだけで良いのですか?
967 名前:デフォルトの名無しさん mailto:sage [2007/10/11(木) 14:30:21 ] なんというか、数学勉強しなおしたほうが。 >2階微分って、もしかして、2回微分するってことですか? そう。 何回微分したかは rank、階っていう。 >それで微分とは等間隔の場合、隣の値と差分取るだけで良いのですか? 差分とるだけでいいというか、差分で近似するしか手がない。 サンプリング定理を満たすようなデータ列なら、 補完っていうかローパスフィルタで連続信号にできるから それ使って数値微分(これも差分近似するだけだけど)で精度はあげれるけど。
968 名前:959 mailto:sage [2007/10/11(木) 14:32:04 ] 有難うございましたm(。。)m
969 名前:デフォルトの名無しさん mailto:sage [2007/10/11(木) 19:51:43 ] www.google.co.jp/search?hl=ja&q=%E9%9B%A2%E6%95%A3%E5%80%A4+%E5%BE%AE%E5%88%86&lr=
970 名前:デフォルトの名無しさん [2007/12/02(日) 00:53:44 ] 3Dプログラミングをやる場合、最低でも必要な数学の知識は何?
971 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 00:57:38 ] まず、何が必要なのか自ずとわかる能力は必要だと思う
972 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 01:06:18 ] 数学と言ってもせいぜい学校数学だろ
973 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 01:22:29 ] Matrix
974 名前:デフォルトの名無しさん [2007/12/02(日) 01:23:00 ] >>971 線形代数しか思い浮かばんぜ
975 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 01:25:31 ] 新スレどうする?
976 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 01:26:26 ] 三角関数 運動方程式を解くための微分方程式についての知識
977 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 01:41:08 ] >>975 立てようと思ったが、関連スレが存在するのかすらわかんね。
978 名前:デフォルトの名無しさん mailto:sage [2007/12/02(日) 01:43:30 ] >>977 プログラミングの為の数学と算数 vol.2 プログラムに必要な数学、算数に関する話題について 語りましょう。TIPS/Q&Aスレです。 関連板: science6.2ch.net/math/ これでいいんじゃ?
979 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 19:08:46 ] 皆さん市販の数値計算ライブラリ使っていますか? それとも自分でつくっていますか?ガンマ関数とかいろいろ ライブラリ作るの面倒くさいよ・・・ 購入したほうがいいのかな・・・
980 名前:デフォルトの名無しさん mailto:sage [2007/12/03(月) 19:33:10 ] boostとか使ってる
981 名前:デフォルトの名無しさん mailto:sage [2007/12/05(水) 00:37:19 ] フリーのライブラリ使えばいいんじゃね?
982 名前:デフォルトの名無しさん [2007/12/06(木) 00:29:06 ] 24時間経過寸前age
983 名前:デフォルトの名無しさん mailto:sage [2007/12/06(木) 01:03:12 ] 流すか
984 名前:デフォルトの名無しさん [2007/12/06(木) 18:10:28 ] 10000000 ↑上位1ビットの値 というのは一番左端の値であり、1ですか?
985 名前:デフォルトの名無しさん mailto:sage [2007/12/06(木) 18:20:51 ] 8bitの値ならそうですね
986 名前:デフォルトの名無しさん [2007/12/06(木) 21:48:31 ] 上と下の区別もつかんのか
987 名前:デフォルトの名無しさん mailto:sage [2007/12/06(木) 23:51:46 ] 馬鹿、そっちは左だ
988 名前:デフォルトの名無しさん mailto:sage [2007/12/06(木) 23:57:44 ] おい! 左をみろ!!→→→→→→→→→→→→→→→→→→→→→→→→→→
989 名前:デフォルトの名無しさん mailto:sage [2007/12/07(金) 00:37:15 ] >>984 十進数でも、 1234なら、1(千の位)が一番上の桁でしょうや。
990 名前:デフォルトの名無しさん mailto:sage [2007/12/07(金) 04:23:48 ] MSB LSB 何の略だっけ
991 名前:デフォルトの名無しさん mailto:sage [2007/12/07(金) 09:56:31 ] Most (Least) Significant Bit
992 名前:デフォルトの名無しさん mailto:sage [2007/12/07(金) 22:08:45 ] LE、BEと交じるとどっちがどっちだかわからなくなるんだよなー
993 名前:デフォルトの名無しさん [2007/12/07(金) 22:28:55 ] BSE って何の略だっけ
994 名前:デフォルトの名無しさん mailto:sage [2007/12/07(金) 22:37:49 ] Bin So Einsam ドイツ語で自分は孤独だという嘆き。
995 名前:デフォルトの名無しさん mailto:sage [2007/12/08(土) 06:07:08 ] .
996 名前:デフォルトの名無しさん mailto:sage [2007/12/08(土) 06:07:38 ] .
997 名前:デフォルトの名無しさん mailto:sage [2007/12/08(土) 06:08:09 ] .
998 名前:デフォルトの名無しさん mailto:sage [2007/12/08(土) 06:08:39 ] .
999 名前:デフォルトの名無しさん mailto:sage [2007/12/08(土) 06:09:10 ] .
1000 名前:小倉優子 ◆YUKOH0W58Q mailto:sage [2007/12/08(土) 06:23:20 ] 1000ならジュースでも飲むか
1001 名前:1001 [Over 1000 Thread] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。