L2の長さがL1の長さよりも大きいと仮定して、最初のリスト(L1)が2番目のリスト(L2)にある場合にtrueを返すMathematicaのモジュールを作りたい。私はこのようにそれをしました、問題は常にFalseを返すことです、そして私は理由がわかりません。編集:私は問題を解決しました:「If」の代わりに「if」を書きました。今、私は無限のループを取得します。
isSegment[L1_List, L2_List] := Module[{i, j}, For[i = 1, i + Length[L1] - 1 <= Length[L2],
For[j = 1, j <= Length[L1],
If[L2[[i + j - 1]] != L1[[j]], Break;];
j++;
];
If[j == Length[L1] + 1,
Return[ True];];
i++; ]; Return [False]; ]