В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
SashaNemur
SashaNemur
24.05.2021 20:34 •  Информатика

ОБЯЗАТЕЛЬНО ЧЕРЕЗ ПАСКАЛЬ Дан массив целых чисел (n = 20), заполненный случайным образом числами из промежутка [-45, 95].
Удалить из него все элементы, кратные 7 и принадлежащие промежутку [a, b] (a и b вводить с клавиатуры).
Вставить число k между всеми соседними элементами, которые образуют пару элементов с одинаковыми знаками (k вводить с клавиатуры).

Показать ответ
Ответ:
basemaker
basemaker
24.01.2022 20:00

Pascal

var

 ar: array of integer;

 i, j, a, b, k, n :integer;

begin

(* Дан массив целых чисел (n = 20), *)

(* заполненный случайным образом числами из промежутка [-45, 95].*)

randomize;

 n:=20;

 setlength(ar, n);

 for i := 0 to n-1 do begin

   ar[i]:= random(140)-45;

   write(ar[i],' ');

 end;  

 writeln;

 

(* Удалить из него все элементы, кратные 7 и *)

(* принадлежащие промежутку [a, b] (a и b вводить с клавиатуры)*)  

 writeln('введите диапазон [a,b]');

 readln(a,b);

 

 i:=0;

 while i <= n-1 do

   if (ar[i] mod 7 = 0) and (ar[i]>=a) and (ar[i]<=b)then begin

     for j := i+1 to n - 1 do

       ar[j-1] := ar[j];

     n := n - 1

   end

   else

     inc(i);

  setlength(ar, n);

   

  for i := 0 to n-1 do begin

    write(ar[i],' ');

  end;

  writeln;

 

(* Вставить число k между всеми соседними элементами, которые образуют пару *)

(* элементов с одинаковыми знаками k вводить с клавиатуры).*)  

 writeln('введите k');

 readln(k);

 

 i := n - 1;

 while i > 0 do begin

   if ar[i]*ar[i-1]>0 then begin

     inc(n);

     SetLength(ar, n);

     for j := n - 1 downto i do

       ar[j] := ar[j-1];

     ar[i] := k;

     

   end;  

   dec(i);

 end;  

 

 for i := 0 to n-1 do

   write(ar[i],' ');

end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота