all Fibonacci numbers less than 1000 begin SeqWhile(1,1,(x,y)->x+y,x->x<1000).Print; end. 5. Word frequency dictionary for a file begin var d := new Dictionary<string,integer>; foreach var s in ReadLines('words.txt') do foreach var word in s.ToWords do d[word] := d.Get(word) + 1; d.PrintLines; end. 5а. Word frequency dictionary for a file - Solution in functional style begin ReadLines('words.txt').SelectMany(s->s.ToWords).GroupBy(v->v).EachCount.PrintLines; end. 6. Parallel matrix multiplication using OpenMP directives procedure Mult(a,b,c: array [,] of real; n: integer); begin {$omp parallel for} for var i:=0 to n-1 do for var j:=0 to n-1 do begin var cc := 0.0; for var l:=0 to n-1 do cc += a[i,l]*b[l,j]; c[i,j] := cc; end; end; const n = 1000; begin var a := MatrixRandomReal(n,n,1,1.1); var b := MatrixRandomReal(n,n,1,1.1); var c := new real[n,n]; Mult(a,b,c,n); Println(MillisecondsDelta/1000); end. See also Object Pascal C# References External links PascalABC.NET Github Repository Official Telegram Channel PascalABC.NET Object-oriented programming languages Class-based programming languages .NET programming languages Pascal (programming language) compilers Pascal programming language family Statically typed programming languages