ІІІ 7.Дано масив А(n). А) знайти два перших додатніх елементи; б) відсортувати вхідний масив: по зростанню (непарні варіанти), по спаданню (парні варіанти). Розв’язання: Uses winCrt; var a:array[1..30] of real; i,j,n,k:integer; t:real; Begin clrscr; writeln('П I П'); write('Введiть n = '); readln(n); writeln('Введiть масив A[',n,']:'); for i:=1 to n do begin write('A[',i,'] = '); readln(a[i]); end; writeln('Початковий масив A[',n,']:'); for i:=1 to n do write(a[i]:6:1); writeln; j:=0; for i:=1 to n do begin if (a[i]>0) then j:=j+1; if (a[i]>0) and (j<=2) then begin write(a[i]:6:1); end; end; writeln; writeln('Масив A[',n,'] вiдсортований по спаданню:'); for j:=1 to n do begin for i:=1 to (n-1) do begin if a[i]<a[i+1] then begin t:=a[i]; a[i]:=a[i+1]; a[i+1]:=t; end; end; end; for i:=1 to n do write(a[i]:6:1); writeln; readln; End. 8. Дано матрицю А(m1,m2), з якою потрібно утворити нову матрицю таким чином: всі елементи, розташовані вище побічної діагоналі, зменшити в 2 рази, якщо m1=m2; Розв’язання: Uses wincrt; var i,j,m1,m2:integer; a:array[1..10,1..10] of real; begin clrscr; write('Введiть m1='); readln(m1); write('Введiть m2='); readln(m2); writeln('Введiть масив A[',m1,',',m2,']:'); for i:=1 to m1 do for j:=1 to m2 do begin write('A[',i,',',j,'] = '); readln(a[i,j]); end; writeln('масив A[',m1,',',m2,']:'); for i:=1 to m1 do begin for j:=1 to m2 do begin write(a[i,j]:5:1); end; writeln; end; writeln('Перетворений масив A[',m1,',',m2,']:'); for i:=1 to m1 do begin for j:=1 to m2 do begin if (i<m2-j+1) then a[i,j]:=a[i,j]/2; write(a[i,j]:5:1) end; writeln; end; readln; End. 9.На відрізку [a,b] задано три функції. Обчислити їх значення в точках xi=x0+I*h, де x0=a, h=(b-a)/n, і=1..n. Отримана результати оформити у вигляді таблиці. 1)ex 2) (x+6)3 3) ex+2-tgx+3 a=2; b=4. Розв’язання: Uses wincrt; var h,b,a,x,F1,F2,F3:real; i,n:integer; Begin Clrscr; a:=2; b:=4; i:=0; x:=a; write(' Введiть n - ');readln(n); h:=(b-a)/n; writeln('Таблица значений':40); writeln; writeln('-----T----------T------------T------------T-----------¬'); writeln('¦ i ¦ x ¦ F1 ¦ F2 ¦ F3 ¦'); writeln('+----+----------+------------+------------+-----------+'); repeat i:=i+1; F1:=exp(x); F2:=sqr(X+6)*(x+6); F3:=exp(x+2)-sin(x)/cos(x)+3; writeln('¦',i:3,' ¦ ',x:6:2,' ¦ ',f1:10:3,' ¦ ',f2:8:3,' ¦ ',f3:8:3,' ¦'); x:=a+i*h; until i=n+1; writeln('L----+----------+------------+------------+------------'); readln End. 10. Скласти програму, яка будує на екрані трикутну піраміду (див. метод. Вказівник (044-123) Розв’язання: Uses Crt,Graph; var Gd, Gm: Integer; Begin Gd := Detect; InitGraph(Gd, Gm, 'e:\tp\bgi\'); if GraphResult <> grOk then Halt(1); setbkcolor(0); setcolor(7); line(350,125,250,125); line(250,125,300,100); line(300,100,350,125); setfillstyle(1,9); FloodFill(300,110,7); line(150,300,450,300); line(150,300,300,250); line(300,250,450,300); line(300,250,300,100); line(150,300,250,125); line(450,300,350,125); ReadLn; CloseGraph; end.