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

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

Ответ:
самаучка003
самаучка003
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
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?