Olesyamilenina8
?>

Написать программу , которая вычислит отдельные суммы четных и нечетных чисел натурального ряда и их произведения

Информатика

Ответы

serge-lysoff
Const
N = 7;
Var
A:array[1..N]of integer;
i:integer;
S,Sn,P,Pn:real;
Begin
S:=0;
Sn:=0;
P:=1;
Pn:=1;
For i:= 1 to N do
Begin
A[i]:=random(7)+1;
Write(A[i],' ');
if A[i] mod 2 = 0 then
Begin
S:=S+A[i];
P:=P*A[i];
End
else
Begin
Sn:=Sn+A[i];
Pn:=Pn*A[i];
End
End;
WriteLn;
WriteLn('Сумма чётных элементов =',S);
WriteLn('Произведение чётных элементов =',P);
WriteLn('Сумма НЕчётных элементов =',Sn);
WriteLn('Произведение НЕчётных элементов =',Pn);
End.
Роман_Гречина
Если три нуля значащие, значит число начинается с единицы. Поскольку любое число в развернутой записи есть сумма произведений, каждое из которых представляет собой произведение цифры, находящейся на n-й позиции на основание системы счисления, возведенной в степень n-1, то понятно, что чем больше по величине будут цифры в старших разрядах, тем больше будет само число.
В применении к двоичной системе это означает, что слева должны стоять все единицы, а справа - нули.
Получаем 11000(2)=1х2^4+1x2^3=16+8+=24(10) - тут символ ^ означает возведение в степень.
ответ: 24
ИгоревичАндрей
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);
  Writeln
end.

Тестовое решение:

Введите через пробел число строк и столбцов массива: 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

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Написать программу , которая вычислит отдельные суммы четных и нечетных чисел натурального ряда и их произведения
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

kmr495270
Татьяна_Александра1114
Сор информатика 6 класс 1 четверть
Vos-sv
Klicheva_Ermachenkova1536
katyn76
d111180
Dmitrievich1871
goldglobustour725
voloshin238
Иванович-Васильевна1153
Светлана-Тигран
dima-a
Оздоевский
Измайлова-Алексей
oledrag7