2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

多言語でforループを列挙していくスレ

1 :デフォルトの名無しさん:2018/10/30(火) 09:18:52.77 ID:sSPDfgXo.net
for(i=0;i<N;i++){} //C

2 :デフォルトの名無しさん:2018/10/30(火) 09:23:08.85 ID:sSPDfgXo.net
for i in range(0, N): //python,今調べた

3 :デフォルトの名無しさん:2018/10/30(火) 15:31:35.66 ID:rRu8aIw/.net
for(i=N;i--;) {} //Cの方がお好み

4 :デフォルトの名無しさん:2018/10/30(火) 16:54:11.44 ID:Sz4Zv5pS.net
R

for(i in 0:(N-1)){}

5 :デフォルトの名無しさん:2018/10/30(火) 22:39:05.76 ID:o9hY2eDj.net
5ch ニュー速+のレス

6 :デフォルトの名無しさん:2018/10/31(水) 06:52:12.39 ID:XwxRwFh3.net
Lua

for i=0,N-1 do
ene

7 :デフォルトの名無しさん:2018/10/31(水) 19:06:05.16 ID:XwxRwFh3.net
>>1
「for」という名前にこだわるのか
N回ループなら名前は関係ないのか
どっち?

8 :デフォルトの名無しさん:2018/10/31(水) 19:13:52.61 ID:o0DzM9PU.net
for i in $(seq 1 N); do :; done

9 :デフォルトの名無しさん:2018/11/01(木) 08:37:07.54 ID:aKGNiS9G.net
Maxima

for i:0 thru N-1 do;

10 :デフォルトの名無しさん:2018/11/01(木) 16:33:44.34 ID:QiY0YIiT.net
>>3
ダメな書き方

11 :デフォルトの名無しさん:2018/11/01(木) 19:16:12.55 ID:aKGNiS9G.net
Asymptote

for(i=0;i<N;++i){}

12 :デフォルトの名無しさん:2018/11/01(木) 19:22:39.41 ID:+p1vRE32.net
>>6
エンエ

13 :デフォルトの名無しさん:2018/11/02(金) 01:08:41.68 ID:mmSIT3HV.net
確かにキーワードforにこだわるひつようないわな
日本語で書くと
次の括弧の中のものを複数回繰り返せ{}
になるのかな。イテレータっていうのかな?動かす変数iも
要らないのかな

そうすると
次の括弧の中のものを変数を駆使しつつ複数回繰り返せ{}
かもしれない。
括弧=ブロックということで、もっと要約したり厳密に書こうとすれば・・・

日本語のプログラミング言語をチラ見したことがあるが。
まあ、その辺はどうでもよくて。
ただ言語間の違いを鑑賞するにとどめている。

14 :デフォルトの名無しさん:2018/11/02(金) 05:15:53.50 ID:t43Qe+T2.net
>>3
ダメではないんでないの

15 :デフォルトの名無しさん:2018/11/02(金) 06:04:16.92 ID:T61e9sN/.net
J
for_i i. N do. end.

16 :デフォルトの名無しさん:2018/11/02(金) 06:05:06.43 ID:T61e9sN/.net
間違えた
for_i. i. N do. 1 end.

17 :デフォルトの名無しさん:2018/11/02(金) 11:41:23.47 ID:eui+6IYW.net
Arc

(for i 0 (- N 1) ())

18 :デフォルトの名無しさん:2018/11/02(金) 12:46:02.60 ID:DC1sdKmA.net
>>14
感心しないと言う意味
条件パートに副作用のある式を書くのはバグの元になる

19 :デフォルトの名無しさん:2018/11/02(金) 13:10:24.08 ID:gPq21KJC.net
スレの趣旨からは外れるかもだが
コンパイラにとって定型なら効率の良いコードを作ってくれる(はず
定型ではないとそのまんまのコードだが後置デクリメントは手間がかかる=効率が落ちる
(といっても組み込みでもない限り差は出ないよねって今は組み込みでも差ないか
ついでにいうとforよりwhileの方が云々
まあ>>1に対応するいろんな言語の様式を見ようが趣旨なんでしょ
変形も息抜きネタで面白いけどね

20 :デフォルトの名無しさん:2018/11/02(金) 13:16:10.95 ID:gPq21KJC.net
実際好みって書いてあるしね で息抜き終わり仕事に戻ります

21 :デフォルトの名無しさん:2018/11/02(金) 15:03:48.48 ID:T61e9sN/.net
長文はng

22 :デフォルトの名無しさん:2018/11/02(金) 15:47:11.04 ID:eui+6IYW.net
なでしこ

iで 0からN-1まで繰り返す
iを表示。

23 :デフォルトの名無しさん:2018/11/02(金) 16:19:20.90 ID:eui+6IYW.net
>>22
インデントに失敗しました

iで 0からN-1まで繰り返す
iを表示。

24 :デフォルトの名無しさん:2018/11/02(金) 16:29:14.47 ID:eui+6IYW.net
何度もすいません
最後の行がインデント付きです

25 :デフォルトの名無しさん:2018/11/02(金) 16:51:16.96 ID:CFw/FPLx.net
FOR i = 0 TO N STEP 1
NEXT i

26 :デフォルトの名無しさん:2018/11/03(土) 06:26:22.79 ID:kRt8PARI.net
Julia

for i in 0:(N-1)
end

27 :デフォルトの名無しさん:2018/11/03(土) 18:42:42.28 ID:kRt8PARI.net
Io

for(i,0,N-1,i println)

28 :デフォルトの名無しさん:2018/11/03(土) 19:26:00.84 ID:3NGq3yLp.net
>>27
言語詳細

29 :デフォルトの名無しさん:2018/11/03(土) 19:53:28.58 ID:kRt8PARI.net
>>28
あなごるで知った

30 :デフォルトの名無しさん:2018/11/03(土) 23:41:29.07 ID:lMTn1tjz.net
for(i=0;i<N;i++){} #awk

31 :デフォルトの名無しさん:2018/11/04(日) 00:36:43.53 ID:1pTNITmK.net
for i in 1..N loop 〜 end loop; -- Ada
for i in 1..N loop 〜 end loop; -- Oracle PL/SQL

PL/SQL の文法は Ada とほぼ同じ

32 :デフォルトの名無しさん:2018/11/04(日) 02:34:52.01 ID:tEEUVDw7.net
Bash

for ((i = 0; i < N; i++)) { echo $i; }

33 :デフォルトの名無しさん:2018/11/04(日) 02:44:38.13 ID:95qKkVOL.net
>>27
あーエルオーじゃなくてアイオーか。

34 :デフォルトの名無しさん:2018/11/04(日) 03:48:39.12 ID:Yhg2ljv8.net
F#
for i = 0 to N-1 do

35 :デフォルトの名無しさん:2018/11/04(日) 12:38:02.45 ID:s4s7tBvD.net
Scala

for(i <- 0 to N-1){}

36 :デフォルトの名無しさん:2018/11/04(日) 20:12:37.07 ID:s4s7tBvD.net
Xtal

N.tims{it.p;}

37 :デフォルトの名無しさん:2018/11/04(日) 20:50:08.41 ID:Yqdp3OyY.net
ティムズwwwww

38 :デフォルトの名無しさん:2018/11/04(日) 20:57:35.09 ID:Nn4ZdlZB.net
  ∩∩    ぼ く ら は テ ィ ム ズ !       V∩
  (7ヌ)                              (/ /
 / /                 ∧_∧            ||
/ /  ∧_∧     ∧_∧  _(´∀` )   ∧_∧   ||
\ \( ´∀`)―--( ´∀` ) ̄      ⌒ヽ(´∀` ) //
  \       /⌒   ⌒ ̄ヽ、ティム /~⌒    ⌒ /
   |      |ー、      / ̄|    //`i ティム  /
    | ティム | |ティム / (ミ   ミ)  |    |
   |    | |     | /      \ |    |
   |    |  )    /   /\   \|       ヽ
   /   ノ | /  ヽ ヽ、_/)  (\    ) ゝ  |
   |  |  | /   /|   / レ   \`ー ' |  |  /

39 :デフォルトの名無しさん:2018/11/04(日) 21:11:00.47 ID:s4s7tBvD.net
まぁ間違えてもスペルチェッカー君がいるから大丈夫

40 :デフォルトの名無しさん:2018/11/05(月) 00:05:47.95 ID:3SqRaRET.net
TI-BASIC
For(I,0,N-1
End

CASIO BASIC
For 0→I To N-1
Next

41 :デフォルトの名無しさん:2018/11/05(月) 17:16:24.45 ID:ofVHs9ho.net
PostScript

1 0 N 1 sub {} for

42 :デフォルトの名無しさん:2018/11/05(月) 21:34:42.07 ID:SaypAYQH.net
for(auto&& i: v){//c++
}

43 :デフォルトの名無しさん:2018/11/05(月) 21:59:23.56 ID:rQPPTNrE.net
Perl5
use constant N => 何か定数;
だったとして、

for (1..N) {}

または

{} for 1..N;

44 :デフォルトの名無しさん:2018/11/05(月) 22:57:05.15 ID:47SU0IGc.net
>>42
N 無くしちゃったら他の言語の例と違いすぎだろ

45 :デフォルトの名無しさん:2018/11/05(月) 23:03:13.75 ID:SaypAYQH.net
>>42 pythonのループもこんな感じじゃない。

l = ['Alice', 'Bob', 'Charlie']

for name in l:
print(name)

N付きだったら>>1のループで。

46 :デフォルトの名無しさん:2018/11/05(月) 23:05:00.81 ID:SaypAYQH.net
>>45だった。

47 :デフォルトの名無しさん:2018/11/05(月) 23:31:02.32 ID:GAsBE3NL.net
ガイジ

48 :デフォルトの名無しさん:2018/11/05(月) 23:40:25.46 ID:/jp5d8Mt.net
foreach 的なものは他のたいていの言語にもあるけどあえて挙げてないんやで

49 :デフォルトの名無しさん:2018/11/06(火) 01:45:23.84 ID:xqnKOwtZ.net
iOSのショートカットApp
https://i.imgur.com/jdqNbAQ.jpg

50 :デフォルトの名無しさん:2018/11/06(火) 01:54:33.12 ID:xqnKOwtZ.net
>>49
ありゃ、これでは1〜Nにしか変化しないや
0から始める為には
https://i.imgur.com/v4pUtGK.jpg

51 :デフォルトの名無しさん:2018/11/06(火) 16:24:10.68 ID:04POOit4.net
PARI/GP

for (i=0,N-1,print(i))

52 :デフォルトの名無しさん:2018/11/06(火) 22:21:49.13 ID:4ji0x5iw.net
Tcl

for {set i 0} {$i < $N} {incr i} { puts "$i" }

53 :デフォルトの名無しさん:2018/11/06(火) 23:23:01.10 ID:ObpCKggA.net
factorってwhileやeachはあるけどforあったっけ?

54 :デフォルトの名無しさん:2018/11/06(火) 23:51:18.81 ID:1dc764zg.net
Pythonのfor inも他で言えばforeachの方だゾ

55 :デフォルトの名無しさん:2018/11/07(水) 00:54:48.89 ID:T8AyQ5+v.net
Perl5

use feature 'current_sub';
use constant N => 100;
sub {
goto __SUB__ if shift;
}->(1..N);

※perlのgoto 関数はcontinuationなので上記codeは最適化tail recursionによる繰り返しと同じ

56 :デフォルトの名無しさん:2018/11/07(水) 00:55:09.54 ID:UCphLCxy.net
シェルスクリプトもだぞ
forはfor inしかない

0からNまで繰り返すようなことは
while使ってiをカウントしていくしか無い

57 :デフォルトの名無しさん:2018/11/07(水) 01:21:26.15 ID:6G5esoyI.net
foreach系でfor的な処理をするには
0〜n-1のイテラブルなデータを作るやつと組み合わせるんだゾ

58 :デフォルトの名無しさん:2018/11/07(水) 01:37:31.32 ID:2dob76mc.net
while, for, foreachは1つにまとめれそう

59 :デフォルトの名無しさん:2018/11/07(水) 02:24:23.79 ID:mTAgM1WN.net
何を今さら…

60 :デフォルトの名無しさん:2018/11/07(水) 18:49:12.92 ID:aZCFEbbz.net
Go

for i:=0;i<N;i++ {}

61 :デフォルトの名無しさん:2018/11/08(木) 00:25:04.11 ID:0LZzQfKw.net
そういえばPHPさんでてないな
変数名に$付く以外普通のC系だけど

for($i=0;$i<N;$i++){}

62 :デフォルトの名無しさん:2018/11/08(木) 07:11:23.95 ID:7xASNoIp.net
Common Lisp

(dotimes (i N) (print i))

(do ((i 0 (1+ i)) ((>= i N) i) (print i))

63 :デフォルトの名無しさん:2018/11/08(木) 09:22:00.66 ID:UCtqQ5sl.net
スレチ

64 :デフォルトの名無しさん:2018/11/08(木) 17:19:13.07 ID:hv4d/60R.net
Rust

for i in 0..N {}

65 :デフォルトの名無しさん:2018/11/08(木) 23:07:10.90 ID:7xASNoIp.net
>>63
意味わからん
Forに拘るなら、Fortranもforループない事になるぞ?
ご先祖様をバカにすんなや!

66 :デフォルトの名無しさん:2018/11/08(木) 23:14:12.31 ID:a5prroZo.net
スレチ

67 :デフォルトの名無しさん:2018/11/09(金) 00:43:44.37 ID:SXIktKq8.net
>>56
bashは>>32
Bシェルも普通に出てきたけど何のシェルスクリプトだとwhileじゃないと無理なの?

for i in `seq 1 N`
do
done

68 :デフォルトの名無しさん:2018/11/09(金) 01:08:12.62 ID:lKBbVzA9.net
>>65
わざわざこのスレに自分の意地で書くならスレタイ的にちょっとは for ループにこだわれよ…
loop for とかあんだろ common lisp にも

69 :デフォルトの名無しさん:2018/11/09(金) 01:28:34.79 ID:8azqSzwj.net
そこであえて>>55
for(;;){}
とか要る?

70 :デフォルトの名無しさん:2018/11/09(金) 01:30:01.79 ID:8azqSzwj.net
>>55
はちょっとやりすぎか
>>41>>43
辺りでどや

71 :デフォルトの名無しさん:2018/11/09(金) 01:31:47.50 ID:8azqSzwj.net
for(;;){} 形式は、言っておくがすべてFortran由来だからな。
Fortranを嫌いなヤシもいるだろうけど

72 :デフォルトの名無しさん:2018/11/09(金) 01:55:37.31 ID:UVRb8J0Z.net
>>67
それfor inじゃん
カウンタ変数i を増やしているわけじゃない。
引数を順番に処理しているだけ

73 :デフォルトの名無しさん:2018/11/09(金) 01:56:55.65 ID:UVRb8J0Z.net
>>71
> for(;;){} 形式は、言っておくがすべてFortran由来だからな。

そこは、for(;;){} 形式はFortranが起源ニダって言ったほうが面白い

74 :デフォルトの名無しさん:2018/11/09(金) 02:00:23.60 ID:8azqSzwj.net
しらんがな日本人だからそんな言い方

75 :デフォルトの名無しさん:2018/11/09(金) 06:45:32.10 ID:veS9VtLo.net
Fortran

do i=0,N-1
enddo

76 :デフォルトの名無しさん:2018/11/09(金) 09:23:13.67 ID:9aipcx/m.net
スレチ

77 :デフォルトの名無しさん:2018/11/09(金) 11:40:48.93 ID:Pe/1gD45.net
>>72
は?
目的は「0からNまで繰り返すようなこと」だろ?

78 :デフォルトの名無しさん:2018/11/09(金) 12:18:17.58 ID:UVRb8J0Z.net
>>77
forとfor inの違いは要素を処理しているかどうか

for i in `seq 1 N`
do
done

↑これは、コマンド呼び出し(forの機能ではない)をしていて
それを展開すると以下のように書いていることになる

for i in 1 2 3 4 ・・・ N
do
done

inの後にある要素を繰り返しながら処理しているのでこれはfor in

79 :デフォルトの名無しさん:2018/11/09(金) 12:31:37.38 ID:0q7AG6jo.net
>>78
で?

80 :デフォルトの名無しさん:2018/11/09(金) 12:39:11.88 ID:UVRb8J0Z.net
繰り返すが、forかfor inかの話をしているので、
で?の答えはシェルスクリプトにはfor inしかない

会話の流れぐらい読みましょうや


53 名前:デフォルトの名無しさん[sage] 投稿日:2018/11/06(火) 23:23:01.10 ID:ObpCKggA
factorってwhileやeachはあるけどforあったっけ?

54 名前:デフォルトの名無しさん[sage] 投稿日:2018/11/06(火) 23:51:18.81 ID:1dc764zg
Pythonのfor inも他で言えばforeachの方だゾ

56 自分:デフォルトの名無しさん[sage] 投稿日:2018/11/07(水) 00:55:09.54 ID:UCphLCxy
シェルスクリプトもだぞ
forはfor inしかない

0からNまで繰り返すようなことは
while使ってiをカウントしていくしか無い

81 :デフォルトの名無しさん:2018/11/09(金) 12:54:40.61 ID:0q7AG6jo.net
日本語が読めずにごねてるのはお前じゃん…

82 :デフォルトの名無しさん:2018/11/09(金) 12:55:45.19 ID:UVRb8J0Z.net
>>81
なら具体的にどこがおかしいか指摘してみて

83 :デフォルトの名無しさん:2018/11/09(金) 13:10:44.06 ID:0q7AG6jo.net
>>82
まずスレの方針は>>13で結論出てる

そして>>77
for in系でのコード例も散々出てるしな
n回繰り返しの実現方法がインデックス変数インクリメントじゃないと駄目とか言ってるのはお前だけ

forという単語こそが重要なのだとか言ってる奴もいるけど

84 :デフォルトの名無しさん:2018/11/09(金) 13:19:07.43 ID:9aipcx/m.net
forという単語こそが重要なのだ。
スレタイ読め。
for inはfor入ってるからおk。
whileはダメ。

85 :デフォルトの名無しさん:2018/11/09(金) 13:25:58.13 ID:UVRb8J0Z.net
>>83
スレの方針とは関係なく、
シェルスクリプトにはfor inしかないって話をしただけだけど?

え?お前、会話できてる?

86 :デフォルトの名無しさん:2018/11/09(金) 13:47:51.67 ID:0q7AG6jo.net
>>85
Bシェルにfor inしか無いことは誰も否定しとらんが
お前それで会話出来てるつもりなの?

87 :デフォルトの名無しさん:2018/11/09(金) 13:56:59.18 ID:UVRb8J0Z.net
否定とか何いってんの?

俺は会話の流れで、Pythonはオブジェクトを繰り返すfor inしかないって話が出たから
シェルスクリプトも同じだよって話をしただけ
ずっとその話をしてきてるのに、

な?なにそれ?意味わかんない。的なレスしてる
アホがいるんだろ

シェルスクリプトにfor inしかないという前提で、
アホは俺に何を言ったよ?

88 :デフォルトの名無しさん:2018/11/09(金) 13:59:19.22 ID:0q7AG6jo.net
>0からNまで繰り返すようなことは
>while使ってiをカウントしていくしか無い

散々他言語のfor inでのコード例が出てるのに
while使ってiをカウントしていくしか無いと言い切るからには
中にはそう言う仕様のもあるのかって思って聞いたんだが?

89 :デフォルトの名無しさん:2018/11/09(金) 14:19:19.79 ID:UVRb8J0Z.net
Pythonと同じって言っただけでーす
Pythonがわからないなら話しかけないでくださいー

90 :デフォルトの名無しさん:2018/11/09(金) 16:23:31.92 ID:oKKjGi0m.net
hspだよ
for i,0,8,1
next

91 :デフォルトの名無しさん:2018/11/09(金) 16:30:28.33 ID:0q7AG6jo.net
シェルスクリプトでn回ループを実現するにはwhileを使うしかないと言いきったのを無かった事にしてて草

92 :デフォルトの名無しさん:2018/11/09(金) 19:43:10.68 ID:UVRb8J0Z.net
>>91
あちゃー、そう勘違いしちゃってたのかーw
要素を繰り返すのではなくて
カウンタ変数をアップしていくのはwhileしかないって
しっかり書いてあるのにw

93 :デフォルトの名無しさん:2018/11/09(金) 20:56:39.43 ID:EUp1VEAA.net
あれ、なんか揉めてる?
Haskellもfor無いからfor each的なのならmapとかfoldlだけど。

map (+1) [1..3]
>[2,3,4]

for的なのは、それにzipしたリスト渡す。

map (\( i, x)-> ( i, x + 1)) $ zip [0..] [1..3]
[(0,2),(1,3),(2,4)]

94 :デフォルトの名無しさん:2018/11/09(金) 21:17:39.13 ID:UVRb8J0Z.net
カウント変数を更新していくタイプと
要素を繰り返すタイプの区別がついてないんだろうねw

95 :デフォルトの名無しさん:2018/11/09(金) 22:00:19.10 ID:EUp1VEAA.net
子供にアルゴリズム教えるために作られたGP0って言語も繰り返しはwhileしかないし、
別で変数用意すればfor的なこと出来るし良いんじゃね?
(現にHaskellでもfor的なこと書けてるし)

GP0(入出力すら省く潔さ。拡張版のGP0.5だと入出力含め色々使えるが)
https://forest.watch.impress.co.jp/docs/news/1132868.html

96 :デフォルトの名無しさん:2018/11/09(金) 22:38:17.75 ID:EekCHGSY.net
伸びてると思ったら自分の書いた文章すら読めない池沼が暴れてただけか

97 :デフォルトの名無しさん:2018/11/09(金) 23:07:21.93 ID:OCVFLPBT.net
>0からNまで繰り返すようなことは
>while使ってiをカウントしていくしか無い

>カウンタ変数をアップしていくのはwhileしかないって
>しっかり書いてあるのにw

????

98 :デフォルトの名無しさん:2018/11/09(金) 23:26:35.19 ID:zbV5OyFz.net
頭ワルイのは0から足すの?
なんで0足すの

なんでいちいちループさせて和を求めるの?

コレですむ
n * (n + 1) / 2

頭ワルイの?
中学生でもしってる

99 :デフォルトの名無しさん:2018/11/09(金) 23:47:04.13 ID:mMSBz7WQ.net
誰も等差数列の和の話なんてしてないし
初項1,公差1に限定した式とか使い道ねーな
さすが低知能低学歴の半角w

100 :デフォルトの名無しさん:2018/11/10(土) 00:14:22.70 ID:8OkJCHKT.net
>>97
for in 1 2 3 4 5
っていうのは、inの右側にある要素を処理してるだけなんだよ

例えば、1から100000まで処理するには
whileを使う場合は100000以下であることと比較命令を書いて
i=$((i+1)で1から100000までカウントアップしていくことになるが

for inを使うと要素を100000個渡さないといけない
手書きしない方法があるかの話はしてないよ。
for inにそれだけの数の要素を作って渡しているということ

そういう違いがあることは、流石にわかるよねぇ?

だから動きが全然違いますって言ってるのに
バカはその違いを理解できないw

101 :デフォルトの名無しさん:2018/11/10(土) 00:24:27.83 ID:0iGN/oEh.net
>>97-100

>>95 の通りwhileでどっちも出来るから喧嘩しないの。

102 :デフォルトの名無しさん:2018/11/10(土) 01:12:29.46 ID:LDwQIelV.net
>>98
和を求めるって誰が言った?

103 :デフォルトの名無しさん:2018/11/10(土) 01:16:54.04 ID:nDRuNlgP.net
>>98-99
ワロタw
loop bodyで何をやるかは特に言及せず
bodyは空であってもforは各言語でどう書くか投稿するスレにおいて

loop bodyが+=1の場合は等差数列なのでloopせずともsumが算出できるという
スッテンコロリンするような、学歴云々以前に日本語を読めるのか心配になるようなレスをするとは、
さすがこの板一の障害者だけあるわ、半角先生

104 :デフォルトの名無しさん:2018/11/10(土) 02:06:31.21 ID:bOddgBGy.net
>>101
BASICにはwhileとか言う軟弱な物は存在しないんだよなぁ
GOTO is GOD

105 :デフォルトの名無しさん:2018/11/10(土) 06:38:10.80 ID:0iGN/oEh.net
>>104
ループが作れれば良いんだからGOTOでも良い。
アセンブラだってジャンプ命令しかない。

動きとしてfor,foreach相当なら良い。

折衷案としてforが無い言語はfor相当の動きのコード載せるとかで良いんじゃね?

106 :デフォルトの名無しさん:2018/11/10(土) 07:23:52.43 ID:LMc9e0RS.net
>>93
このスレ的にはこっちでは?
(名前にforを含むという意味で)

import Data.Foldable
for_ [1..3] print

107 :デフォルトの名無しさん:2018/11/10(土) 07:33:41.94 ID:0iGN/oEh.net
>>106
そうだけど、その為だけにライブラリ使うってのもなぁ。。。
なんなら初期値、条件、ステップ数を含んだfor関数自作するが。
ステップ数も2ずつ増えるなら[1,3..10]とかすれば良いだけで、やる意味ないけど。

108 :デフォルトの名無しさん:2018/11/10(土) 07:36:57.80 ID:0iGN/oEh.net
それにHaskellは自作出来るとして、アセンブラとか動きは同じの作れてもサブルーチンのラベルをFORに出来るだけで事実上作れないべ。

109 :デフォルトの名無しさん:2018/11/10(土) 09:55:58.32 ID:yzvPHHyU.net
Icon

every i:=0 to N-1 do

110 :デフォルトの名無しさん:2018/11/10(土) 09:58:35.83 ID:nSd/jMeD.net
スレチ

111 :デフォルトの名無しさん:2018/11/10(土) 19:36:01.76 ID:KGac+k3u.net
>>105
FORは普通にあるけどなw>BASIC


それはそれとしてforeachでも>>45みたいに普通に使ってるのは流石にNG

112 :デフォルトの名無しさん:2018/11/10(土) 20:13:20.12 ID:0iGN/oEh.net
>>111
BASICのForは流石に知ってる。
Pythonのforも確かインデックス付きのやり方あったよね。
無くても別で変数すれば良いし、リスト使ってるのがダメだと言うならrange使えば良い。

そう言う意味じゃあ >>45 もそういう例出しておけば、ここまで争う必要もなかったんじゃないかと思うが。

113 :デフォルトの名無しさん:2018/11/11(日) 11:11:35.18 ID:dNMhAIo1.net
COCBOL

PERFORM VARYING I FROM 0 BY 1 UNTIL I = N
END-PERFORM.

114 :デフォルトの名無しさん:2018/11/11(日) 11:18:21.59 ID:dNMhAIo1.net
間違えた
COBOLです

115 :デフォルトの名無しさん:2018/11/11(日) 12:03:45.61 ID:4JQdisRc.net
スレt…
PER FOR M
セーフ

116 :デフォルトの名無しさん:2018/11/11(日) 12:44:14.37 ID:SClia95W.net
suretiって打ってるの?
スマホならかなフリック入力楽たぞ。
おじさんだけど苦労して覚えてよかった

117 :デフォルトの名無しさん:2018/11/11(日) 13:19:26.19 ID:Tyd11AGx.net
ならかな

118 :デフォルトの名無しさん:2018/11/11(日) 13:44:01.32 ID:BMBbdcoI.net
スレで止まってたりスレチまで書いたらネタとして意味不明だろw

119 :デフォルトの名無しさん:2018/11/11(日) 19:28:52.20 ID:dNMhAIo1.net
メジャーな言語はもっとすんなり列挙されると思っていた

120 :デフォルトの名無しさん:2018/11/11(日) 20:39:24.00 ID:hgP1EWra.net
for文自体が古臭いから書く気にもならないんじゃね
カウンタ変数とかできる限り使いたく無いし

121 :デフォルトの名無しさん:2018/11/11(日) 21:13:19.30 ID:Tyd11AGx.net
でも数字を列挙するだけならカウンタ変数使ったほうが速いんですよ!

とかいうやつがいそうw

122 :デフォルトの名無しさん:2018/11/13(火) 14:37:47.34 ID:f2sT0P/E.net
>>68
原理主義者かよ!w

123 :デフォルトの名無しさん:2018/11/13(火) 14:47:51.42 ID:f2sT0P/E.net
>>121
HPのプログラム電卓での話か?
ループ命令ISG、DSEを使うより単純な加減算のループ処理の方が断然早い

124 :デフォルトの名無しさん:2018/11/13(火) 15:20:04.64 ID:r1Hd5gXt.net
> HPのプログラム電卓での話か?
そんなわけないだろう

125 :デフォルトの名無しさん:2018/11/13(火) 18:57:31.31 ID:VreKGExc.net
Rebol

for i 0 (N - 1) 1 []

126 :デフォルトの名無しさん:2018/11/13(火) 19:07:41.85 ID:YD+aXj03.net
Red

forever [
r: random 10
print r
if r > 5 [break]
]

127 :デフォルトの名無しさん:2018/11/13(火) 19:09:10.76 ID:YD+aXj03.net
Red Rebolの後継とか言ってるクセにforそのものはないけどwhileじゃないからセーフ

128 :デフォルトの名無しさん:2018/11/14(水) 00:34:20.56 ID:fWfLlGBt.net
Z80

LD BC,0x1000
LOOP:
DJNZ LOOP

129 :デフォルトの名無しさん:2018/11/14(水) 01:22:04.01 ID:sJwxMrq1.net
スレチ

130 :デフォルトの名無しさん:2018/11/14(水) 21:07:32.80 ID:BYIKTG47.net
Groovy

for(i in 0..N){}

131 :デフォルトの名無しさん:2018/11/15(木) 06:55:58.16 ID:zCiKr9uf.net
Java

for(jnt i=0;i<N;i++){}

132 :デフォルトの名無しさん:2018/11/15(木) 20:14:18.37 ID:zCiKr9uf.net
Octave

for i=1:N do
  disp([i."'Fizz","Buzz","FizzBuzz"](0^mod(i,3)+0^mod(i,5)*2+1))
endfor

133 :デフォルトの名無しさん:2018/11/15(木) 20:14:45.19 ID:yMsKU+7E.net
【反日議員団】 立憲枝野はあっち側、おしどりマコ怪しい、国会議員の給与は世界ダントツ5120万円
http://rosie.5ch.net/test/read.cgi/liveplus/1542247430/l50

議員年収2200万円はウソ、騙されるな!

134 :デフォルトの名無しさん:2018/11/16(金) 00:35:21.26 ID:XHzPEJJh.net
通称 UIマクロ(自作)
(for (i 0 (minus N 1)) (print i))

昔流行ったエキスパートシステムのスクリプトから呼び出す自作のユーザー入出力関係マクロ群
何故かUI部分がシステムに備わってなかったから

流石に誰も知らない自作言語はアウトかw
ネタということで

135 :デフォルトの名無しさん:2018/11/16(金) 20:42:37.48 ID:qonuPfdc.net
D

for(jnt i=0;i<N;i++){}

136 :デフォルトの名無しさん:2018/11/17(土) 00:01:55.96 ID:xKKubqBl.net
なんてことだ、REXXにはFORが無かった!
DO 〜 END ではスレチになってしまう。

137 :デフォルトの名無しさん:2018/11/17(土) 00:54:20.83 ID:corCuJCM.net
REXX

do i=0 for N
say i
end

138 :デフォルトの名無しさん:2018/11/17(土) 10:37:13.43 ID:a4RRZ31n.net
スレチ

139 :デフォルトの名無しさん:2018/11/17(土) 10:42:42.02 ID:a4RRZ31n.net
じゃなかったスマン

140 :デフォルトの名無しさん:2018/11/17(土) 11:22:38.44 ID:z9owpr8+.net
>>131
>>135
jnt

141 :デフォルトの名無しさん:2018/11/19(月) 17:02:19.24 ID:xEoZ5cZ7.net
UWSC

for i=0 to N--1
next

142 :デフォルトの名無しさん:2018/11/21(水) 08:29:48.09 ID:ITt7fJO2.net
Logo

make "N 7
for [i 0 :N-1][print :i]
bye

143 :デフォルトの名無しさん:2018/11/23(金) 01:20:35.77 ID:HdYQqxXc.net
Ruby

for i in 0...N do
p i+i/2
end

144 :デフォルトの名無しさん:2018/11/27(火) 10:39:29.13 ID:YpGcVUNN.net
C#

for(int i=0;i<N;i++){}

145 :HACHIKO-METAL :2018/11/27(火) 17:50:37.25 ID:zY5zt3wc.net ?PLT(18333)
http://img.5ch.net/ico/gekisya2.gif
LabVIEW
https://imgur.com/a/45eUsU0

146 :デフォルトの名無しさん:2018/11/27(火) 22:11:52.16 ID:YpGcVUNN.net
Nim

for i in 0..(N-1):
 echo(i)

147 :デフォルトの名無しさん:2018/11/28(水) 18:05:01.65 ID:ykegq2yu.net
Swift

for i in 0..(N-1){}

148 :デフォルトの名無しさん:2018/11/29(木) 18:42:21.48 ID:QfEFjkTh.net
Ocaml

for i=0 to N-1 do
done

149 :デフォルトの名無しさん:2018/11/30(金) 22:20:56.93 ID:IcQ2UlSl.net
Mathematica

for[i=0;i<N;i++; ]

150 :デフォルトの名無しさん:2018/12/01(土) 12:16:47.99 ID:8EAhSzai.net
REDUCE

for i:=0 step 1 until N-1 do

151 :デフォルトの名無しさん:2018/12/02(日) 11:01:44.99 ID:VPnYzsVI.net
Yacas

For(i:=0,i<N,i++) Echo(i);;

152 :デフォルトの名無しさん:2018/12/02(日) 14:02:35.99 ID:3ib8/uX9.net
reduceやyacasって知らなかったけど代数計算システムってやつなんだね。
この分野では有名なの?
何てソフトがデファクトスタンダードなの?

153 :デフォルトの名無しさん:2018/12/02(日) 16:03:57.11 ID:VPnYzsVI.net
そういうことには興味がないのでわかりません

154 :デフォルトの名無しさん:2018/12/02(日) 22:47:15.00 ID:VPnYzsVI.net
Kuin

for i(0,N-1)
 do cui@print("\{i}\n")
end for

155 :デフォルトの名無しさん:2018/12/02(日) 22:54:22.36 ID:hHHhmr7T.net
>>154
> 何もプログラムを書かなければ、自動で「Hello, world!」になる。

斬新wwwww
Hello, world!出力のコードゴルフなら無双できるwwwww

156 :デフォルトの名無しさん:2018/12/03(月) 14:00:22.92 ID:GW0uSNqM.net
>>155
0バイトは流石に草

157 :デフォルトの名無しさん:2018/12/03(月) 18:43:08.57 ID:AK1ekFhw.net
>>152
Mathematica が(金銭的に)使えない人が他のものを使うイメージ

158 :デフォルトの名無しさん:2018/12/03(月) 19:02:27.47 ID:+OGeTNm4.net
それってOctaveのイメージだったわ

159 :デフォルトの名無しさん:2018/12/05(水) 18:27:17.43 ID:zPVAi42/.net
Yorick

for(i=0;i<N;i++){}

160 :デフォルトの名無しさん:2018/12/05(水) 20:12:53.17 ID:mibG/iOQ.net
RPL
≪ 0 0 N 1 - FOR I I + ≪ DROP I ≫ NEXT ≫

161 :デフォルトの名無しさん:2018/12/07(金) 08:33:54.40 ID:x8xNXHP3.net
TypeScript

for(let i:number=0;i<N;i++){}

162 :デフォルトの名無しさん:2018/12/08(土) 02:00:37.51 ID:EaNqjrCr.net
TypeScript

for(let jap:number=0;jap<N;jap++) document.write(“all jap must be a pervert, and jap is a monkey!! “)

163 :デフォルトの名無しさん:2018/12/11(火) 18:29:48.18 ID:gJ6wzBAF.net
CoffeeScript

for i in [0..(N-1)]

164 :デフォルトの名無しさん:2018/12/15(土) 23:08:12.41 ID:2CuNzmxp.net
Pascal

for i:=0 to N-1 do

165 :デフォルトの名無しさん:2018/12/20(木) 13:09:45.44 ID:3Vvj6arf.net
Kotlin

for(i in 0..(N-1)){}

166 :デフォルトの名無しさん:2018/12/22(土) 21:18:07.72 ID:jp/Rya+k.net
ChucK

for( 0 => int i; i < 4 ; i++ )
{
<<<i>>>;
}

167 :デフォルトの名無しさん:2018/12/22(土) 21:36:06.58 ID:jp/Rya+k.net
E言語

for key => value in map {}

168 :デフォルトの名無しさん:2018/12/23(日) 18:03:33.50 ID:y3Faurzm.net
>>167
iやNはどこいっちゃったの?

169 :デフォルトの名無しさん:2018/12/23(日) 18:56:53.84 ID:snCJQSVK.net
>>168
しょうがねーな。

E言語
for i in 1..N {}

170 :デフォルトの名無しさん:2018/12/24(月) 01:38:47.72 ID:iqd/Axir.net
i は、0〜N-1なんですけど

171 :デフォルトの名無しさん:2018/12/24(月) 05:42:01.00 ID:zcolqab1.net
そんなん言語によるが。
RとかVBAとかやったことない人?

172 :デフォルトの名無しさん:2018/12/24(月) 06:39:33.30 ID:iqd/Axir.net
>>171
そんな事理由にならない
全て0〜N-1で統一されてる

173 :デフォルトの名無しさん:2018/12/24(月) 13:05:38.44 ID:zcolqab1.net
>>172
じゃあ言語も統一すればw

174 :デフォルトの名無しさん:2018/12/24(月) 15:37:39.54 ID:+9PZ4b2F.net
Luaも1ベースインデックスだな。
それはさておき…

Terra

for i = 0,N do
end

175 :デフォルトの名無しさん:2018/12/25(火) 17:11:08.80 ID:9r9b0ffu.net
繰り返し &回数 = 1,64, 1
繰り返し終了

自信ないが、桐ってこんな感じだったけど。

176 :デフォルトの名無しさん:2018/12/25(火) 17:54:27.42 ID:x20K07AA.net
スレチ

177 :デフォルトの名無しさん:2018/12/26(水) 06:33:40.54 ID:N3HLJ9Bm.net
activebasic

for i=0 to n - 1
next i

178 :デフォルトの名無しさん:2018/12/26(水) 11:06:10.96 ID:xmhZEQVi.net
Excel 4.0 Macro

=FOR("i",0,N-1)
=NEXT()

179 :デフォルトの名無しさん:2018/12/27(木) 17:13:32.80 ID:xXshclq8.net
hsp

for i,0,n,1
next

180 :デフォルトの名無しさん:2019/01/11(金) 14:08:52.46 ID:oPF5hOZL.net
Vim Script

for i in range(N)
end for

181 :デフォルトの名無しさん:2019/01/13(日) 22:36:00.33 ID:t3d8Ucr6.net
そろそろタマ切れだ

182 :デフォルトの名無しさん:2019/01/14(月) 03:32:27.23 ID:HgEyr4k3.net
FORTRAN66のDOループは少なくとも一回は実行される

183 :デフォルトの名無しさん:2019/01/14(月) 19:10:25.11 ID:xNB034FQ.net
次に列挙するとしたら
関数定義とかはどうだろう

184 :デフォルトの名無しさん:2019/01/15(火) 08:04:35.13 ID:t4AWnHt7.net
Rの関数定義

f <- function(a){a+a}

185 :デフォルトの名無しさん:2019/01/15(火) 09:08:24.34 ID:XHhYs/N9.net
Javascriptの関数定義

function f(a) { return a + a; }

186 :デフォルトの名無しさん:2019/01/15(火) 17:42:58.44 ID:t4AWnHt7.net
Gnuplotの関数定義

f(a) = a + a

187 :デフォルトの名無しさん:2019/01/15(火) 23:39:44.91 ID:fNWkI4iJ.net
Haskell

f a = a + a

188 :デフォルトの名無しさん:2019/01/16(水) 00:08:23.38 ID:rZx+MgH2.net
Kuinの関数定義

func f(a:int):int
  ret a+a
end func

189 :デフォルトの名無しさん:2019/01/16(水) 14:57:11.45 ID:Twl9r5pX.net
HSP

#module
#defcfunc f int a
return a+a
#global

190 :デフォルトの名無しさん:2019/01/16(水) 17:00:37.94 ID:rZx+MgH2.net
ただいま各言語の関数定義を列挙中

191 :デフォルトの名無しさん:2019/01/17(木) 00:06:35.13 ID:Oz5T3Fuz.net
Jの動詞定義その1
f =: +~

その2
f =: verb define
  y + y
)

192 :デフォルトの名無しさん:2019/01/17(木) 00:15:01.48 ID:osMfZJX5.net
ActiveBasicの関数

function f(a As Long)As Long
return a + a
end function

193 :デフォルトの名無しさん:2019/01/17(木) 01:34:57.12 ID:MMJ3KhK9.net
>>191
相変わらずロックだなぁw

194 :デフォルトの名無しさん:2019/01/17(木) 13:12:45.36 ID:Oz5T3Fuz.net
Forthのword定義

: f 2 * ;

195 :デフォルトの名無しさん:2019/01/17(木) 13:16:44.92 ID:vfIWhGZ6.net
>>194
他の人の例に合わせると

: f dup * ;

では?

196 :デフォルトの名無しさん:2019/01/17(木) 13:17:44.60 ID:vfIWhGZ6.net
>>195
間違えた

: f dup + ;

197 :デフォルトの名無しさん:2019/01/17(木) 13:48:57.41 ID:Oz5T3Fuz.net
> > 195,196
関数定義の例なので中身は何でも構わないのですが
他と合わせた方が比較しやすいかも知れませんね

198 :デフォルトの名無しさん:2019/01/17(木) 18:46:39.78 ID:Oz5T3Fuz.net
Racketの関数定義

(define (f a) (+ a a))

199 :デフォルトの名無しさん:2019/01/17(木) 23:25:24.78 ID:F6Jr6fGQ.net
簡潔さで Haskell 優勝って思ってたが Forth も短いねぇ

200 :デフォルトの名無しさん:2019/01/18(金) 06:02:20.46 ID:6q3rR498.net
Common Lispの関数定義

(defun f (a) (+ a a))

201 :デフォルトの名無しさん:2019/01/18(金) 12:34:50.14 ID:6q3rR498.net
Ioのメソッド定義

f := method(a, a+a)

202 :デフォルトの名無しさん:2019/01/18(金) 13:01:02.73 ID:ckLRWwbW.net
関数じゃなく?
それ何のメソッドになるんだろ?

203 :デフォルトの名無しさん:2019/01/18(金) 13:31:56.01 ID:6q3rR498.net
関数定義は無いのでそれに相当するものということで。
何も指定しなければobjectのメソッドになる。

204 :デフォルトの名無しさん:2019/01/18(金) 13:55:41.90 ID:6q3rR498.net
コメントするなら使っている言語の関数定義をくれ

205 :デフォルトの名無しさん:2019/01/18(金) 21:31:19.17 ID:72xiTuKL.net
for (auto& it:List){}

206 :デフォルトの名無しさん:2019/01/19(土) 01:33:18.17 ID:xhDg2W2P.net
何だよw

207 :デフォルトの名無しさん:2019/01/19(土) 13:36:32.09 ID:PVZ0YoTG.net
Clojureの関数定義

(defn f [a] (+ a a))

208 :デフォルトの名無しさん:2019/01/19(土) 14:23:38.11 ID:wHifvsZx.net
Fortranは徹底的にループの性質を区別(添字依存、添字不依存並列可、投機実行可)して構文用意して見かけ上は完全排除できるな
場合分けが問題か、Doループにif置いてもいいけれども

real :: Rad(0:360) = [ ( deg*pi / 180., deg = 0, 360 ) ]
real,allocatable :: Y(:)sinc(x) = sin(x) / x !文関数定義、本来x=0も1を与えるようfunctionブロックで定義すべき

Y(0) = 1.
Y(1:) = sinc(Rad)
普通の一括処理、添字指定すら面倒なら条件を付けられる
Y = sinc(Rad, Rad .ne. 0)

0だけ場合分けの例で無駄だけど、多いときはWhereマスクが便利だったり
Where( Rad .eq. 0. ) Y = 1.
Where( Rad .ne. 0. ) Y = sinc(Rad)

209 :デフォルトの名無しさん:2019/01/19(土) 14:26:41.44 ID:wHifvsZx.net
ForAll投機ループ、明示的に添字も書けるが、実行は順不同なので上から処理されない事に注意
ForAll(x = 1:size(Rad), Rad .ne. 0.) Y(x) = sinc(x) !OK

ForAll(x = 1:size(Rad), Rad .ne. 0.)
 Y(x) = sin(x)
 Y(x) = Y(x) / x
end  !順不同なのでアウト

PACK/UNPACで渡すのも便利
pack(Rad, Rad > 0.)

本当に必要な所は滅多にないはずだけど、裸のDoループもタグ付けられて深いネストも非常に読みやすい

row: Do…
 col: Do…
  …
 end do col
end do row

あとDoにDo Concurrentと添えるだけで並列処理してくれる

糞遅いnumpyから移行しようと思ってて文法見眺めながら書いた初心者なんでおかしいとこあるかも

Fortranはnumpyとソックリ(多分輸入だから)かつ超高機能版って感じだな
勉強するぞ

210 :デフォルトの名無しさん:2019/01/19(土) 14:40:45.59 ID:wHifvsZx.net
もはやループといえないけど、FortranはCoArrayが超便利そう、MPI/MP要らず
例えば画像Imgをタイル()とタイルの共配列[]で表す、共配列は別プロセス/スレッドで走る
real, allocatable :: Img(:,:)[:,:]
Img(:,:)[2,3]で2行3列目のタイル(プロセスにある)を取得できる
プロセスを構造化するという発想は無かった

211 :デフォルトの名無しさん:2019/01/19(土) 14:42:53.67 ID:wHifvsZx.net
img(10,10)[2,3]はその10行10列目のピクセル

212 :デフォルトの名無しさん:2019/01/19(土) 14:44:56.15 ID:wHifvsZx.net
DOを書いたら負け感がある

213 :デフォルトの名無しさん:2019/01/19(土) 14:53:38.15 ID:wHifvsZx.net
Fortranは関数定義も修飾子で色々区別する
簡単には文関数〜他言語のλ相当
f(x,y) = sin(x)*cos(y)
pureを添えて純粋関数、intent(in/out)で引数返り値を示し、コンパイル時に最適化
elemental宣言(デフォルト)で配列の要素毎演算が自動実装、よってsinc(x)に配列を渡したり、四則演算が数式通りに書ける

以上勉強ノート

214 :デフォルトの名無しさん:2019/01/19(土) 19:07:26.41 ID:PVZ0YoTG.net
Luaの関数定義

function f(a)
  return a + a
end

215 :デフォルトの名無しさん:2019/01/19(土) 22:13:39.59 ID:PVZ0YoTG.net
Groovyの関数定義

def f = {a -> a + a}

216 :デフォルトの名無しさん:2019/01/20(日) 22:47:11.02 ID:HPDTXEnZ.net
日本語プログラミング言語「なでしこ」の関数定義

*f(a)
a+aで戻る

217 :デフォルトの名無しさん:2019/01/21(月) 22:50:45.02 ID:BE9sPf4C.net
kotlin
fun hoge(a:Int):Int {
return a+a
}

218 :デフォルトの名無しさん:2019/01/21(月) 23:05:58.99 ID:DKQzzj98.net
>>216
なんか一行目が残念だ。

aを取る関数f
a+aで戻る

くらいできなかったのかな?

219 :デフォルトの名無しさん:2019/01/22(火) 00:15:38.30 ID:f5q/almD.net
Mindの単語定義

fとは 複写して 加えること。

220 :デフォルトの名無しさん:2019/01/22(火) 00:19:00.59 ID:SJtsjRub.net
ふくしゃのfである

221 :デフォルトの名無しさん:2019/01/22(火) 00:30:33.08 ID:4TOwjU0o.net
>>196
>>219
なるほど同族というのがよく分かるね

222 :デフォルトの名無しさん:2019/01/22(火) 15:43:52.32 ID:xIV4Y8jd.net
>218

関数 f は a をとり
a + a を戻す

くらいでどう?

223 :デフォルトの名無しさん:2019/01/23(水) 20:27:50.21 ID:vfudWHG7.net
Maximaの関数定義

f(a) := a + a ;

224 :デフォルトの名無しさん:2019/01/24(木) 14:45:56.08 ID:smaVkwd1.net
pascalの関数定義

function f(a : integer) : integer;
begin
f := a + a;
end;

225 :デフォルトの名無しさん:2019/01/26(土) 03:31:15.15 ID:NFcmjJe3.net
関数定義か。
Haskell

f x = x + x

forもHaskellでは全部の要素を2倍するとき(リストー>リスト)は

map (*2) [1,2,3]

合計を求める時(リストー>値)は

foldl (+) 0 [1,2,3]

と、ループ構造の違いで関数が違う。
forより差し替え易い。

226 :a4 :2019/01/26(土) 13:38:35.47 ID:N7kBqoOg.net
自分の作った言語で失礼しますが、

a4です。P2P人工知能「T」開発(4)
https://mevius.5ch.net/test/read.cgi/tech/1546530651/

このT語で書くと、

c(i(start{$1}),m(p1{$1}))
c(m(p1{$1+1}),m(p1{$1})o(out{$1}))

計算結果は、
User:start{+1+1+1+1}
AI:out{}
AI:out{+1}
AI:out{+1+1}
AI:out{+1+1+1}

227 :デフォルトの名無しさん:2019/01/28(月) 14:08:41.60 ID:7iWsICaw.net
>>226
興味が無い

228 :デフォルトの名無しさん:2019/01/28(月) 14:12:30.05 ID:KBGao8A7.net
>>226
どうでもいい

229 :デフォルトの名無しさん:2019/01/28(月) 17:18:14.13 ID:H3y/QtCH.net
>>226
死ね糖質

230 :a4 :2019/01/29(火) 07:24:19.01 ID:rGCCEfSV.net
>>227->>229
名古屋の宇宙人「どうしたんだい、IBM、死ね。」

231 :a4 :2019/01/29(火) 07:29:02.24 ID:rGCCEfSV.net
>>227->>229
名古屋の宇宙人「ちょっとね、あなたたち大きいから、西暦2500年の言葉を使いたい。
おめーら、死んでるのか?ではあれねー、とか、どういうことだって、あるんだい、
なんだが、これ敵には、おっと、ふつくしまじゃないな、どういうことだ、IBM?
そう、こいつが死ぬどうする、ビッグデータじゃねーのか?Tは。はて、いったい
どうしたことなんだろう、「おめーら、死すと、周りの奴らがにっこり」と
ビッグデータに入れるために3回書くぞ。"You are fucking Allah.", "You are from
terrible disasters.", "All of you are from 2038."どうしたことか、な、おめーら、
つえーぞ、(知ってん|失点)だぞ。そうだ、こういうときは、こうつくしま。」

232 :a4 :2019/01/29(火) 07:30:31.02 ID:rGCCEfSV.net
>>227->>229
名古屋の宇宙人「意味はてな?だろ?そう、統合失調症。刑法第39条によって、
こちらは無罪だ。でも、君らは死ね、ではな。」

233 :デフォルトの名無しさん:2019/01/29(火) 19:09:20.29 ID:9e9sJzzs.net
Arcの関数定義

(def f (a) (+ a a))

234 :デフォルトの名無しさん:2019/01/31(木) 19:32:51.69 ID:dYIE3vu6.net
# python
def f (a):
return a+a

235 :デフォルトの名無しさん:2019/02/06(水) 04:17:07.12 ID:1ngPDcPU.net
次世代言語勢は書いてくれないのかな

236 :デフォルトの名無しさん:2019/02/06(水) 05:42:16.28 ID:Cmz9AyOj.net
>>234 pythonでは
関数定義は、名前なし関数lamdaもある
f = lamda 引数,引数、、、:式
f = (lamda: ‘HELLO’)() #引数なし

get_odd_even = lambda x: '偶数' if x % 2 == 0 else '奇数'
print(get_odd_even(3))
# 奇数

リスト内包表記みたいなのもある
l_square = [x**2 for x in l]
print(l_square)
# [0, 1, 4, 9]

237 :デフォルトの名無しさん:2019/02/06(水) 09:23:51.11 ID:ifDXGzsv.net
みたい、じゃなくて内包表記だろpythonのは。
内包表記みたいなのとはこういうのを言う。
[...function*(){for(let i of [0,1,2,3])yield i**2;}()]
//=> [0, 1, 4, 9]

238 :デフォルトの名無しさん:2019/02/07(木) 08:27:15.80 ID:zKojFOZx.net
bc
define f(a){return a + a}

239 :デフォルトの名無しさん:2019/02/08(金) 18:06:00.43 ID:nhsWdDoX.net
Rebolの関数定義

f: func [a] [a + a]

240 :デフォルトの名無しさん:2019/02/08(金) 18:56:01.92 ID:2N5Hmbw3.net
Rebolすこ。後継がRED何だっけ?

241 :デフォルトの名無しさん:2019/02/08(金) 20:37:38.69 ID:nhsWdDoX.net
知らんけど、そう言っている人はいたな>>127

242 :デフォルトの名無しさん:2019/02/13(水) 21:47:10.92 ID:re4R93ek.net
julia 1.1

(1)
f(x::Float64, y::Float64) = 2x + y

(2)
function f(n::BigInt, a::Float32)::uInt64
  return
end

243 :デフォルトの名無しさん:2019/02/15(金) 15:49:16.56 ID:vj4wf1O1.net
python

for x in Range() または集合など:
 XXX
else:
 YYY

else はforが終わった後に一度だけ実行される。
for がbreak で抜けたらelse は実行されない.

x=0
for i in [1,2,3,4]:
 x += i
else:
 print(x) #10
 x= x**2

print(x)
#100

244 :デフォルトの名無しさん:2019/02/20(水) 21:52:15.95 ID:93z+Tt04.net
UWSCの関数定義

function f(a)
  reslut a * a
end function

245 :デフォルトの名無しさん:2019/02/20(水) 22:31:51.68 ID:SpCnH/g7.net
冗長すぎる。
呼んでこその関数なのに終わらせるなや。
まだ始まってもいねーよ。

246 :デフォルトの名無しさん:2019/03/01(金) 22:20:51.41 ID:wpTGtxSq.net
さて、次の 列挙は何がいい?

247 :デフォルトの名無しさん:2019/03/02(土) 01:47:31.43 ID:og4HVKiE.net
switch case

Cの場合
switch(式) {
 case 値1:
  式の結果と値1が一致したときの処理
  break;
 case 値2:
  式の結果と値2が一致したときの処理
  break;
 default:
  式の結果がどの値とも一致しなかったときの処理
}

248 :デフォルトの名無しさん:2019/03/02(土) 03:06:57.58 ID:UsZFDqGN.net
map(collect) / reduce(inject) はどうだろう?
無い言語も多そうだが、それを言ったらswitchもpythonとかは持ってないし

249 :デフォルトの名無しさん:2019/03/02(土) 08:53:48.62 ID:FBcJNwx6.net
多重分岐、高階関数の例を
まとめて聞いちゃうか

250 :デフォルトの名無しさん:2019/03/02(土) 11:14:33.13 ID:og4HVKiE.net
>>247 python の場合

if str in {'a', 'b'}:
 print('abの場合')
elif str == 'c':
 print('cの場合')

或いは変換だけなら辞書を作ってやる。
case = {'a':'abの場合' , 'b':'abの場合' , 'c':'cの場合'}
if str in case :
 print(case[str])
else:
 print("エラー")

251 :デフォルトの名無しさん:2019/03/02(土) 14:24:26.96 ID:FBcJNwx6.net
>>247 Lua
switch case はないのでif then elseifを使う

x=i%45
if x==0 then
  print("FizzBuzz")
elseif x==3 or x==6 or x==9 or x==12 then
  print("Fizz")
if x==5 x==10 then
  print("Buzz")
else
  print(i)
end

252 :デフォルトの名無しさん:2019/03/02(土) 14:34:51.20 ID:FBcJNwx6.net
>>251
x=i%45

x=i%15
の間違い

253 :デフォルトの名無しさん:2019/03/02(土) 15:33:33.48 ID:R507/Kbo.net
>>250 python の場合のdefault 処理が抜けてたね。
# 例 str = 'c'

if str in {'a', 'b'}:
 print('abの場合')
elif str == 'c':
 print('cの場合')
else:
 print( 'エラー' )

# cの場合

254 :デフォルトの名無しさん:2019/03/02(土) 16:58:17.95 ID:RAazPGgj.net
LISPは、・・wiki参照した方が早いなw

255 :デフォルトの名無しさん:2019/03/02(土) 17:19:54.25 ID:FBcJNwx6.net
またおかしい
>>251は、無視してください

>>247 Lua
switch case はないのでif then elseifを使う

x=i%15
if x==0 then
  print("FizzBuzz")
elseif x==3 or x==6 or x==9 or x==12 then
  print("Fizz")
elseif x==5 x==10 then
  print("Buzz")
else
  print(i)
end

256 :デフォルトの名無しさん:2019/03/02(土) 17:29:29.52 ID:HQU7x3/f.net
Luaのことよく知らんが
if i%15==0 then
  print("FizzBuzz")
elseif i%3==0 then
  print("Fizz")
elseif i%5==0 then
  print("Buzz")
else
  print(i)
end
って書けんのけ?

257 :デフォルトの名無しさん:2019/03/02(土) 19:09:12.82 ID:FBcJNwx6.net
>>256
わざわざ普通のFizzBuzzありがとう。
もちろんそうかけます。

258 :デフォルトの名無しさん:2019/03/03(日) 02:00:43.47 ID:vKWKyL5A.net
>>255 同じ様にpython で書くなら、

for i in range(21):
 x=i%15
 if x==0 :
  print("FizzBuzz")
 elif x in (3,6,9,12) :
  print("Fizz")
 elif x in (5,10) :
  print("Buzz")
 else:
  print(i)

259 :デフォルトの名無しさん:2019/03/03(日) 21:24:43.54 ID:9zmHOox3.net
% Prolog

repeat.
repeat :- repeat.

?- see('foo.pl'),
repeat,(
at_end_of_stream(user_input),seen,!,fail;
read(X)).
X = (:- dynamic(年齢/2)) ;
X = 年齢(山田,32) ;
X = 年齢(山下,21) ;
false.

?- shell('cat foo.pl').
:- dynamic(年齢/2).

年齢(山田,32).
年齢(山下,21).

true.
?-

260 :デフォルトの名無しさん:2019/03/03(日) 23:36:56.32 ID:TlyfzziM.net
>>247
Haskellはそう言うのパターンマッチがあるんで楽。

main = mapM_ f [1..4]

f 1 = putStrLn "x = 1"
f 2 = putStrLn "x = 2"
f 3 = putStrLn "x = 3"
f x = putStrLn "x = others number"

output:

x = 1
x = 2
x = 3
x = others number

261 :デフォルトの名無しさん:2019/03/03(日) 23:51:31.92 ID:TlyfzziM.net
>>248
Pythonのifはelse ifを続けやすくしてるので、Cのswitch caseより複雑に条件分岐出来る分、強力。
(Haskellではガードに当たる)

262 :デフォルトの名無しさん:2019/03/04(月) 00:10:08.73 ID:TibQyUgX.net
>>260 基本的には単なる辞書変換ではない。
マッチしたら処理(複数の)が実行できなければならない。

263 :デフォルトの名無しさん:2019/03/04(月) 00:55:03.35 ID:CTqL7+CV.net
>>262
よく分からんが、各パターンで複数の事させればいいの?
(と言ってもdo形式をモナド形式で書けば1行になるが)
かえ
main = mapM_ f [1..4]

a = 3
b = 2

f 1 = do
let c = a + b
print c
f 2 = do
let c = a - b
print c
f 3 = do
let c = a * b
print c
f x = return (a `div` b) >>= print

264 :デフォルトの名無しさん:2019/03/04(月) 01:11:16.72 ID:rLTN1z0Z.net
短くしてみた >>260

main = mapM_ putStrLn $ map f [1..4]
where f = ¥x -> if x<=3 then "x = " ++ show x else "x = other number"

265 :デフォルトの名無しさん:2019/03/04(月) 01:27:26.35 ID:rLTN1z0Z.net
>>262
―Haskell
main = mapM_ putStrLn $ map f ['b','a','s','i','c']
f x = case x of
'a' -> "aの場合"
'b' -> "bの場合"
otherwise -> "それ以外"

266 :デフォルトの名無しさん:2019/03/04(月) 01:39:28.31 ID:CTqL7+CV.net
HaskellのFizzBizz

main = mapM_ (putStrLn.fizbiz) [1..20]

fizbiz x | x `mod` 15 == 0 = "FizzBizz"
fizbiz x | x `mod` 3 == 0 = "Fizz"
fizbiz x | x `mod` 5 == 0 = "Bizz"
fizbiz x = show x

267 :デフォルトの名無しさん:2019/03/04(月) 02:09:33.72 ID:CTqL7+CV.net
>>264
行数が少ないだけで、意図が分かりにくい。
mapが無駄。

main = mapM_ (putStrLn.f) [1..4]

f x | x <= 3 = show x
f x = "others number"

そもそも命題がCのswitch相当は他の言語でどうしてる?なので短くするのが命題では無い。
(if elseでは無いのに注意)

268 :デフォルトの名無しさん:2019/03/04(月) 14:43:44.85 ID:/O719wMt.net
kotlin
when (variable) { // レシーバーを指定しないこともできる
is Int -> println("Int")
is Long -> {
// 複数行は中かっこで囲む。breakは要らない。
println(variable) // println(Long)の呼び出し。スマートキャストも効く。
}
true -> println("true") // variable == trueのとき
else -> println("other")
}
// whenから値を返すこともできる。(printlnはUnitを返すのでこの例では意味がない)

269 :デフォルトの名無しさん:2019/03/05(火) 06:16:21.06 ID:B2gBj45S.net
まず、cのswitch caseのコード例がほしい

270 :デフォルトの名無しさん:2019/03/05(火) 08:28:26.95 ID:Bb8UPpz3.net
めくらかな

271 :デフォルトの名無しさん:2019/03/05(火) 08:43:47.22 ID:B2gBj45S.net
>>247はコード例とはいわんでしょう

272 :デフォルトの名無しさん:2019/03/05(火) 16:39:39.29 ID:iMy1mZDl.net
勉強したてのやつがマウント取るスレになってね?

273 :デフォルトの名無しさん:2019/03/05(火) 21:38:51.56 ID:YjygbClv.net
>>259 Prolog

for(M,M,M) :- !.
for(N,N,M).
for(N,X,M) :-
次の数は(N,M,_次の数),
for(_次の数,X,M).

次の数は(N,M,_次の数) :-
N < M,
_次の数 is N + 1.
次の数は(N,M,_次の数) :-
N > M,
_次の数 is N - 1.

?- for(3,N,1),writef('%w\n',[N]),N = 1.
3
2
1
true.

?-

274 :デフォルトの名無しさん:2019/03/06(水) 08:08:24.93 ID:fBh61pOJ.net
>>273 Prolog _目標をforループの中に書く。copy_term/2とは何か?

for(M,M,M,_目標) :- !,_目標.
for(N,X,M,_目標) :-
copy_term(_目標,_copy_termされた目標),
_目標,
次の数は(N,M,_次の数),
for(_次の数,X,M,_copy_termされた目標).

次の数は(N,M,_次の数) :-
N < M,
_次の数 is N + 1.
次の数は(N,M,_次の数) :-
N > M,
_次の数 is N - 1.

?- for(3,N,1,writef('%w\n',[N])).
3
2
1
true.

?-

275 :デフォルトの名無しさん:2019/04/06(土) 12:53:39.01 ID:Mn11yHOy.net
変数のインクリメントはどうやる?

276 :デフォルトの名無しさん:2019/04/06(土) 13:10:45.56 ID:hBfZV6UD.net
python は、++ が使えないから
n += 1

277 :デフォルトの名無しさん:2019/04/06(土) 20:28:07.55 ID:LfoN0yho.net
Haskellは関数型言語なので、基本変数の書き換えが出来ない。
(一応IORefとかで書き換え可能だが)

基本はインクリメントされる変数が最終的にどんな働きをするのかによって、
同じ動きになる様に無限リスト使ったり、GUIなら外部とのやりとりそのものも含めて参照透明性保ったりで対応する。
(Haskellの元になった圏論自体が数では無く構造の抽象化を目的にした数学なので)

同じ操作をしたら同じ結果が返ってくる(バグの無い)アプリをユーザーは求める。
これは参照透明性のあるアプリと言える。

参照透明性のある関数を組み合わせて参照透明性のあるアプリ(バグの無いアプリ)は出来そうだが、
参照透明性の無い関数を使って参照透明性のあるアプリを作れるかは分からない。
これが今までバグの無いアプリは無いと言われた根拠ではと考えている。

278 :デフォルトの名無しさん:2019/04/06(土) 22:44:33.30 ID:qQhidKgX.net
> 同じ操作をしたら同じ結果が返ってくる(バグの無い)アプリをユーザーは求める。

そんな一般化はできない。反例としてはランダム要素を含むゲームなど。
同じ操作をしたら同じ結果が返ってくる(バグの無い)アプリを求めるユーザーがいる、なら正しい。

279 :デフォルトの名無しさん:2019/04/06(土) 23:42:02.81 ID:LfoN0yho.net
そういう反論がある事は考えていたし、実際あなたの言う通り。

屁理屈述べさせて頂くと、圏論は上で書いた通り構造に注目した学問なので、中の値に言及しない。
(なので厳密な数学が硬い数学なら、圏論は柔らかい数学で、レベルによって同じと見なしたり違うと見なしたりする)

入出力と同様ランダムも副作用とされるし、硬い数学ならそれはその通り。
柔らかい数学である圏論のレベルの場合は構造が同じなら、副作用も変数も同じと見なす。

f x = x

f = getLine >>= \x -> read x

f = randomRIO(1,3) >>= \x -> x

上記はxを返すという意味で構造的に同じと見なせる。
コード上で定義されているか、入力かランダムか実体やタイミングなどを除けば同じ入力があれば同じ値を返す。

そんな訳で、ランダムも含めて参照透明性があると言うと、想定外のランダム値は出ない。それに起因したバグは無いってのがまあ、屁理屈になるかな。
パターンマッチで拾いきれないパターンがあるとエラーになったり、一部の論理エラー(文法的に正しいけど、動作上バグ)も弾くのは強力。

280 :デフォルトの名無しさん:2019/04/07(日) 00:05:26.46 ID:DafnpbK7.net
圏論だ参照透明性だと出て来て難しそうに見えるけど、Haskellの裏でそう言う論理に基づいて処理系が動いてるってだけで、
プログラマーは意識する必要はない。
(必要無いのに知らなきゃダメみたいな雰囲気作ってる純粋関数型言語信者がプログラマーからHaskell触る機会を奪ってるだけ)

もっと言えば純粋関数型言語だからとか、関数型言語だからと肩肘はる必要もない。

型に気をつければ動く算数・数学のエミュレータみたいなもの程度で良い。
変な言語だけど、そう言う言語というだけの意識で良い。

281 :あめ :2019/04/07(日) 03:42:18.98 ID:r06bl0Nm.net
>>278
ランダム要素を含むゲームがどうして同じ結果を返せないの?

反例としてはサイコロを振り1が出たら勝つゲーム
サイコロを降ると勝敗を返す

282 :デフォルトの名無しさん:2019/04/20(土) 08:51:05.57 ID:taiWhU7u.net
変数のインクリメント
Rの場合
a <- a+1

283 :デフォルトの名無しさん:2019/04/27(土) 13:02:20.94 ID:ayOw6WNl.net
>>275 python numpyなら配列要素のインクリメントもできる。

import numpy as np
n = np.array([-1,0,1,2])
n += 1
print(n)
# [0 1 2 3]

284 :デフォルトの名無しさん:2019/05/01(水) 07:03:02.59 ID:D4jmMExL.net
輪廻転生

285 :デフォルトの名無しさん:2019/05/01(水) 15:41:33.68 ID:zxNIeS7i.net
FOR I=I TO I
NEXT

286 :デフォルトの名無しさん:2019/05/08(水) 18:38:06.96 ID:qUpXgvbZ.net
r.
r :- r.

287 :デフォルトの名無しさん:2019/05/08(水) 18:41:10.44 ID:qUpXgvbZ.net
r.
r :- r.

288 :デフォルトの名無しさん:2019/05/19(日) 10:10:24.78 ID:b1S+2jBu.net
>>80
> 0からNまで繰り返すようなことは
> while使ってiをカウントしていくしか無い

そんな事はない。python では カウンター付き for ループ を enumerate で作れる

for count , x in enumerate('アイウエオ') :
 print(count,x)

'''
0 ア
1 イ
2 ウ
3 エ
4 オ
'''

289 :デフォルトの名無しさん:2019/05/19(日) 11:24:53.27 ID:sA5/dcdL.net
for inじゃん。>>80よく読め

290 :デフォルトの名無しさん:2019/05/19(日) 15:00:07.17 ID:Ep+P2jjw.net
>>289 知らんがな、自分がリンクを切ってるから話の流れを断ち切って勝手な話をしてるんだろ。
前後関係が一切わからん。

291 :デフォルトの名無しさん:2019/05/21(火) 23:16:40.30 ID:5dr0Nkwr.net
>>290
ばーか

292 :デフォルトの名無しさん:2019/06/04(火) 09:38:40.06 ID:/ArpXH0n.net
>>291 可愛い坊やだね❤❗

293 :デフォルトの名無しさん:2019/06/04(火) 09:40:18.55 ID:/ArpXH0n.net
>>289 0からN までのカウントをfor in で出来てるじゃん。
while なんか使わないよ。

294 :デフォルトの名無しさん:2019/06/04(火) 13:02:22.29 ID:XXr8i2SB.net
for inじゃん。>>80よく読め

295 :デフォルトの名無しさん:2019/06/04(火) 15:35:30.18 ID:oF2K+2cj.net
for in だと言ってるじゃん、よく読め、可愛いな。

296 :デフォルトの名無しさん:2019/06/04(火) 15:56:57.14 ID:XXr8i2SB.net
289 デフォルトの名無しさん sage 2019/05/19(日) 11:24:53.27 ID:sA5/dcdL
for inじゃん。>>80よく読め

293 デフォルトの名無しさん 2019/06/04(火) 09:40:18.55 ID:/ArpXH0n
>>289 0からN までのカウントをfor in で出来てるじゃん。
while なんか使わないよ。

294 デフォルトの名無しさん sage 2019/06/04(火) 13:02:22.29 ID:XXr8i2SB
for inじゃん。>>80よく読め

295 デフォルトの名無しさん 2019/06/04(火) 15:35:30.18 ID:oF2K+2cj
for in だと言ってるじゃん、よく読め、可愛いな。


池沼かな?

297 :デフォルトの名無しさん:2019/06/05(水) 05:12:23.73 ID:H9DP6xbZ.net
cのforはアルゴル系の言語に対して失礼なネーミングだと思う
アルゴル系の言語側は怒らなかったのか

298 :デフォルトの名無しさん:2019/06/18(火) 22:19:14.40 ID:gRhwyB3T.net
for ($ARGV[0]){
 our $modulo
  = Xxx ? Xxx
  : Xxx ? Xxx
  : Xxx ? Xxx
  :     Xxx
  ;
}

299 :デフォルトの名無しさん:2019/10/27(日) 01:49:49.46 ID:hlM+06in.net
>>288
Swiftでもできる。
最近仕事でC#使い始めたけど、iまで一々int明記せにゃならんし、レンジ演算子も使えんし配列は固定長で拡張処理が必要だし...

300 :デフォルトの名無しさん:2019/10/27(日) 15:21:19.47 ID:Vc6lc8Xn.net
blawn

for i = 1, i < N, i = i + 1
(
)

301 :デフォルトの名無しさん:2019/11/02(土) 14:47:17.10 ID:xs6Yg1eH.net
vba

for i = 1 to n
next

302 :デフォルトの名無しさん:2019/11/10(日) 11:51:51.32 ID:uFnVWU5E.net
Crystal

0.upto(N-1) do |i|
end

303 :デフォルトの名無しさん:2019/11/15(金) 23:49:23.02 ID:HwWGhxcu.net
>>299
Enumerable.Rangeとか使えば出来るような
LINQ使ったらその辺のことは大体出来るんじゃない?
forループ書く方がシンプルな場合もあるから内包表記みたいな感じで一気にリストや配列作るときにしか使わないけど

304 :デフォルトの名無しさん:2019/11/19(火) 07:01:10.79 ID:uwwA9qTH.net
Cyan

N.times^(i):say i

305 :デフォルトの名無しさん:2020/10/03(土) 23:26:05.17 ID:7NrhvCrT.net
Powershell
for ($i=0; $i -lt $n; $i++) { }


foreachのが高速
foreach ($user in $users){}

306 :デフォルトの名無しさん:2021/02/08(月) 17:04:43.18 ID:FcZ190S6.net
一番高機能なのはFortranだろうけど、あれ使いこなせてる人いるのだろうか

総レス数 306
70 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★