Вопрос задан 05.07.2026 в 16:54.
Предмет Информатика.
Спрашивает Максимова Таня.
В Паскаль. 1. Найти наибольший элемент и его номер в последовательности, элементы которой вводятся с клавиатуры. Размер произвольный. 2. Упорядочить данную последовательность по убыванию. Элементы вводятся с клавиатуры. Размер произвольный. 3. Упорядочить данную последовательность по убыванию. Массив задан датчиком случайных чисел на интервале [-54,33]. Размер произвольный. 4. Массив А вводится с клавиатуры. Сформировать новый массив В, состоящий из положительных элементов массива А. Размер произвольный.
Ответы на вопрос
Отвечает Дудин Максим.
Ниже приведены решения всех 4 задач на языке Pascal (Free Pascal / Turbo Pascal стиль). Во всех примерах размер массива задаётся пользователем во время выполнения программы.
1. Найти максимальный элемент и его номер в последовательности
pascalprogram MaxElement;
var
a: array[1..1000] of integer;
n, i, max, pos: integer;
begin
write('Введите количество элементов: ');
readln(n);
write('Введите элементы: ');
for i := 1 to n do
read(a[i]);
max := a[1];
pos := 1;
for i := 2 to n do
if a[i] > max then
begin
max := a[i];
pos := i;
end;
writeln('Максимальный элемент: ', max);
writeln('Его номер: ', pos);
end.
2. Упорядочить последовательность по убыванию (ввод с клавиатуры)
Используем сортировку пузырьком:
pascalprogram SortDescending;
var
a: array[1..1000] of integer;
n, i, j, temp: integer;
begin
write('Введите количество элементов: ');
readln(n);
write('Введите элементы: ');
for i := 1 to n do
read(a[i]);
for i := 1 to n - 1 do
for j := 1 to n - i do
if a[j] < a[j + 1] then
begin
temp := a[j];
a[j] := a[j + 1];
a[j + 1] := temp;
end;
writeln('Отсортированный массив по убыванию:');
for i := 1 to n do
write(a[i], ' ');
end.
3. Упорядочить последовательность по убыванию (массив заполняется случайными числами [-54..33])
pascalprogram RandomSortDescending;
var
a: array[1..1000] of integer;
n, i, j, temp: integer;
begin
randomize;
write('Введите количество элементов: ');
readln(n);
for i := 1 to n do
a[i] := random(88) - 54; { диапазон [-54..33] }
writeln('Исходный массив:');
for i := 1 to n do
write(a[i], ' ');
writeln;
for i := 1 to n - 1 do
for j := 1 to n - i do
if a[j] < a[j + 1] then
begin
temp := a[j];
a[j] := a[j + 1];
a[j + 1] := temp;
end;
writeln('Отсортированный массив по убыванию:');
for i := 1 to n do
write(a[i], ' ');
end.
4. Сформировать массив B из положительных элементов массива A
pascalprogram PositiveArray;
var
a, b: array[1..1000] of integer;
n, i, k: integer;
begin
write('Введите количество элементов массива A: ');
readln(n);
write('Введите элементы массива A: ');
for i := 1 to n do
read(a[i]);
k := 0; { индекс массива B }
for i := 1 to n do
if a[i] > 0 then
begin
k := k + 1;
b[k] := a[i];
end;
writeln('Массив B (положительные элементы):');
for i := 1 to k do
write(b[i], ' ');
end.
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

