Задача №1
Задание. Для функции, представленной ниже бесконечным рядом, вычислить их приближённые значения с точностью ε=10-3 в точке x=1,5.
Вариант 4 | Artn(x)= |
Алгоритм

Листинг программы
Program Pascal_1;
Uses crt;
Var eps, s,f, x:real;
Function Fx(x, eps:real):real;
Var s, f,t:real;
k, i:integer;
Begin
s:=0; k:=0;
repeat t:=1;
for i:=1 to 2*k+1 do t:=t*1/x;
f:=t/(2*k+1); s:=s+f; k:=k+1;
until (abs(f)<eps);
Fx:=s;
End;
Begin
clrscr;
x:=1.5; eps:=0.001;
writeln(' Результат работы программы:');
s:=Fx(x, eps); f:=arctan(x);
writeln(' x= ',x:5:2,' sum= ',s:8:5,' fun= ',f:8:5);
End.
Результат
Результат работы программы:
x= 1.50 sum= 0.80447 fun= 0.98279
В задании указана неизвестная функция Artn(x). В программе использовалась функция ArcTan(x).
Задача №2
Задание. Составить и выполнить программу согласно своему шифру.
Вариант 2 | Задана матрица A размера 4Х4 с вещественными элементами. Найти и вывести на печать все нулевые элементы матрицы, а также указать в каких строках и столбцах они находятся. |
Алгоритм

Листинг программы
Program Pascal_2;
Uses crt;
const m=4; { Размеp матpицы }
var a: array [1..m,1..m] of integer;
i, j : integer;
BEGIN
clrscr;
writeln('Введите элементы ',m:1,'X',m:1,' матpицы по стpокам');
for i:=1 to m do for j:=1 to m do read(a[i, j]);
writeln;
writeln('Исходная матрица');
for i:=1 to m do
begin
for j:=1 to m do write(a[i, j]:3,' '); writeln;
end;
writeln;
for i:=1 to m do for j:=1 to m do
if a[i, j]=0 then writeln(' ',a[i, j]:3,' строка ',i:2,' столбец ',j:2);
END.
Результат
Введите элементы 4X4 матpицы по стpокам
3
5
0
8
9
-2
3
4
0
6
-7
0
2
3
-4
3
Исходная матрица
3 5 0 8
9 -2 3 4
0 6 -7 0
2 3 -4 3
0 строка 1 столбец 3
0 строка 3 столбец 1
0 строка 3 столбец 4
Задача №3
Задание. Составить и выполнить программу согласно своему шифру.
Вариант 4 | Ввести произвольную символьную цепочку. Удвоить её символы на четных местах. В полученной цепочке подсчитать число символов, совпадающих с последним. |
Алгоритм

Листинг программы
Program Pascal_3;
Uses crt;
var s, s1: string;
i, j, n, n1, k : integer;
BEGIN
clrscr;
writeln('Введите элементы стpоки');
readln(s);
n:=length(s);
writeln;
for i:=1 to n do
if i mod 2 =0 then s1:=s1+s[i]+s[i] else s1:=s1+s[i];
n1:=length(s1);
for i:=1 to n1-1 do
if s1[i]=s1[n1] then inc(k);
writeln(s1);
writeln(' Совпадений ',k);
END.
Результат
Введите элементы стpоки
sjkdhfgrbhjegrnmbjhgr
sjjkddhffgrrbhhjeegrrnmmbjjhggr
Совпадений 4
Задача №4
Задание. Ввести с клавиатуры числовую матрицу A размером 4X4. Построить по ней матрицу B тех же размеров, элементы которой B[i, j] находятся как суммы элементов матрицы A, схематически изображенных на отрезках, исходящих из элемента A[i, j] на рисунке, номер которого совпадает с номером Вашего варианта. (короткий отрезок содержит соседние элементы матрицы, а длинный - все элементы до соответствующей строки или столбца).
Вариант 2 |
|
Листинг программы
Program Pascal_4;
Uses Z_42, crt;
const LL=4; { Размеp матpицы }
var
a, b : matr; { Тип matr об[явлен в TPU-модуле }
{ Исходная и pезультиpующая матpицы }
i, j : integer; h : real;
BEGIN
clrscr;
writeln('Введите элементы ',LL:1,'X',LL:1,' матpицы по стpокам');
for i:=1 to LL do for j:=1 to LL do read(a[i, j]);
writeln('Исходная матрица');
for i:=1 to LL do
begin
for j:=1 to LL do write(a[i, j]:4:1,' '); writeln;
end;
for i:=1 to LL do for j:=1 to LL do
begin
prc5(a, i,j, h); b[i, j]:=h;
end;
writeln;
writeln('Результиpующая матpица');
for i:=1 to LL do
begin
for j:=1 to LL do write(b[i, j]:4:1,' '); writeln;
end;
writeln;
END.
UNIT Z_42;
INTERFACE
type matr=array[1..4,1..4] of real;
procedure prc5(a : matr; p, q : integer; var y : real);
IMPLEMENTATION
procedure prc5;
var i1, j1 : integer;
s : real;
begin
s:=0;
for i1:=p to 4 do s:=s+a[i1,q];
if q<4 then s:=s+a[p, q+1];
y:=s;
end;
END.
Результат
Введите элементы 4X4 матpицы по стpокам
1
3
5
7
9
8
6
7
4
5
3
2
1
4
5
6
Исходная матрица
1.0 3.0 5.0 7.0
9.0 8.0 6.0 7.0
4.0 5.0 3.0 2.0
1.0 4.0 5.0 6.0
Результиpующая матpица
18.0 25.0 26.0 22.0
22.0 23.0 21.0 15.0
10.0 12.0 10.0 8.0
5.0 9.0 11.0 6.0



