Написать 2 программки:1. Проверить, есть ли в массиве отрицательные элементы. Если есть,

Написать 2 программки:
1. Проверить, есть ли в массиве отрицательные элементы. Если есть, вывести а-номер первого такового элемента, b-номер последнего. (использовать барьер)
2. Проверить, является ли массив целых чисел симметричным

Задать свой вопрос
Бердак Паша
Ну и терминология! Что за "барьер" такой?
Макатова Софья
Барьерный алгоритм употребляется для поиска в неупорядоченном массиве. То есть в массиве мы ставим шаблон
Аделя
В массиве находятся значения частей. Как там можно что-то еще "ставить"?
Марина Кириякина
Дурачятся детям головы околонаучными терминами... лучше юы алгоритмизацию за истраченное на эту чепуху время объясняли.
Намханенко Виолетта
На сто процентов согласна) но ничего уж не поделаешь
2 ответа
Const
  n = 10;

var
  a: array[1..n] of integer;
  i, p, q: integer;
  flag: boolean;

begin
  1. Инициализируем массив
  Randomize;
  Write('Элементы массива: ');
  for i := 1 to n do
  begin
    a[i] := Random(101) - 50;
    Write(a[i]:5)
  end;
  Writeln;
  2. проверяем элементы массива на наличие отрицательных значений
  flag := true;
  i := 1;
  2.1 Разыскиваем первое по порядку отрицательное
  while flag and (i lt;= n) do
  begin
    flag := (a[i] gt;= 0);
    i := i + 1
  end;
  if flag then Writeln('В массиве нет отрицательных элементов')
  else begin
    p := i - 1;
    2.1 Ищем заключительнее по порядку отрицательное
    i := n;
    flag := true;
    while flag and (i gt; p) do
    begin
      flag := (a[i] gt;= 0);
      i := i - 1
    end;
    if flag then Writeln('В массиве один отрицательный элемент с номером ', p)
    else
      Writeln('Отрицательные элементы лежат в промежутко от ', p, ' до ', i + 1)
  end
end.

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

Элементы массива:    17  -45  -29  -30   32  -12   29  -39   20    6
Отрицательные элементы лежат в промежутке от 2 до 8

const
  nm = 50;наибольшая длина массива

var
  i, n, n2: integer;
  a: array[1..nm] of integer;
  flag: boolean;

begin
  1. Инициализация массива
  Write('Введите количество частей в массиве: ');
  Readln(n);
  Write('Введите элементы массива через пробел ');
  for i := 1 to n do Read(a[i]);
  2. Проверка симметричности массива
  flag := true;
  i := 1;
  n2 := n div 2;
  while flag and (i lt;= n2) do
  begin
    flag := (a[i] = a[n - i + 1]);
    i := i + 1
  end;
  if flag then Writeln('Массив является симметричным')
  else Writeln('Массив не является симметричным')
end.

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

Введите количество частей в массиве: 8
Введите элементы массива через пробел 1 7 3 4 4 2 7 1
Массив не является симметричным

Введите количество частей в массиве: 7
Введите элементы массива через пробел 8 4 9 1 9 4 8
Массив является симметричным








Program z1;
var ar: array of integer;
f, l, i, N: integer;
begin       
readln(N);       
setlength(ar, N+1);       
for i:=1 to N do read(ar[i]);       
f:=-1;                
for i:=1 to N do begin               
if ar[i]lt;0 then begin                       
f:=i;                       
break;               
end;       
end;       
if fgt;0 then begin               
for i:=N downto 1 do begin                       
if ar[i]lt;0 then begin                               
l:=i;                               
break;                       
end;               
end;               
write(f,' ', l);       
end       
else write('No');
end.

program z2;
var ar: array of integer;
i, N: integer;
otv: boolean;
begin       
readln(N);       
setlength(ar, N+1);       
for i:=1 to N do read(ar[i]);       
for i:=1 to N div 2+1 do begin               
 if ar[i]lt;gt;ar[N-i+1] then begin otv:=true; break; end;       
end;       
if otv=true then write('No')       
else write('Yes');end.
Ульяна Гатиятулина
Вторая программка работает образцово, спасибо громадное! А вот 1-ая не получается
Данил
А где ошибка в 1? У меня выводит правильные ответы
Громоковкин Никита
1-ый ввод - кол-во чисел в массиве, дальше идут сами числа, выводит номер 1 и последнего
Амелия Бобкова-Басова
Обычно учители за break наказывают нещадно)))
Леонид
Alviko, верно говорите) поэтому я убрала break. И во 2-ой строке выводится ошибка поэтому что не хватает [], а если их ставить, то выводится иная ошибка
Настя Породько
я не смотрел эту версию,здесь создатель есть)))
Василий
Разные компиляторы, тестировал на FreePascal 2.6.0
, оставишь ответ?
Имя:*
E-Mail:


Последние вопросы
Рассматривая литературный язык как сложное взаимодействие книжного языка и разговорного,В.И.Чернышёв горячо

Разные вопросы.

Арабы входят в __________________ групп народов. Местом расселения арабов с незапамятных

Разные вопросы.

Грузовой автомобиль марки краз за одну поездку может доставить 7.500 кирпичей

Математика.

Определить предложения какие они по цели высказывания и по интонации

Русский язык.

"Три толстяка" Называли эту площадь Площадью Звезды последующей причине.

Русский язык.

на одной грядке коротышки посадили 3 ряда морковок по 8 штук

Разные вопросы.

эссе на тему какое образование дается в каждой семье

Қазақ тiлi.

Put the verb in brackets into the Present Indefinite. 1The Volga ,

Английский язык.

Сколько стоит коктейль молочный? Точную цену надо?

Математика.

Составить рассказ Из чего складывался культ монарха помазанника Божьего?

История.

Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт