Rjkjneirbyf555
?>

Сформируйте вектор, содержащий 15 элементов, с датчика случайных чисел из интервала (-20, 20 получите новый массив, каждый элемент которого равен удвоенному соответствующему элементу исходного массива. в полученном массиве найти максимальный элемент среди элементов, номера которых кратны трём. выведите на экран исходные и полученные результаты.

Информатика

Ответы

Анна1417
Const
  lim = 11;

type
  V = array[1..lim] of integer;

function FirstNegative(a: V; n: integer): integer;
var
  i: integer;
begin
  i := 0;
  Result := 0;
  repeat
    i := i + 1;
    if a[i] < 0 then Result := i
  until (Result > 0) or (i > lim)
end;

procedure InpMass(var a: V; var n: integer; mName: string);
// Организует ввод массива
var
  i, p: integer;
begin
  writeln('Вводите элементы массива ' + mName + '; 7777 - конец ввода');
  i := 0;
  repeat
    read(p);
    i := i + 1;
    if p <> 7777 then a[i] := p;
  until (p = 7777) or (i > lim);
  n := i - 1
end;

var
  a, b: V;
  m, n, p, q: integer;

begin
  InpMass(a, m, 'A');
  InpMass(b, n, 'B');
  p := FirstNegative(a, m);
  q := FirstNegative(b, n);
  if p <= q then writeln('Номер первого отрицательного элемента в массива А: ', p)
  else writeln('Номер первого отрицательного элемента в массива B: ', q)
end.

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

Вводите элементы массива A; 7777 - конец ввода
37 14 -25 32 30 -29 38 27 7777
Вводите элементы массива B; 7777 - конец ввода
33  -36   23  -17   -3  -16  -33   33  -48  -39   30 7777
Номер первого отрицательного элемента в массива B: 2
restkof
var
  p1, p2, buf: real;
  n: byte;

begin
  readln(n);
  for i: byte := 1 to n do
  begin
    readln(buf);
    if (buf > 0) then
      if (p2 = 0) then
        p2 := buf
      else
        p2 := p2 * buf
    else
      if (p1 = 0) then
        p1 := buf
      else
        p1 := p1 * buf;
  end;
  
  writeln('P1 = ', p1, #13, 'P2 = ', p2);
  
  if (abs(p1) > abs(p2)) then
    writeln('|', p1, '| > |', p2, '|')
  else
    if (abs(p1) < abs(p2)) then
      writeln('|', p1, '| < |', p2, '|')
    else
      writeln('|', p1, '| = |', p2, '|')
end.

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

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

Сформируйте вектор, содержащий 15 элементов, с датчика случайных чисел из интервала (-20, 20 получите новый массив, каждый элемент которого равен удвоенному соответствующему элементу исходного массива. в полученном массиве найти максимальный элемент среди элементов, номера которых кратны трём. выведите на экран исходные и полученные результаты.
Ваше имя (никнейм)*
Email*
Комментарий*

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

helena-belozerova
katdavidova91
Alnkseevna
eleniloy26
Li-111
elena-ppk
Petrushin482
asvavdeeva
travkinadjey31
k-serga1
Александрович_Викторовна
kapral1812
osandulyak
oldulo74
mustaevdmitry397