Вопрос задан 25.06.2023 в 15:50. Предмет Информатика. Спрашивает Романова Юлия.

Помогите пожалуйста срочно Заполните массив случайными числами в интервале [-100,100] и

переставить элементы так, чтобы все положительные элементы стояли в начале массива, а все отрицательные и нули-в конце. Вычислите количество положительных элементов. через паскаль
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Дан Валерия.

Ответ:

pascalABC

Объяснение:

var

 a: array of integer;

 i, j, n, k: integer;

begin

 Write('Введите размер массива: '); ReadLn(n);

 SetLength(a, n);

 Randomize();

 for i := 0 to n - 1 do begin

   a[i] := random(201) - 100;

   if a[i] > 0 then inc(k);

 end;

 for i := 0 to n - 2 do begin

   if a[i] > 0 then continue;

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

     if a[j] > 0 then begin

       swap(a[i], a[j]);  //перестановка элементов местами

       break;

     end;  

   end;

 end;

 for i := 0 to n - 1 do Write(a[i], ', '); WriteLn;

 WriteLn('В массиве ', k, ' положительных элементов.');

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, вот пример программы на языке Pascal, которая выполняет задачу, которую вы описали:

pascal
program RearrangeArray; const N = 10; // Размер массива var arr: array[1..N] of integer; i, temp, positiveCount: integer; begin // Заполняем массив случайными числами в интервале [-100, 100] Randomize; for i := 1 to N do arr[i] := Random(201) - 100; // Выводим исходный массив writeln('Исходный массив:'); for i := 1 to N do write(arr[i], ' '); // Переставляем элементы так, чтобы положительные были в начале, отрицательные и нули - в конце positiveCount := 0; for i := 1 to N do begin if arr[i] > 0 then begin positiveCount := positiveCount + 1; temp := arr[i]; arr[i] := arr[positiveCount]; arr[positiveCount] := temp; end; end; // Выводим переставленный массив writeln; writeln('Массив после перестановки:'); for i := 1 to N do write(arr[i], ' '); // Выводим количество положительных элементов writeln; writeln('Количество положительных элементов: ', positiveCount); readln; end.

Эта программа создает массив из 10 случайных чисел в интервале [-100, 100], переставляет положительные элементы в начало массива, а отрицательные и нули - в конец. Количество положительных элементов выводится на экран. Не забудьте настроить размер массива (N), как вам необходимо.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос