Система программирования Турбо Паскаль. Воробьева А.П - 52 стр.

UptoLike

Составители: 

105
Задача 2
Даны две матрицы:
65
}{
×
=
ij
aA и
74
}{
×
=
ij
bB .
Вычислить разность:
C = KAKB, где KA и KBколичество по-
ложительных элементов в матрицах
A и B соответственно.
Вариант c процедурой
Program P2_P;
Type
matr = array[1..5, 1..7] of real;
Var
A, B: matr;
i, j, KA, KB, C: integer;
Procedure CP(D: matr; m, n: integer; var KD: integer);
var
i, j: integer;
begin
KD := 0;
for i := 1 to m do
for j := 1 to n do
if d[i,j]>0 then KD := KD + 1;
end;
Begin
writeln(‘Введите матрицу A’);
for i := 1 to 5 do
for j := 1 to 6 do read(a[i,j]);
writeln(‘Введите матрицу В’);
for i := 1 to 4 do
for j := 1 to 7 do read(b[i,j]);
CP(A, 5, 6, KA);
CP(B, 4, 7, KB);
C := KA – KB;
writeln(‘C=’, C);
End.
106
Вариант с функцией
Program P2_F;
Type
matr = array[1..5, 1..7] of real;
Var
A, B: matr;
i, j, C: integer;
Function CP(D: matr; m, n: integer): integer;
var
i, j, KD: integer;
begin
KD := 0;
for i := 1 to m do
for j := 1 to n do
if d[i,j]>0 then KD := KD + 1;
CP := KD;
end;
Begin
writeln(‘Введите матрицу A’);
for i := 1 to 5 do
for j := 1 to 6 do read(a[i,j]);
writeln(‘Введите матрицу В’);
for i := 1 to 4 do
for j := 1 to 7 do read(b[i,j]);
C := CP(A, 5, 6) – CP(B, 4, 7);
writeln(‘C=’, C);
End.
Задача 3
На плоскости декартовыми координатами заданы 10 точек:
(
x
1
, y
1
), (x
2
, y
2
), …, (x
10
, y
10
).
Вывести полярные координаты точки, имеющей наибольший
полярный радиус. Вычисление полярных координат одной точки
оформить подпрограммой. Расчетные формулы для вычисления
полярных координат следующие:
a
b
ba
arctg;
22
=ϕ+=ρ , где a и bкоординаты точки.
                          Задача 2
                                                                      Вариант с функцией
    Даны две матрицы: A = {aij }5×6 и B = {bij }4×7 .
                                                                          Program P2_F;
Вычислить разность: C = KA – KB, где KA и KB – количество по-             Type
ложительных элементов в матрицах A и B соответственно.                     matr = array[1..5, 1..7] of real;
Вариант c процедурой                                                      Var
                                                                           A, B: matr;
             Program P2_P;                                                 i, j, C: integer;
             Type                                                         Function CP(D: matr; m, n: integer): integer;
              matr = array[1..5, 1..7] of real;                            var
             Var                                                                i, j, KD: integer;
              A, B: matr;                                                  begin
              i, j, KA, KB, C: integer;                                         KD := 0;
             Procedure CP(D: matr; m, n: integer; var KD: integer);             for i := 1 to m do
              var                                                                    for j := 1 to n do
                   i, j: integer;                                                       if d[i,j]>0 then KD := KD + 1;
              begin                                                             CP := KD;
                   KD := 0;                                                end;
                   for i := 1 to m do                                     Begin
                        for j := 1 to n do                                 writeln(‘Введите матрицу A’);
                            if d[i,j]>0 then KD := KD + 1;                 for i := 1 to 5 do
              end;                                                              for j := 1 to 6 do read(a[i,j]);
             Begin                                                         writeln(‘Введите матрицу В’);
              writeln(‘Введите матрицу A’);                                for i := 1 to 4 do
              for i := 1 to 5 do                                                for j := 1 to 7 do read(b[i,j]);
                   for j := 1 to 6 do read(a[i,j]);                        C := CP(A, 5, 6) – CP(B, 4, 7);
              writeln(‘Введите матрицу В’);                                writeln(‘C=’, C);
              for i := 1 to 4 do                                          End.
                   for j := 1 to 7 do read(b[i,j]);                                                        Задача 3
              CP(A, 5, 6, KA);
              CP(B, 4, 7, KB);                                            На плоскости декартовыми координатами заданы 10 точек:
              C := KA – KB;                                                                    (x1, y1), (x2, y2), …, (x10, y10).
              writeln(‘C=’, C);                                           Вывести полярные координаты точки, имеющей наибольший
             End.                                                     полярный радиус. Вычисление полярных координат одной точки
                                                                      оформить подпрограммой. Расчетные формулы для вычисления
                                                                      полярных координат следующие:
                                                                                                           b
                                                                          ρ = a 2 + b 2 ; ϕ = arctg , где a и b – координаты точки.
                                                                                                           a

                                105                                                                106