[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 08/08 14:06 / Filesize : 275 KB / Number-of Response : 1034
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

なあ、再帰関数好きな人いる?



1 名前:名無しのプログラマ [2015/08/09(日) 17:46:33.69 ID:Icb40LOY.net]
for,while使うの嫌いで基本的に再帰多用するんだが、だめなの?
皆から敬遠されてる気がする

892 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 12:39:49.40 ID:8PjODHJ7.net]
典型的な例がそれね

893 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 12:40:45.30 ID:8PjODHJ7.net]
一応言うけど、親切7割で書いてんだよ

894 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 12:46:22.23 ID:miXQ60Mg.net]
int sum = 0;
for(int i = 1; i <= 10; i++) {
 sum = sum + i;
}
左辺のn+1項までの和を右辺のn項までの和を使って再定義します
他にどう読める?

895 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 12:49:12.16 ID:8PjODHJ7.net]
そんな話じゃない

896 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 12:50:45.59 ID:CQ0buOj1.net]
俺は親切10割で書いてるよ

897 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 12:53:54.77 ID:o0S33vFB.net]
再帰関数ってのは問題に対する言葉じゃなくて、それをどうコーディングするかに対する言葉

898 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 13:04:05.67 ID:miXQ60Mg.net]
ttp://akita-nct.jp/saka/lecturenote/2010/2e/text/recursive.pdf

再帰関数講義pdf

899 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 13:15:58.86 ID:VTGxMrVA.net]
なにそのURL。だからなんだ?
あからさまに>>871は再帰じゃないって書いてあるが

900 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 13:22:34.79 ID:1eGH5HCM.net]
スレ



901 名前:読んだ
現実を直視することって大切だよなって思いました
[]
[ここ壊れてます]

902 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 13:37:10.03 ID:8kAWPtv+.net]
int sum = 0;
for(int i = 1; i <= 10; i++) {
 sum = sum + i;
}

これは明らかに再帰じゃないなw

これを再帰と説明しているページがアレば
いってくれ。

ないなら、黙ってろ。

903 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 13:38:20.61 ID:8kAWPtv+.net]
おっと、黙ってろっていうのは、
>>878に対してだけだだ。
別に>>878と関係ないことを話すのは構わない(笑)

904 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 13:45:24.53 ID:VTGxMrVA.net]
予測だが、抽象化や概念を扱うのが極端に苦手なんだろう
なのでそれを伴う会話、論理、もしくはそれ以前に単語の意味が理解出来ない

905 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 13:46:24.96 ID:miXQ60Mg.net]
ttp://akita-nct.jp/saka/lecturenote/2010/2e/text/recursive.pdf

再帰関数講義pdf

>>878
数列の和の再帰実装の項目が読めないの?

つづけて、

2.2 なぜ,再帰関数なのか?

再帰関数と繰り返し文のどちらを使ってもプログラムが書ける場合,
どちらを使うべきだろうか?
両方使える場合は繰り替えし文を使うべきである.
計算速度も早いし,メモリの消費も少ないからである.
ではどこで,再帰関数の登場機会があるのか.
単純な問題であれば繰り替えし文の方が良いが,
複雑な問題となると再帰関数で記述はできるが,
繰り替えし文ではプログラムが大変困難な場合がある.

906 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 13:48:14.91 ID:8kAWPtv+.net]
>>881
これのことだろうけど、
普通に、sumの中でsumを使っており、
そのsumの部分に再起するって書いてある。

/ / =========================
25 / / ユーザー定義関数 sum
26 / / =========================
27 i n t sum ( i n t n ) {
28
29 i f ( n == 1 ){
30 r e t u r n 1 ;
31 } e l s e {
32 r e t u r n sum ( n?1) + n ; / / 再帰する
33 }
34
35 }

907 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 13:49:21.03 ID:8kAWPtv+.net]
2 再帰関数とは
2.1 再帰関数の例
自分自身を呼び出す関数を再帰関数 (recursive function) という.また,自分自身を呼び
出すことを再帰呼出し (recursive call) という.言葉の定義はともかく,具体的な例を見て
みよう.



2.2 なぜ,再帰関数なのか?
再帰関数と繰り返し文のどちらを使ってもプログラムが書ける場合,どちらを使うべき
だろうか? 両方使える場合は繰り替えし文を使うべきである.計算速度も早いし,メモリ
の消費も少ないからである.で

908 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 13:51:10.04 ID:VTGxMrVA.net]
なんでループと再帰が同じって言ってるやつが、
両方使える場合はループだの、複雑なことは再帰だのになんだよ。
言ってることが支離滅裂。

909 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 13:57:22.43 ID:miXQ60Mg.net]
>>884
それはスコープスタックを

ループは保存しないで行ったっきり

再帰関数はpushして最下ノードまで行って
popして戻りつつ新たな下ノードのpush&pop検索をするからだよ

910 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 14:00:39.98 ID:VTGxMrVA.net]
>>878
この方法にしとけ

for(int i = 1; i <= 10; i++) {
 sum = sum + i;
}
「これは再帰関数です」とか「これは再帰ではありません」とか明示的に書いてあるやつがいい
それなら理解出来るだろ

あと再帰やループの制御構造は、forやwhileや関数の呼び出しだからな。
決してsimではない



911 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 14:01:24.37 ID:VTGxMrVA.net]
>>885
保存しないのがループなんだろうが

912 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 14:07:04.25 ID:miXQ60Mg.net]
ttp://ja.wikipedia.org/wiki/%E3%82%AF%E3%82%A4%E3%83%83%E3%82%AF%E3%82%BD%E3%83%BC%E3%83%88
クイックソート

そんなに言うならループで書いてみてよ

913 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 14:20:43.68 ID:VTGxMrVA.net]
繋がりが分からん

914 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 14:21:51.14 ID:miXQ60Mg.net]
>>884
>>885
>>888

915 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 14:22:35.47 ID:VTGxMrVA.net]
ただの一度とて俺はループで何が出来るだの出来ないだの一覚えはない
頭大丈夫か?

で?ルールで書けってことは「ループじゃない物」があるってことだよな?
それをここにいるほぼ全ての人は再帰と読んでるわけだが

916 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 14:28:26.07 ID:miXQ60Mg.net]
>なんでループと再帰が同じって言ってるやつが、
>両方使える場合はループだの、複雑なことは再帰だのになんだよ。
>言ってることが支離滅裂。

>両方使える場合はループだの、複雑なことは再帰だのになんだよ。
これが支離滅裂と思うんなら、クイックソートをループで書いてごらん

917 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 14:47:29.00 ID:LToipCL/.net]
書くのはおまえだろうが。


918 名前:俺はループと再帰の区別してるから。
再帰はループとは別にあるし、再帰が良いと思った時は再帰だ。俺はな。
そして支離滅裂なのはそのURLじゃなくておまえだ。

おまえは区別しないなら全部同じ書き方でかけ。
ループと再帰と言う単語すら使うな。区別しないなら徹底的に区別するな。

それ以前に
for(int i = 1; i <= 10; i++) {
 sum = sum + i;
}
これが再帰と書かれたサイトなり資料なり探し終わるまで黙っとけ。多数に言われてんだから。
[]
[ここ壊れてます]

919 名前:デフォルトの名無しさん [2015/09/06(日) 14:51:28.16 ID:pbpREKnW.net]
>>888
>>892

ループで書いた
peace.2ch.net/test/read.cgi/tech/1434079972/8

920 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 14:53:47.20 ID:LToipCL/.net]
知らんわんなもん
おまえはループと書くな。区別しないのだから



921 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 14:55:26.13 ID:miXQ60Mg.net]
分かってませんでしたって言うなら言えばいいよ
クイックソートのループ実装はムチャ振りだから

922 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 14:57:32.04 ID:LToipCL/.net]
なんの話だ?
関係ない話なら「後から」付き合うけど?
ごちゃごちゃ言ってないでさっさと探して来い。

923 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 14:59:58.98 ID:miXQ60Mg.net]
>>894
push&popって、わざわざ作ってループにするくらいなら
素直に再帰関数使えよ

push&popのループは実装にもよるけど再帰関数とほぼ同じ

924 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:00:49.47 ID:LToipCL/.net]
ループは再帰なのにループの実装は無茶振りねぇ
ふーーん

ま、これについても探してきてから相手してやるか

925 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:01:20.67 ID:miXQ60Mg.net]
>>898
>>885

926 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:03:20.65 ID:LToipCL/.net]
それはループと再帰を区別してるっていうんだよ。
単語が必要になった時点でな

927 名前:デフォルトの名無しさん [2015/09/06(日) 15:03:29.78 ID:JSf18249.net]
>>898
ループで実装しとけばpopの過程で残りの処理やらんでいいわってときに
処理を打ち切れるんだよ。そういう意味では再帰をループで実装する意味はあるかと。

928 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:03:31.85 ID:miXQ60Mg.net]
>>899
>>885
push&pop実装してループすりゃ良いけど、それなら素直に再帰関数使え

929 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:04:44.43 ID:8kAWPtv+.net]
2 再帰関数とは
2.1 再帰関数の例
自分自身を呼び出す関数を再帰関数 (recursive function) という.また,自分自身を呼び
出すことを再帰呼出し (recursive call) という.言葉の定義はともかく,具体的な例を見て
みよう.



2.2 なぜ,再帰関数なのか?
再帰関数と繰り返し文のどちらを使ってもプログラムが書ける場合,どちらを使うべき
だろうか? 両方使える場合は繰り替えし文を使うべきである.計算速度も早いし,メモリ
の消費も少ないからである.で

930 名前:デフォルトの名無しさん [2015/09/06(日) 15:05:50.49 ID:JSf18249.net]
>>903
再帰よりもループのが都合いいことあるんよ
関数呼び出しを途中で打ち切ること出来ぬでしょ



931 名前:デフォルトの名無しさん [2015/09/06(日) 15:06:30.03 ID:JSf18249.net]
>>904
これ。

932 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:06:41.80 ID:miXQ60Mg.net]
>>902
再帰関数に強制終了フラグを渡して
再帰呼び出しの直後にそのフラグをチェックすれば
強制終了できるけど?

933 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:09:02.09 ID:LToipCL/.net]
>>903
pushとpopでループさせるなんて一言も言ってないし、
再帰使わないとも一言も言ってないし、
どうゆう会話の繋がり構造してんだ?
本気で頭大丈夫か?

しかもそれ完全にループと再帰分けて考えてるよな

934 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:09:21.10 ID:miXQ60Mg.net]
>計算速度も早いし,メモリの消費も少ないからである
push&popを実装するなら、正直、コンパイラに任せたほうが早いかもよ

935 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:10:20.50 ID:LToipCL/.net]
>>907
馬鹿じゃねぇの
それは再帰として使ってるとは言わん
普通ではない事態だ

936 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:11:18.97 ID:LToipCL/.net]
>>909
それをお前はあたかもそうではないような書き込みしてたよな

937 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:15:01.76 ID:miXQ60Mg.net]
>>908

>>751
>>885

938 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:16:40.15 ID:LToipCL/.net]
それ俺の書き込みじゃないけど。
それと言葉に詰まると全く意味の分からない安価書くのやめれ

939 名前:デフォルトの名無しさん [2015/09/06(日) 15:17:02.84 ID:JSf18249.net]
>>907
アプリケーションを強制終了?
ちょっとそれはクソすぎると思うよ

940 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:20:07.58 ID:LToipCL/.net]
for(int i = 1; i <= 10; i++) {
 sum = sum + i;
}
それとこれが再帰っつーのがお前の主張だからね。
話散らすのに一生懸命なようだけど。



941 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:22:44.17 ID:miXQ60Mg.net]
>>910

>>905
の振りだから
>>907
だろ

int recHoge(bool& esc){
 int i;
 //push処理
 i=rechoge(esc);
 if(esc) return i;
 //pop処理
 return i;
}

942 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:27:09.64 ID:LToipCL/.net]
>>916
あんな、出来る出来ないじゃなくて
関数として

943 名前:扱われるえき概念を、処理中の内部からスタック操作なんてしねぇんだよ []
[ここ壊れてます]

944 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:31:29.36 ID:LToipCL/.net]
んで結局、ループと再帰を区別しないと言うお前の主張は、
ループや再帰と言う単語を用いないとできないわけだね。
ふーーん

945 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:33:09.34 ID:miXQ60Mg.net]
何コメントが気に入らないの?

int recHoge(bool& esc){
 int i;
 //再帰のスタックがpushされている時の処理をここに書く
 i=rechoge(esc);
 if(esc) return i;
 //再帰のスタックがpopされている時の処理をここに書く
 return i;
}

946 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:34:42.95 ID:LToipCL/.net]
はい全然会話がつながってない。それは関係ない。

947 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:34:48.30 ID:miXQ60Mg.net]
>ループと再帰を区別しないと言うお前の主張
これが俺の主張だというならアンカくれ

948 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:37:06.65 ID:LToipCL/.net]
探すのめんどくさい。
しかし一つや二つではない


for(int i = 1; i <= 10; i++) {
 sum = sum + i;
}
より確実なのはこっち

949 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:37:11.26 ID:miXQ60Mg.net]
>>920

>>917
じゃあ、↑がイミフ

950 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:40:50.25 ID:miXQ60Mg.net]
>>922
探せないなら
ループと再帰を区別しない
これはおれの主張じゃないからね

sumについては
>>856



951 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:42:44.84 ID:LToipCL/.net]
お前の理解度なんて知らんわ。
その話題の発端は俺じゃないからそこについて続ける気もしない。

952 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:44:30.52 ID:LToipCL/.net]
漸化式になってようとなってまいと再帰には関係ない

953 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:45:19.69 ID:LToipCL/.net]
お前の言い分だとプログラムのほぼ全てが再帰になる

954 名前:デフォルトの名無しさん [2015/09/06(日) 15:47:23.50 ID:JSf18249.net]
>>894
1個は末尾再帰なので単純にループでいいかと
https://ideone.com/r1BBhE

955 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:51:29.03 ID:miXQ60Mg.net]
広辞苑から
漸化式
数列または関数列のいくつかの要素の間に成り立つ一般的な関係式
公比rの等比数列a1,a2,...,an,...におけるan+1=ranの類

「再帰的定義: "再帰的定義"を参照」
 an+1=ran

956 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:51:35.63 ID:8kAWPtv+.net]
俺が某大学のテキスト探してきた。

大学のテキストだから書いてあることの
信頼性は高いだろう。

再帰関数講義pdf
akita-nct.jp/saka/lecturenote/2010/2e/text/recursive.pdf


2 再帰関数とは
2.1 再帰関数の例
自分自身を呼び出す関数を再帰関数 (recursive function) という.また,自分自身を呼び
出すことを再帰呼出し (recursive call) という.言葉の定義はともかく,具体的な例を見て
みよう.



2.2 なぜ,再帰関数なのか?
再帰関数と繰り返し文のどちらを使ってもプログラムが書ける場合,どちらを使うべき
だろうか? 両方使える場合は繰り替えし文を使うべきである.計算速度も早いし,メモリ
の消費も少ないからである.で

957 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 15:55:01.72 ID:LToipCL/.net]
>>929
そんな広辞苑は捨てな
しかもそれプログラム用語の再帰じゃないから。
そんなことも分かってないようだけど。

958 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 15:59:49.39 ID:miXQ60Mg.net]
ttp://ews2.cc.niigata-u.ac.jp/~takeuchi/tbasic/BackGround/Recursive.html

再帰処理

959 名前:デフォルトの名無しさん [2015/09/06(日) 16:00:19.25 ID:JSf18249.net]
日本語は文脈依存文法なので
同じ語句であっても文脈に応じて意味が変わるのよね。
再帰という同じ言葉であっても概念が異なっているのは明らかっすね。
変数への再帰的な代入と関数の再帰呼び出しとは違うものっすね。
プログラムで再帰といったときは関数の再帰呼び出しが一般的かな。

960 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 16:02:09.24 ID:miXQ60Mg.net]
再帰的とは

あるものが定義されている場合,

その定義の中に,更にその定義されるべきものが,
簡単化されて,含まれているとき,

それは「再帰的である」と言われます。
循環論法に似ていますが,少し違います。
再帰的はその部分に含まれるものが全く同じものではなくて,
簡単になったもので,最終的終了条件が明示されているものです。



961 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:02:41.93 ID:LToipCL/.net]
どうして100のうち1しかないものを持ってくる?
現場でそんな使い方してる人間なんていないだろよ

962 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 16:07:43.63 ID:miXQ60Mg.net]
漸化式が再帰だと思えないのは変な風に、頭が固いか、悪いか、なだけ

963 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 16:12:02.55 ID:miXQ60Mg.net]
つか、再帰「関数」のみが、再帰だと思ってるのが間違いだから

964 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:13:02.94 ID:LToipCL/.net]
再帰はただの定義。

自分自身を呼び出す関数を再帰関数 (recursive function) という.また,自分自身を呼び
出すことを再帰呼出し (recursive call) という.

関数として抽象化されいてそのように扱う人間がいて、
その上でその内部から自身を呼び出すものが再帰。
プログラムにおいて漸化式は再帰と関係ない。

そしてその主張をするメリットもそのように使用するメリットもなく、そのように単語を使う習慣ももメリットもない。

965 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 1 ]
[ここ壊れてます]

966 名前:6:14:07.91 ID:LToipCL/.net mailto: 再帰と書いた場合は再帰関数を示す。以後そうしとけ。 []
[ここ壊れてます]

967 名前:893 mailto:sage [2015/09/06(日) 16:21:21.57 ID:uhlPSgY9.net]
>>928
>単純にループでいいかと
うん,そのつもりだったんだが
さて >>928 で 配列 {3, 3, 5} をソートしてみてくれないか?

968 名前:デフォルトの名無しさん [2015/09/06(日) 16:23:38.18 ID:JSf18249.net]
>>937
会話をするときは相手がどういう概念を
述べているのか理解するようにしないと
言葉の表面から別の概念を連想して相手が間違いだと言っても
話が噛み合わないだけっすよ。

969 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 16:25:07.28 ID:miXQ60Mg.net]
>>760
この場合は、
再帰「関数」とループで、ほぼ等価な処理を書いたのだが
この処理は、どちらも再帰処理だよ
定義に忠実な書き方と、最適化された書き方で
ほぼ等価な漸化式の処理であって、これらの何が気に食わないの?

970 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:25:30.37 ID:fH7ggWtR.net]
ここまで狂ってるともう駄目だろ、、、
脳の一部は正常に機能しているようだけど、他の部分が完全に機能していない
そういうのを普通「発達障害」「アスペ」「ADHD」とか言うんだけどな
好きなのを取れ
要するに一生何をしてもこのままです



971 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:25:40.08 ID:8kAWPtv+.net]
俺がもう一つ見つけてきてやったぜ

ews2.cc.niigata-u.ac.jp/~takeuchi/tbasic/BackGround/Recursive.html

★再帰を使わない例

この階乗関数を Basic プログラムとして実現してみると,(Tiny Basic には階乗関数 Factorial が内蔵されていますから,
実際にこのようなプログラムを書く必要はありませんが。)

Function Kaijyou(n)
If n = 0 then
Kaijyou = 1
Else
Kaijyou = Kaijyou(n-1)*n
End if
End Function

となります。しかし,実は階乗関数は,再帰を使わなくても,
次のように実現することが出来ます。

Function Kaijyou(n)
F = 1
For i = 1 to n
F = F * i
Next i
Kaijyou = F
End Function

↑再帰を使わなくても,次のように実現することが出来ます。

972 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:28:08.20 ID:LToipCL/.net]
>>942
その発想がすでに狂ってる。

973 名前:デフォルトの名無しさん [2015/09/06(日) 16:29:29.10 ID:JSf18249.net]
>>940
やってみた。次は何をやればいい?服はもう脱いだ。
https://ideone.com/1x5POb

974 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:30:15.65 ID:LToipCL/.net]
また狂った勘違いされそうだけど、当然ながら記述どうこうの話ではない。
そんな話は一切していない

975 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:36:31.57 ID:fH7ggWtR.net]
正当な評価すら「人格攻撃」としてしか受け取れない
脳が狂っている度合いがひどければひどいほど、傍からみて「あ、こいつ完全におかしい」と
分かるようになるんだが、本人は1ミリも狂っているとは思っていない
病識が全くないわけだ

軽症だと治りやすいよ
でも末期のガンとか生まれつき片手がないとかはどうしようもないだろう
この後者に相当するのがこいつ

976 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 16:37:24.66 ID:miXQ60Mg.net]
論理で勝てないと人格攻撃で自分の醜態をさらす

977 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:38:50.50 ID:fH7ggWtR.net]
>>949
な、ほらそうだろ?お前、無職だろ?こんな奴雇う会社日本にねえよ
アメリカにでも行って一芸を買ってもらうこったな
でも見てたらその一芸すら怪しいようだが

978 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 16:39:04.92 ID:miXQ60Mg.net]
>>760
この場合は、
再帰「関数」とループで、ほぼ等価な処理を書いたのだが
この処理は、どちらも再帰処理だよ
定義に忠実な書き方と、最適化された書き方で
ほぼ等価な漸化式の処理であって、これらの何が気に食わないの?

さて?これのどこがどう狂っているのか説明してくださいな

979 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:39:14.91 ID:LToipCL/.net]
一番論理と遠いのはお前だよ
だからこうゆう展開になってしまう

980 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:40:05.81 ID:LToipCL/.net]
>>951
そこに結びつける発想。



981 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:40:52.39 ID:fH7ggWtR.net]
>>951
もうその発言だけで完全に狂ってると分かっちゃうよ

982 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 16:42:56.55 ID:miXQ60Mg.net]
感情的にではなく論理的に反駁してください

983 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:43:54.24 ID:LToipCL/.net]
だから狂った勘違いされないよう

984 名前:ノ「記述にもなんにも関係ない」と、
普通の人にはしないような備考をわざわざ付けたのに、それでも勝手に勘違いしてるだろ
それを指して狂ってるって言ってんだよ

だから何も会話が成り立ってない。関係ない思うを関係あると思う。
そして概念のつながりである論理のやりとりが出来てないのに自分が出来てないと気づかない。
[]
[ここ壊れてます]

985 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:45:18.24 ID:fH7ggWtR.net]
>>955
感情的にはまったくなっておりません
むしろ感情的になっているのはそちらの方だと思います
こういうのを「感情転移」と言います
もう少し言うと「投影機制」と言います

自分が感情的になっているのを認められないので、相手が感情的になっていると
錯覚してしまうのです
電車に乗ってて隣の電車が発車すると、自分の乗ってる電車が逆方向に動き出した
と錯覚するだろ?それとよく似ている

986 名前:デフォルトの名無しさん [2015/09/06(日) 16:47:03.14 ID:JSf18249.net]
>>955
それはこっちのセリフです!牛さんのように反芻してください!!
どうこれ?

987 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:48:22.69 ID:LToipCL/.net]
むしろ俺は書き始めた時の方が感情的だ
いまは至って冷静だ

988 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 16:48:38.17 ID:miXQ60Mg.net]
>>760
この場合は、
再帰「関数」とループで、ほぼ等価な処理を書いたのだが
この処理は、どちらも再帰処理だよ
定義に忠実な書き方と、最適化された書き方で
ほぼ等価な漸化式の処理であって、これらの何が気に食わないの?

だから↑がどう論理的に狂ってるか具体的にかけよ

989 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:49:14.49 ID:LToipCL/.net]
>>960
その発想だって言ってんだろ

990 名前:893 mailto:sage [2015/09/06(日) 16:49:40.04 ID:uhlPSgY9.net]
>>948
よくわかるが,今回の場合は反駁側も切れ味が悪い,揚げ足を取りきれていない
篭手狂人は「行っていることが正しい」可能性はないわけではない
問題は「不正確な表現」,百歩譲っても「表現が独特すぎて伝わっていない」



991 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:50:18.66 ID:fH7ggWtR.net]
>>959
あららここまでひどいとただの投影じゃなくて投影性同一視が入ってるみたいですね
境界性パーソナリティ障害とか自己愛性パーソナリティ障害も併発してるようです
投影性同一視とは他人を利用した自己嫌悪です
本当は自分を嫌悪したいのですがどうしてもそれが嫌なのでまともな他人を嫌悪します
これはしばしば犯罪に発達します
危険ですよ

992 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:51:40.98 ID:fH7ggWtR.net]
>>962
だとすればまあちょっとは自覚があるんじゃないですかね
そうなると治療すれば治る可能性もあるのに惜しいですね
このまま人生を棒に振っちゃうようで

993 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:53:01.63 ID:fH7ggWtR.net]
よく犯罪者が言ってるじゃないですか
「俺は悪くない!悪いのは社会だ!」
裁判所でそれ叫んでみてくださいよ
誰も認めちゃくれませんから

994 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 16:57:12.75 ID:LKKBkxwK.net]
これ、まさか次スレもやるつもりですか?

995 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2015/09/06(日) 16:57:13.89 ID:0zNPIayW.net]
プログラミングの現場で再帰と言ったら再帰関数や再帰呼び出しのこと。
情報科学で漸化式は再帰的定義であると言える。
しかし、プログラミングでプログラムに書いた漸化式を「再帰処理」と言うと、
初心者にとって混乱極まりない上に迷惑であり、不適切な表現である。

996 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 16:59:16.85 ID:miXQ60Mg.net]
>>960

>>760
のようにほぼ等価な処理が書けるのに
再帰「関数」で実装されたもののみが「再帰処理」だとしたら
ループで最適化実装されたものは「ループ処理」で
再帰処理とは違う処理なのですか?

997 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:00:59.76 ID:LToipCL/.net]
>>960
それ自体が関係ないのになぜその書き込みを引っ張る?
その処理が気に食う気に食わないの話はどっから出てきた?
なんで急に脈絡なくその書き込みの話をする?
漸化式は関係ないからって言われた直後、なんでその相手に自慢げに漸化式の話をする?
定義に忠実がなんだ?だからどうなんだ?満たされるのはお前の自己満足だけだろ
しかも

998 名前:自分の思い込みだけで狂ったように連呼する定義。
最適化?誰がそんなの望んだ?誰がそんな話した?噛み合ってないよな。


狂ってるんだよ
狂ったものは論理と最も遠い。
論理じゃないものに対して論理では答えられない。
[]
[ここ壊れてます]

999 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:05:43.20 ID:aWMMHCvX.net]
>>968
そう。

そしてさらに、関数は処理だけを指すものではない。
人間側が関数を関数と言う概念として扱い、そのように人間が振舞うことで初めて関数は関数になる。
当然それと同等の物が再帰にある。

普通はこんな説明不要だが、お前はこの説明も受けておく必要がある。

1000 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:05:55.81 ID:8kAWPtv+.net]
とりあえず俺が見つけてきた解説をみて。
再帰とは何かを勉強した方がいい。

ews2.cc.niigata-u.ac.jp/~takeuchi/tbasic/BackGround/Recursive.html

★再帰を使わない例

この階乗関数を Basic プログラムとして実現してみると,(Tiny Basic には階乗関数 Factorial が内蔵されていますから,
実際にこのようなプログラムを書く必要はありませんが。)

Function Kaijyou(n)
If n = 0 then
Kaijyou = 1
Else
Kaijyou = Kaijyou(n-1)*n
End if
End Function

となります。しかし,実は階乗関数は,再帰を使わなくても,
次のように実現することが出来ます。

Function Kaijyou(n)
F = 1
For i = 1 to n
F = F * i
Next i
Kaijyou = F
End Function

↑再帰を使わなくても,次のように実現することが出来ます。



1001 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 17:06:58.08 ID:miXQ60Mg.net]
>漸化式は関係ないからって言われた直後、
>なんでその相手に自慢げに漸化式の話をする?

漸化式から再帰処理コードを組み立てる
スタックオーバーロードがあるから、再帰関数は奥の手で
ループで書けるならそれに越したことはない
ループでひどく複雑になるようなときに、再帰関数で書く

1002 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:08:24.25 ID:8kAWPtv+.net]
そして、もう一つの解説。俺が某大学のテキスト探してきた。

大学のテキストだから書いてあることの
信頼性は高いだろう。

再帰関数講義pdf
akita-nct.jp/saka/lecturenote/2010/2e/text/recursive.pdf


2 再帰関数とは
2.1 再帰関数の例
自分自身を呼び出す関数を再帰関数 (recursive function) という.また,自分自身を呼び
出すことを再帰呼出し (recursive call) という.言葉の定義はともかく,具体的な例を見て
みよう.



2.2 なぜ,再帰関数なのか?
再帰関数と繰り返し文のどちらを使ってもプログラムが書ける場合,どちらを使うべき
だろうか? 両方使える場合は繰り替えし文を使うべきである.計算速度も早いし,メモリ
の消費も少ないからである.で

1003 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:08:25.12 ID:aWMMHCvX.net]
>>972
だからその発想が狂ってる。
そんな話はしていない。

だから論理にならない

1004 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 17:13:29.91 ID:miXQ60Mg.net]
>>970
>>760
あのさ、このπを求めるコードで、まず関数入出力を見て
実装が、再帰関数実装とか、ループ実装とか、
普通、いちいち、そこまでこだわらないと思うんだけど
こだわるのは、精査検証が必要なときだけだろ

精査検証なら
>>972

1005 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:14:49.58 ID:fH7ggWtR.net]
>>959
酒買ってきた
まさにこれだよな
「論理的じゃないものに対して論理では答えられない」
狂ってる奴が「論理的に反駁してください」と言っているのを聞くと笑いそうになる

あのさあ・・・まず先に論理的に話すべきなのはそちらじゃないかね、って
でもそれが全く出来ない
だから発達障害なんだよ

1006 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:15:55.83 ID:fH7ggWtR.net]
ちごた
×>>959
>>969

>狂ってるんだよ
>狂ったものは論理と最も遠い。
>論理じゃないものに対して論理では答えられない。

俺が言いたい事と全く同じ

1007 名前:片山博文MZ ◆T6xkBnTXz7B0 mailto:sage [2015/09/06(日) 17:16:46.42 ID:0zNPIayW.net]
関数かループかは実行スピードに大きく影響する。円周率を求めるプログラムではスピードが重要。

1008 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:17:41.58 ID:8kAWPtv+.net]
俺が持ってきた再帰の定義について
反論ができなくなってしまっているようだなw

ews2.cc.niigata-u.ac.jp/~takeuchi/tbasic/BackGround/Recursive.html

★再帰を使わない例

この階乗関数を Basic プログラムとして実現してみると,(Tiny Basic には階乗関数 Factorial が内蔵されていますから,
実際にこのようなプログラムを書く必要はありませんが。)

Function Kaijyou(n)
If n = 0 then
Kaijyou = 1
Else
Kaijyou = Kaijyou(n-1)*n
End if
End Function

となります。しかし,実は階乗関数は,再帰を使わなくても,
次のように実現することが出来ます。

Function Kaijyou(n)
F = 1
For i = 1 to n
F = F * i
Next i
Kaijyou = F
End Function

↑再帰を使わなくても,次のように実現することが出来ます。

1009 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 17:17:44.80 ID:miXQ60Mg.net]
ttp://ews2.cc.niigata-u.ac.jp/~takeuchi/tbasic/BackGround/Recursive.html
再帰は使うべきか
このように見てくると,再帰プログラムは効率の良くないプログラムと思うかもしれません。
実はある意味ではその通りです。それでは使う必要のないものなのでしょうか?
これも使わなくて良ければと言う前提に立てばその通りです。
一般に次のことが言えます。
•再帰プログラムは計算機に負荷をかけるプログラムである。
•時によっては,膨大な負荷をかけることもある。
•簡単に非再帰プログラムとして書けるものは再帰プログラムを使うべきではない。
それでも,再帰プログラムが基本的であると言われるのは何故でしょうか。
それは再帰プログラムが大きな力を秘めているからです。つまり
•再帰プログラムでは簡単に書けるが,非再帰プログラムはかなり複雑なプログラムになってしまうようなものがある。
ということです。
このような問題が意外とあるのです。再帰プログラム技法を,身につけたら,プログラミングを行う際,次のような視点で考えるのが良いかもしれません。
•まずは,非再帰プログラムで問題を考えてみる。
•難しいと判断した場合,再帰プログラムで考えてみる。

1010 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:18:47.18 ID:8kAWPtv+.net]
そして、もう一つの解説。俺が某大学のテキスト探してきた。
自分自身を呼び出したものが再帰なのだ。

大学のテキストだから書いてあることの
信頼性は高いだろう。

再帰関数講義pdf
akita-nct.jp/saka/lecturenote/2010/2e/text/recursive.pdf


2 再帰関数とは
2.1 再帰関数の例
自分自身を呼び出す関数を再帰関数 (recursive function) という.また,自分自身を呼び
出すことを再帰呼出し (recursive call) という.言葉の定義はともかく,具体的な例を見て
みよう.



2.2 なぜ,再帰関数なのか?
再帰関数と繰り返し文のどちらを使ってもプログラムが書ける場合,どちらを使うべき
だろうか? 両方使える場合は繰り替えし文を使うべきである.計算速度も早いし,メモリ
の消費も少ないからである.で



1011 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:20:26.48 ID:aWMMHCvX.net]
>>975
はいここでまた関係ない話になる。
今してる話は何が再帰か(定義と概念)、であって、
手段の問題ではない。
当然>>972もなんの関係もない。

1012 名前:ただの手順。

そんな考えだから再帰中に再帰中の内部記憶を操作するとような発想を平気でする。
再帰を再帰として扱ってはいない。これは概念の問題。
再帰を扱う人がそれを再帰扱いしなければ、当然それは再帰ではない。

再帰かどうかと言うのはそういった所でも大きく区分けされる。
[]
[ここ壊れてます]

1013 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 17:24:43.59 ID:miXQ60Mg.net]
>>982

>>932
>>934

1014 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:27:47.47 ID:aWMMHCvX.net]
だからその返信に詰まった時に安価書くのやめれっつーの
お前の再帰の定義が問題扱いされてるのに、
自分の正当性を得るために自分の定義を証明手段に使ってどうする
馬鹿なのか

1015 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:28:54.74 ID:1q8+1kZD.net]
>>984
自分が狂ってる事を正当化するために自分が書いた狂った定義を持ち出すのは
もはや負けを認めているのに等しいよな

1016 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 17:29:38.53 ID:miXQ60Mg.net]
>>932
のリンクの大学教授の定義をコピペしたのが
>>934


1017 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:32:05.22 ID:1q8+1kZD.net]
>>986
今度は権威を使うのか
"虎の威を借る狐"
でもその虎が狂っていたらどうなる?ただの殺人虎だ

1018 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:34:21.82 ID:8kAWPtv+.net]
>>986

> >>932
> のリンクの大学教授の定義をコピペしたのが
> >>934
> だ

>>932のリンクってこれだよね?
ews2.cc.niigata-u.ac.jp/~takeuchi/tbasic/BackGround/Recursive.html
★再帰を使わない例
この階乗関数を Basic プログラムとして実現してみると,(Tiny Basic には階乗関数 Factorial が内蔵されていますから,
実際にこのようなプログラムを書く必要はありませんが。)

Function Kaijyou(n)
If n = 0 then
Kaijyou = 1
Else
Kaijyou = Kaijyou(n-1)*n
End if
End Function

となります。しかし,実は階乗関数は,再帰を使わなくても,
次のように実現することが出来ます。

Function Kaijyou(n)
F = 1
For i = 1 to n
F = F * i
Next i
Kaijyou = F
End Function
↑再帰を使わなくても,次のように実現することが出来ます。

1019 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:34:24.36 ID:aWMMHCvX.net]
もう一度教えてやろう。
それは普通は使わない定義

1020 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 17:34:49.74 ID:miXQ60Mg.net]
だから、お前らは、俺に対して、感情的反駁しかしてねーし



1021 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:36:03.31 ID:1q8+1kZD.net]
>>988
うはw
捏造入ってたのか
こりゃちゃんとリンク先見ないとな

>>990
何回でも言います
感情的になってるのはそっちです

1022 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:37:16.64 ID:1q8+1kZD.net]
再帰定義は、ありまぁーす!みたいな展開になってきたな

1023 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 17:37:25.62 ID:miXQ60Mg.net]
>>989
算数からやり直したらどう?
算数→数学→情報処理となって
再帰定義がなんぞやって定義されているんだよ

1024 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:37:27.94 ID:aWMMHCvX.net]
あと答えられなくなったとき必ず
答えなくなったり話散らすね。
直接的に繋がりのある返答はかなり珍しい

他の人が増えてきて読みにくいんで終わり

1025 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:38:07.17 ID:uhlPSgY9.net]
>>946
おーうまくいくね>>984 では,これに苦心したんだが‥

1026 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:38:14.61 ID:aWMMHCvX.net]
>>993
数学用語とプログラム用語は別物だと言ったはずだ

1027 名前:NAS6 ◆n3AmnVhjwc [2015/09/06(日) 17:39:58.36 ID:miXQ60Mg.net]
>>996
お前の中ではな

1028 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:40:39.85 ID:aWMMHCvX.net]
ついにそうゆうことしか書けなくなったわけだね

1029 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:40:58.46 ID:1q8+1kZD.net]
>>993
おやお前数学出来るのか
じゃあマクスウェルの方程式とかナビエ・ストークスの方程式の意味は説明出来るんだよな?

1030 名前:デフォルトの名無しさん [2015/09/06(日) 17:41:53.70 ID:LZy823VQ.net]
暇人か



1031 名前:デフォルトの名無しさん mailto:sage [2015/09/06(日) 17:42:12.67 ID:1q8+1kZD.net]
>>994
自分を守るのが精一杯でちゃんと他人の質問に答えれなくなってるよな

1032 名前:1001 [Over 1000 Thread.net]
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

1033 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<275KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef