
Даю 98 баллов Решить на паскале 1) Дан двумерный массив целых чисел: а) сумму нечетных элементов
в каждом столбце (строке); в) количество элементов кратных А или В; с) найти столбец с минимальной суммой элементов. 2) Дан двухмерный массив размером nxn, заполненный целыми числами. а) все его элементы, кратные трем, записать в одномерный массив.

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

1.
program raf105;
const
n = 3; //Размер матрицы
var
ar: array[1..n,1..n] of integer;
n_sum,a,b,ab_c,min_sum,sum,min_pos,i,j: integer;
begin
write('Введите 2 числа (A, B): ');
readln(a,b);
for i:=1 to n do
begin
writeln('Заполните столбец ',i);
for j:=1 to n do
begin
readln(ar[i,j]);
if (ar[i,j] mod a = 0) or (ar[i,j] mod b = 0)
then ab_c+= 1;
end;
end;
writeln;
write('А) Суммы нечётных элементов по столбцам: ');
for i:=1 to n do
begin
n_sum:= 0;
for j:=1 to n do
begin
if ar[i,j] mod 2 <> 0
then n_sum+= ar[i,j];
end;
write(n_sum,' ')
end;
writeln;
writeln('В) Количество элементов кратных ',a,' или ',b,': ',ab_c);
min_sum:= 10000;
sum:= 10000;
for i:=1 to n do
begin
if sum<min_sum
then begin
min_sum:= sum;
min_pos:= i-1;
end;
sum:= 0;
for j:=1 to n do
sum+= ar[i,j];
end;
writeln('С) Минимальная сумма элементов у столбца с номером: ',min_pos);
end.
2.
program raf105;
const
n = 3; //Размер матрицы
var
a: array[1..n,1..n] of integer;
b: array[1..n*n] of integer;
counter,i,j: integer;
begin
for i:=1 to n do
begin
writeln('Заполните столбец ',i);
for j:=1 to n do
begin
readln(a[i,j]);
if a[i,j] mod 3 = 0
then begin
counter+= 1;
b[counter]:= a[i,j];
end;
end;
end;
writeln;
write('Массив элементов кратных трём: ');
for i:=1 to counter do
write(b[i],' ');
end.
PascalABC 3.4.2



Конечно, я могу помочь вам написать программу на языке Pascal для решения данных задач. Для начала, давайте рассмотрим первую задачу:
- Дан двумерный массив целых чисел: а) Сумма нечетных элементов в каждом столбце (строке):
pascalprogram SumOfOdds; const n = 3; // Размерность массива, вы можете изменить по своему усмотрению var arr: array[1..n, 1..n] of integer; i, j, sum: integer; begin // Заполнение массива arr вашими данными // Рассчитываем сумму нечетных элементов в каждом столбце for j := 1 to n do begin sum := 0; for i := 1 to n do begin if arr[i, j] mod 2 <> 0 then sum := sum + arr[i, j]; end; writeln('Сумма нечетных элементов в столбце ', j, ': ', sum); end; end.
в) Количество элементов, кратных А или B:
pascalprogram CountMultiples; const n = 3; // Размерность массива, вы можете изменить по своему усмотрению A = 3; // Задайте значение A B = 5; // Задайте значение B var arr: array[1..n, 1..n] of integer; i, j, countA, countB: integer; begin // Заполнение массива arr вашими данными // Инициализируем счетчики countA := 0; countB := 0; // Подсчитываем количество элементов, кратных A или B for i := 1 to n do begin for j := 1 to n do begin if (arr[i, j] mod A = 0) or (arr[i, j] mod B = 0) then begin if arr[i, j] mod A = 0 then countA := countA + 1; if arr[i, j] mod B = 0 then countB := countB + 1; end; end; end; writeln('Количество элементов, кратных A (', A, '): ', countA); writeln('Количество элементов, кратных B (', B, '): ', countB); end.
с) Найти столбец с минимальной суммой элементов:
pascalprogram MinSumColumn; const n = 3; // Размерность массива, вы можете изменить по своему усмотрению var arr: array[1..n, 1..n] of integer; i, j, minColumn, minSum, currentSum: integer; begin // Заполнение массива arr вашими данными // Инициализируем минимальную сумму и номер столбца minSum := MaxInt; minColumn := -1; // Находим столбец с минимальной суммой элементов for j := 1 to n do begin currentSum := 0; for i := 1 to n do begin currentSum := currentSum + arr[i, j]; end; if currentSum < minSum then begin minSum := currentSum; minColumn := j; end; end; writeln('Столбец с минимальной суммой элементов: ', minColumn); writeln('Минимальная сумма элементов: ', minSum); end.
Теперь давайте рассмотрим вторую задачу:
- Дан двухмерный массив размером nxn, заполненный целыми числами: а) Все элементы, кратные трём, записать в одномерный массив:
pascalprogram MultiplesOfThree; const n = 3; // Размерность массива, вы можете изменить по своему усмотрению var arr: array[1..n, 1..n] of integer; i, j, k: integer; multiples: array of integer; begin // Заполнение массива arr вашими данными // Инициализация массива multiples SetLength(multiples, 0); // Находим элементы, кратные трём, и добавляем их в массив multiples for i := 1 to n do begin for j := 1 to n do begin if arr[i, j] mod 3 = 0 then begin SetLength(multiples, Length(multiples) + 1); multiples[High(multiples)] := arr[i, j]; end; end; end; // Выводим элементы, кратные трём, из массива multiples writeln('Элементы, кратные трём:'); for k := 0 to High(multiples) do begin writeln(multiples[k]); end; end.
Эти программы помогут вам решить задачи, описанные в вашем запросе. Не забудьте заменить размерность массива и его содержание соответствующими данными перед запуском программы.


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

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