
Срочно ребят помогите прошу нужно решить , а я никак не могу пол дня сижу и не получается , завтра
сдавать Разработать алгоритм и написать программу на языке TURBO PASCAL Сформировать одномерный массив из элементов массива двумерного по указанному правилу и упорядочить элементы созданного массива в соответствие с вариантом. Числа M и N вводятся с клавиатуры. Для задания исходной матрицы предусмотреть два варианта: ввод с клавиатуры и ввод с помощью датчика случайных чисел. Возможность выбора пользователем варианта ввода матрицы должна быть предусмотрена в тексте программы. И САМО ЗАДАНИЕ Сформировать массив В из Произведений элементов нечетных столбов массива А (m, n). Отсортировать массив по возрастанию.

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

A: array[1..100, 1..100] of integer;
B: array[1..100]of integer;
i, j, k, n, m, imax: integer;
manual: boolean;
begin
writeln('Ручной ввод (true/false)==>');
read(manual);
if manual then begin
writeln('Размер массива n, m ==>');
read(n, m);
end
else begin
n := random(10) + 5;
m := random(10) + 5;
end;
for i := 1 to n do
begin
writeln();
for j := 1 to m do
begin
if manual then
read(a[i, j])
else begin
a[i, j] := random(100) - 50;
write(a[i, j]:3, ' ');
end;
end;
end;
writeln();
writeln();
for j := 1 to m do
if j mod 2 = 1 then begin
k := k + 1;
b[k] := 1;
for i := 1 to n do
b[k] := b[k] * a[i, j];
write(b[k], ' ');
end;
writeln();
for i := 1 to k - 1 do
begin
imax := i;
for j := i + 1 to k do
if b[j] > b[imax] then
imax := j;
n := b[i];
b[i] := b[imax];
b[imax] := n;
end;
for i := 1 to k do
write(b[i], ' ');
end.



Разработка алгоритма и написание программы на языке Turbo Pascal
Для решения данной задачи, необходимо выполнить следующие шаги:
1. Ввод данных: - Считать значения переменных M и N с клавиатуры. - Предусмотреть возможность выбора пользователем варианта ввода матрицы (с клавиатуры или с помощью датчика случайных чисел). Это можно сделать с помощью условного оператора, где пользователь будет вводить соответствующую цифру для выбора варианта.
2. Создание исходной матрицы: - Создать двумерный массив A размером M x N. - Заполнить массив A в соответствии с выбранным вариантом ввода матрицы.
3. Формирование массива В: - Создать одномерный массив B размером M. - Заполнить массив B произведениями элементов нечетных столбцов массива A.
4. Сортировка массива В: - Отсортировать массив B по возрастанию.
5. Вывод результатов: - Вывести исходную матрицу A. - Вывести отсортированный массив B.
Пример алгоритма:
```pascal program TurboPascalProgram;
const MAX_SIZE = 100;
var A: array[1..MAX_SIZE, 1..MAX_SIZE] of Integer; B: array[1..MAX_SIZE] of Integer; M, N, i, j, temp: Integer;
procedure InputMatrix; begin // Ввод матрицы с клавиатуры или с помощью датчика случайных чисел // Реализация ввода матрицы опущена для краткости end;
procedure CalculateArrayB; begin // Формирование массива B for j := 1 to N do begin if j mod 2 <> 0 then begin temp := 1; for i := 1 to M do temp := temp * A[i, j]; B[(j + 1) div 2] := temp; end; end; end;
procedure SortArrayB; var swapped: Boolean; begin // Сортировка массива B по возрастанию repeat swapped := False; for i := 1 to M - 1 do begin if B[i] > B[i + 1] then begin temp := B[i]; B[i] := B[i + 1]; B[i + 1] := temp; swapped := True; end; end; until not swapped; end;
procedure OutputResults; begin // Вывод исходной матрицы A // Вывод отсортированного массива B end;
begin // Ввод данных Write('Введите значение M: '); Readln(M); Write('Введите значение N: '); Readln(N);
// Создание исходной матрицы InputMatrix;
// Формирование массива B CalculateArrayB;
// Сортировка массива B SortArrayB;
// Вывод результатов OutputResults; end. ```
Примечание: В данном примере алгоритма представлен общий подход к решению задачи. Реализация ввода матрицы и вывода результатов опущена для краткости. Вам необходимо дополнить код соответствующими операциями ввода и вывода данных.
Пожалуйста, обратите внимание, что язык Turbo Pascal устарел и не поддерживается в современных средах разработки. Рекомендуется использовать более современные языки программирования, такие как Python, C++, Java и другие.


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







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