Да, дело в цикле. Там он специально настроен на этот пункт. Замените его на
for i := 1 to n do
for j := i to n do
if (i+j>n) then sum := sum + a[i, j];
И все заработает. Надеюсь, Вам можно применять ветвления. Циклом я отбираю пункт Б, и ветвлением отбираю пункт Г. Их слиянием как раз и есть пункт К.
// F#
[<EntryPoint>]
let main argv =
let getArray =
let rand = new System.Random();
[1..4] |> Seq.map (fun x -> rand.Next 10)
let A = getArray;
let B = getArray;
let C = A |> Seq.mapi (fun i a -> a * a - (B |> Seq.nth i))
printf "%s" (Seq.fold (fun sum x -> sprintf "%s %d" sum x) "" C)
System.Console.ReadKey true |> ignore
0
На 234 метро вырастет деревом через 2340 дней