Const x0=-10; xk=13; h=0.5; var x,y:real; i,n:integer; begin n:=round((xk-x0)/h)+1; x:=x0-h; for i:=1 to n do begin x:=x+h; if x<>7 then begin y:=(x*x*x+5*x-8)/(x-7); writeln(x:5:1,' ',y:8:3); end else writeln(x:5:1,' функция не определена'); end; end.
// PascalABC.NET 3.2, сборка 1362 от 14.12.2016 // Внимание! Если программа не работает, обновите версию!
const n=34; begin // 1 var R:=ArrRandom(n,-8,8); R.Println; // 2 var b:=R.Slice(Trunc(0.75*n)-1,3); Writeln('Ср.гармоническое= ',b.Count/b.Aggregate(0.0,(x,y)->x+1.0/y)); // 3 var m:=R.Batch(n div 3).ToArray[1].Where(x->x.IsEven).MinBy(x->abs(x)); Writeln('Минимальный по модулю= ',m); // 4 var R2:=R.Select((x,i)->(x,i)).Batch(n div 2).ToArray; var r21:=R2[0].Where(x->x[0]<0).OrderBy(x->sqr(x[0])); var ind:=r21+R2[1].Where(x->x[0]<0).OrderBy(x->sqr(x[0])).ToArray; var ind1:=ind.UnZipTuple; var aVal:=ind1[0].ToArray; var aInd:=ind1[1].Sorted.ToArray; for var i:=0 to aVal.Count-1 do R[aInd[i]]:=aVal[i]; R.Println end.
1)Растеризация
2)Ray casting
3)Трассировка лучей
4)Трассировка пути