Опубликовано 03.01.2018 по предмету Информатика от Гость

ПОМОГИТЕ РЕШИТЬ ЧЕРЕЗ ПОДПРОГРАММУ И БЕЗ "рандома"

Дано:массивы А(8),В(11). Определить в каком массиве отрицательное число встречается раньше. Номер первого отрицательного элемента в массиве находить в подпрограмме.

Ответ оставил Гость

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


Не нашел нужный ответ?

Если ответ по предмету Информатика отсутствует или он оказался неправильным, то попробуй воспользоваться поиском других ответов во всей базе сайта.


Найти другие ответы
Самые новые вопросы