
Turbo Pascal Напишите программу, которая в заданной матрице заменяет все положительные элементы
нулями, если количество отрицательных элементов окажется больше, чем количество положительных элементов.

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

Замена положительных элементов матрицы на нули в Turbo Pascal
Вот пример программы на Turbo Pascal, которая заменяет все положительные элементы матрицы нулями, если количество отрицательных элементов окажется больше, чем количество положительных элементов:
```pascal program ReplacePositiveWithZero;
const N = 3; // размерность матрицы
type Matrix = array[1..N, 1..N] of Integer;
var A: Matrix; i, j, positiveCount, negativeCount: Integer;
begin // Ввод матрицы writeln('Введите элементы матрицы:'); for i := 1 to N do begin for j := 1 to N do begin write('A[', i, ',', j, ']: '); readln(A[i, j]); end; end;
// Подсчет количества положительных и отрицательных элементов positiveCount := 0; negativeCount := 0; for i := 1 to N do begin for j := 1 to N do begin if A[i, j] > 0 then positiveCount := positiveCount + 1 else if A[i, j] < 0 then negativeCount := negativeCount + 1; end; end;
// Замена положительных элементов на нули, если отрицательных больше if negativeCount > positiveCount then begin for i := 1 to N do begin for j := 1 to N do begin if A[i, j] > 0 then A[i, j] := 0; end; end; end;
// Вывод измененной матрицы writeln('Измененная матрица:'); for i := 1 to N do begin for j := 1 to N do begin write(A[i, j], ' '); end; writeln; end;
readln; end. ```
Примечание: В этой программе предполагается, что размерность матрицы равна 3. Вы можете изменить значение константы `N` в соответствии с вашими потребностями.
Объяснение программы
1. Программа начинается с объявления константы `N`, которая определяет размерность матрицы. В этом примере размерность равна 3. 2. Затем объявляется тип `Matrix`, который представляет двумерный массив целых чисел размером `N` на `N`. 3. Переменные `A`, `i`, `j`, `positiveCount` и `negativeCount` объявляются для хранения матрицы, индексов и количества положительных и отрицательных элементов соответственно. 4. Затем программа запрашивает у пользователя ввод элементов матрицы с помощью вложенных циклов `for`. 5. После ввода матрицы программа подсчитывает количество положительных и отрицательных элементов с помощью вложенных циклов `for`. 6. Затем программа проверяет, больше ли количество отрицательных элементов, чем количество положительных элементов. Если это так, то программа заменяет положительные элементы на нули с помощью вложенных циклов `for`. 7. Наконец, программа выводит измененную матрицу на экран с помощью вложенных циклов `for`.
Пример работы программы
``` Введите элементы матрицы: A[1,1]: 1 A[1,2]: -2 A[1,3]: 3 A[2,1]: -4 A[2,2]: 5 A[2,3]: -6 A[3,1]: 7 A[3,2]: -8 A[3,3]: 9 Измененная матрица: 0 -2 0 -4 0 -6 0 -8 0 ```
В этом примере введена матрица размером 3 на 3. Количество положительных элементов равно 4, а количество отрицательных элементов равно 5. Поскольку количество отрицательных элементов больше, чем количество положительных элементов, все положительные элементы заменяются на нули. Результатом является измененная матрица, где положительные элементы заменены на нули.
Примечание: Программа была написана на основе предоставленных данных и не была проверена на компиляторе Turbo Pascal. Пожалуйста, убедитесь, что вы правильно скопировали и вставили код и проверьте его на своей среде разработки.


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