В одномерном массиве вывести на экран чётные и нечётные по значению элементы - Turbo Pascal (247717)

Узнай цену своей работы

Формулировка задачи:

В одномерном массиве вывести на экран чётные и нечётные по значению элементы, а также количество тех и других. Вот такая программа:
На выходе имеем:
Почему массив с нечётными по значению элементами выдаёт нули? Если программы делать по отдельности на чётные и нечётные, то всё в порядке. А вот объединить их в одну программу не получилось. Вроде бы сделано всё правильно. В чём же дело?

Решение задачи: «В одномерном массиве вывести на экран чётные и нечётные по значению элементы»

textual
Листинг программы
uses crt;
const N = 10;
var A: array [1.. N] of integer;
    i, k, k1: integer;
begin
ClrScr;
Randomize;
writeln(' Введённый массив:');
for i:= 1 to N do
 begin
  A[i]:=-5+Random(50);
  write(A[i]:3);
  if (A[i] mod 2 = 0) then inc(k) else inc(k1);
 end;
writeln;
writeln(' Кол. чётных по значению эл-в: ' , k);
writeln(' Кол. нечётных по значению эл-в: ' , k1);
if k=0 then write('Все элементы масива нечетные')
else if k1=0 then write('Все элементы массива четные')
else
 begin
  writeln(' Массив с чётными по значению элементами: ');
  for i:= 1 to N do
  if (A[i] mod 2 = 0) then write(A[i]:3);
  writeln;
  writeln(' Массив с нечётными по значению элементами:');
  for i:= 1 to N do
  if (A[i] mod 2 <> 0) then  write(A[i]:3);
 end;
readln
end.

Объяснение кода листинга программы

В этом коде:

  1. Объявляются переменные:
    • A - массив на 10 элементов типа integer;
    • i, k, k1 - целочисленные переменные для счётчика.
  2. С помощью функции Randomize инициируется генератор случайных чисел.
  3. С помощью цикла for выводятся на экран все элементы массива A с шагом 3.
  4. В каждой итерации цикла к элементам массива A применяется операция модуля 2 (A[i] mod 2), которая возвращает 0, если число чётное, и 1, если число нечётное.
  5. Если результат равен 0, то к счётчику k прибавляется единица, иначе к счётчику k1 прибавляется единица.
  6. После завершения цикла выводится на экран количество чётных и нечётных элементов массива.
  7. Если количество чётных элементов равно нулю, то выводится сообщение Все элементы массива нечетные.
  8. Если количество нечётных элементов равно нулю, то выводится сообщение Все элементы массива четные.
  9. Если же оба счётчика не равны нулю, то выводится сообщение Массив с чётными по значению элементами: и последовательно выводятся все чётные элементы массива A.
  10. Затем выводится сообщение Массив с нечётными по значению элементами: и последовательно выводятся все нечётные элементы массива A.

Оцени полезность:

12   голосов , оценка 4 из 5
Похожие ответы