function IsPrime(n:integer):Boolean;{ Проверка, является ли число простым }var p:integer; found:Boolean;begin found:= (n mod 2 = 0); p:=3; while (not found) and (sqr(p)<=n) do begin found:=(n mod p = 0); p:=p+2 end; IsPrime:=(not found) or (p = 2)end;const m1 = 20; n1 = 20;var a: array[1..m1, 1..n1] of integer; s,k:array[1..n1] of integer; i, j, m, n, sum, kol: integer;begin Write('Введите через пробел число строк и столбцов массива: '); Readln(m, n); Randomize; Writeln(#13#10, 'Исходный массив'); for i := 1 to m do begin for j := 1 to n do begin a[i,j]:= Random(99)+1; Write(a[i,j]:3) end; Writeln end; for j:=1 to n do begin sum:=0; kol:=0; for i:=1 to m do if IsPrime(a[i,j]) then begin sum:=sum+a[i,j]; kol:=kol+1 end; s[j]:=sum; k[j]:=kol end; Writeln('*** Сумма простых элементов по столбцам ***'); for j:=1 to n do Write(s[j]:4); Writeln; Writeln('*** Количество простых элементов по столбцам ***'); for j:=1 to n do Write(k[j]:4); Writelnend.Тестовое решение:Введите через пробел число строк и столбцов массива: 12 15Исходный массив 36 74 72 75 25 58 26 45 25 51 35 83 34 8 99 53 55 3 51 31 7 65 91 99 95 40 91 86 80 39 61 5 92 50 28 40 7 93 46 46 20 2 61 45 91 85 10 47 49 54 29 15 10 49 13 70 83 73 79 85 67 40 65 85 90 31 90 83 80 59 46 61 57 5 12 6 4 46 9 10 30 44 37 27 11 46 94 44 38 57 57 34 14 61 79 80 37 75 55 60 94 27 67 90 8 67 58 5 37 7 67 37 64 69 55 24 3 38 75 44 36 47 46 23 2 12 47 96 26 31 69 28 91 49 16 4 76 47 19 43 88 89 7 31 90 21 69 45 6 55 78 98 1 11 24 48 80 44 88 96 21 61 79 7 38 39 46 16 54 52 47 55 20 33 56 46 40 16 33 81*** Сумма простых элементов по столбцам *** 248 52 103 151 160 181 217 127 31 114 0 291 280 91 0*** Количество простых элементов по столбцам *** 4 2 5 5 4 5 5 3 1 4 0 5 4 3 0