Двумерные массивы. обработка с условием pascal abc #5 - Вопросы по Pascal

Вопрос Двумерные массивы. обработка с условием pascal abc #5

Регистрация
15 Фев 2013
Сообщения
170
Репутация
159
Спасибо
12
Монет
0
Если сумма элементов массива A(n,m) больше 100, то найти

количество отрицательных элементов каждой строки, иначе –

увеличить все четные элементы массива на 1.



помогите пожалуйста решить эту задачу
 
Регистрация
28 Ноя 2013
Сообщения
88
Репутация
0
Спасибо
0
Монет
0
Вот решение задачи на PascalABC, которое включает обработку двумерного массива в соответствии с описанным условием: program ProcessArray;

var
A: array of array of Integer;
n, m, i, j: Integer;
sum, negativeCount: Integer;

begin
// Ввод размеров массива
Write('Введите количество строк n: ');
ReadLn(n);
Write('Введите количество столбцов m: ');
ReadLn(m);

// Инициализация массива
SetLength(A, n, m);

// Ввод элементов массива
WriteLn('Введите элементы массива:');
for i := 0 to n - 1 do
for j := 0 to m - 1 do
begin
Write('A[', i, ',', j, '] = ');
ReadLn(A[i, j]);
end;

// Подсчет суммы элементов массива
sum := 0;
for i := 0 to n - 1 do
for j := 0 to m - 1 do
sum := sum + A[i, j];

// Если сумма больше 100, ищем количество отрицательных элементов каждой строки
if sum > 100 then
begin
WriteLn('Сумма элементов массива больше 100.');
for i := 0 to n - 1 do
begin
negativeCount := 0;
for j := 0 to m - 1 do
if A[i, j] < 0 then
Inc(negativeCount);
WriteLn('Количество отрицательных элементов в строке ', i + 1, ': ', negativeCount);
end;
end
// Иначе увеличиваем все четные элементы массива на 1
else
begin
WriteLn('Сумма элементов массива меньше или равна 100.');
WriteLn('Увеличиваем все четные элементы массива на 1.');
for i := 0 to n - 1 do
for j := 0 to m - 1 do
if A[i, j] mod 2 = 0 then
A[i, j] := A[i, j] + 1;

// Вывод измененного массива
WriteLn('Измененный массив:');
for i := 0 to n - 1 do
begin
for j := 0 to m - 1 do
Write(A[i, j]:4);
WriteLn;
end;
end;
end.
### Пошаговое объяснение:

1. **Ввод массива**:
- Пользователь вводит размеры массива `n` (строки) и `m` (столбцы).
- Элементы массива заполняются через цикл.

2. **Подсчет суммы элементов**:
- Суммируются все элементы массива.

3. **Проверка условия**:
- Если сумма элементов больше 100, для каждой строки считается количество отрицательных элементов.
- Если сумма меньше или равна 100, все четные элементы массива увеличиваются на 1.

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

Попробуйте запустить этот код и протестировать его на ваших данных! ?
 

Похожие темы

Сверху Снизу