mihalevskayat
?>

Создайте программу в паскале. дан массив.заполнить массив b элементами массива a, стоящими на четных местах

Информатика

Ответы

maslprod
// PascalABC.NET 3.3.5, сборка 1636 от 10.03.2018
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('n=');
  var a:=ArrRandom(n,-99,99); a.Println;
  var b:=new integer[n div 2];
  Range(1,n-1,2).ForEach(i->begin b[(i-1) div 2]:=a[i] end);
  b.Println
end.

Пример
n= 11
-30 -1 -29 -7 11 45 23 -90 -28 96 -38
-1 -7 45 -90 96
Эдгеева219
// PascalABC.NET 3.0, сборка 1073
const
  nn=30;
  mm=30;
var
  a:array[1..mm,1..nn] of integer;
  m,n,i,j,k,s:integer;
begin
  Writeln('Введите число строк и столбцов массива: '); Read(m,n);
  Randomize;
  Writeln('*** Исходный массив ***');
  k:=0;
  for i:=1 to m do begin
    for j:=1 to n do begin
      a[i,j]:=Random(51)-25;
      Write(a[i,j]:4);
      if Odd(a[i,j]) then Inc(k)
    end;
    Writeln
  end;
  if k>5 then begin
    Writeln('Средние арифметические отрицательных элементов по строкам');
    for i:=1 to m do begin
      s:=0; k:=0;
      for j:=1 to n do
        if a[i,j]<0 then begin Inc(k); s:=s+a[i,j] end;
      if k>0 then Writeln(s/k:9:5) else Writeln('  0.00000');
    end
  end
  else begin
    Writeln('*** Результирующий массив ***');
    for i:=1 to m do begin
      for j:=1 to n do begin a[i,j]:=2*a[i,j]; Write(a[i,j]:4) end;
    Writeln
    end
  end
end.

Тестовые решения:
Введите число строк и столбцов массива:
8 6
*** Исходный массив ***
 -16  -8  -1  24 -22   1
  -9 -20 -25  13 -11  10
 -15  10 -12  20 -22   3
  -6  25  -3  25 -14  22
  24  -4  24  17  -4 -17
 -23  -9 -22   1 -18 -13
 -12  13   6 -16   2 -13
  19   8 -22  14  -3   4
Средние арифметические отрицательных элементов по строкам
-11.75000
-16.25000
-16.33333
 -7.66667
 -8.33333
-17.00000
-13.66667
-12.50000

Введите число строк и столбцов массива:
3 5
*** Исходный массив ***
   3  24 -21 -22  -8
 -21  14 -22   0 -22
  15 -16  -2   6  22
*** Результирующий массив ***
   6  48 -42 -44 -16
 -42  28 -44   0 -44
  30 -32  -4  12  44
Геннадьевна
Трехзначное число в системе счисления по основанию p может быть записано, как N_{(p)}=n_2\times p^2+n_1\times p^1+n_0\times p^0; \\ N_{(p)}=n_2\times p^2+n_1\times p+n_0, \ \begin {cases} p \in \mathbb Z, \{n_2,n_1,n_0\} \in \mathbb Z \\ n_2 \in [1;p-1], \ \{n_1,n_0\} \in [0;p-1] \\ n_2 \ne n_0 \end {cases}
Разница между максимальным и минимальным трехзначными числами должна превышать десятичное число 200 (пока не будем учитывать дополнительное ограничение на несимметричность), т.е.
\big((p-1)\times p^2+(p-1)\times p+(p-1)\big)-\big((p^2+0\times p^1+0)\big)200; \\ (p^3-p^2+p^2-p+p-1)-p^2200; \ p^3-1200 \to p \sqrt[3]{200}
В целых числах получаем условие p≥6, т.е. основание системы счисления не может быть меньше 6.
Найдем, сколько трехзначных чисел можно получить в системе счисления с основанием 6: p^3-1=6^3-1=215_{10}.
Симметричными будут числа вида 5х5, 4х4, 3х3, 2х2, 1х1, где х - любая из цифр по основанию 6. Итого получается пять групп, в каждой из которых шесть чисел, т.е. всего трехзначных симметричных чисел может быть 30. Следовательно, в системе счисления по основанию 6 можно записать 215-30=185 трехзначных несимметричных чисел, что меньше ограничения 200.
Проверим систему счисления по основанию 7: p^3-1=7^3-1=342_{10}.
Симметричными будут числа вида 6х6, 5х5, 4х4, 3х3, 2х2, 1х1, где х - любая из цифр по основанию 7. Итого получается шесть групп, в каждой из которых семь чисел, т.е. всего трехзначных симметричных чисел может быть 42. Следовательно, в системе счисления по основанию 7 можно записать 342-42=300 трехзначных несимметричных чисел, что превышает ограничение 200.

ответ: 7

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

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

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