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

PASCAL 2. Составить программу, которая в данном массиве: m[1]:=4; m[2]:=8; m[3]:=7; m[4]:=2; m[5]:=1;m[6]:=8; m[7]:=1; m[8]:=5; m[9]:=6; m[10]:=8;
находит максимальный элемент (элементы) и заменяет его (их) на 0.

3. Дан массив a[0..n-1] из n чисел 0 и 1. Требуется разделить элементы друг от друга так, чтобы сначала оказались все 0, а в конце 1.

5. Как можно сделать так, чтобы первая половина массива была отсортирована по возрастанию, а вторая — по убыванию. Напишите программу для 10 случайных цифр.

Показать ответ
Ответ:
Саша15e
Саша15e
04.02.2022 13:41

Программа:

Pascal:

№2)

var

 m: array[1..10] of integer;

begin

 m[1]:=4; m[2]:=8; m[3]:=7; m[4]:=2; m[5]:=1; m[6]:=8; m[7]:=1; m[8]:=5; m[9]:=6; m[10]:=8;

 for var i := 1 to 10 do

   if m[i] = m.max then m[i]:= 0;

 writeln(m);

end.

№3)

const n = 10;

var

 a: array[1..n] of integer;

 i, k, tmp: integer;

begin

 for i := 1 to n do a[i] := random(0, 1);

 writeln('Массив: ', a);

 

 for i := 1 to n - 1 do

   for k := 1 to n - i do

     if a[k] > a[k + 1] then begin

       tmp := a[k];

       a[k] := a[k + 1];

       a[k + 1] := tmp;

     end;

 writeln(a);

end.

№5)

const n = 10;

var

 a: array[1..n] of integer;

 a1, a2: array[1..n div 2] of integer;

 i, k, tmp: integer;

begin

 for i := 1 to n do a[i] := random(-10, 10);

 writeln('Исходный массив: ',a);

 

 for i := 1 to n div 2 do a1[i] := a[i];

 for i := (n div 2 + 1) to n do a2[i - n div 2] := a[i];

 

 for i := 1 to n div 2 - 1 do

   for k := 1 to n div 2 - i do

     if a1[k] > a1[k + 1] then begin

       tmp := a1[k];

       a1[k] := a1[k + 1];

       a1[k + 1] := tmp;

     end;

 for i := 1 to n div 2 - 1 do

   for k := 1 to n div 2 - i do

     if a2[k] < a2[k + 1] then begin

       tmp := a2[k];

       a2[k] := a2[k + 1];

       a2[k + 1] := tmp;

     end;

     

 for i := 1 to n do

   if i <= 5 then a[i] := a1[i]

   else a[i] := a2[i - n div 2];

 writeln('Выходной массив: ', a);

end.

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