Помогите пожалуйста В каждой строке матрицы F(k,k) элемент, лежащий на главной диагонали, если это простое число, заменить суммой ранее расположенных элементов.(решить в паскале)

Помогите пожалуйста В каждой строке матрицы F(k,k) элемент, лежащий на главной диагонали, если это простое число, заменить суммой ранее расположенных элементов.(решить в паскале)
Гость
Ответ(ы) на вопрос:
Гость
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   n = 12; var   a:array[1..n,1..n] of integer;   i,j,s,k:integer; begin   Randomize;   Writeln('Исходный массив');   for i:=1 to n do   begin     for j:=1 to n do     begin       a[i,j]:=Random(99)+1; { интервал [1..99] }       Write(a[i,j]:3)     end;     Writeln   end;   { решаем }   s:=0;   for i:=1 to n do   begin     k:=a[i,i];     if IsPrime(k) then a[i,i]:=s;     s:=s+a[i,i]   end;   { выводим }   Writeln('Результирующий массив');   for i:=1 to n do   begin     for j:=1 to n do Write(a[i,j]:5);     Writeln   end end. Тестовое решение: Исходный массив  55 99 73  7 53 15 30 67 59 59 56 30  81  6 39 10 10 11 60 74 74 48 78 75  24 40 34 44 31 95 75 52 47 66 58 24  87 99 86 92 41 76 44  4 31 57 34 13  31 48 84 80 39 61 86  7 21 97 83 14  80 85 37 63 84  5 82 16 47 16 22 11  24 68 34 97  5 74 45 66  6 22 14 83  12 94 13 86 79 52  4 89 16 73 12 55  40 80 20 27 74 19 65 16 26 74 57 71  28 88  3 46 53 17  8 59 72 54 52 90  91 96 36 95 13 33 94 50 56 78 58 24  55 19 91 86 56 98 57 37 38 42 58 91 Результирующий массив    55   99   73    7   53   15   30   67   59   59   56   30    81    6   39   10   10   11   60   74   74   48   78   75    24   40   34   44   31   95   75   52   47   66   58   24    87   99   86   92   41   76   44    4   31   57   34   13    31   48   84   80   39   61   86    7   21   97   83   14    80   85   37   63   84  226   82   16   47   16   22   11    24   68   34   97    5   74   45   66    6   22   14   83    12   94   13   86   79   52    4  497   16   73   12   55    40   80   20   27   74   19   65   16   26   74   57   71    28   88    3   46   53   17    8   59   72   54   52   90    91   96   36   95   13   33   94   50   56   78   58   24    55   19   91   86   56   98   57   37   38   42   58   91
Не нашли ответ?
Ответить на вопрос
Похожие вопросы