Вывести из массива слов те слова, у которых число чётных цифр превышает число нечётных - Pascal
Формулировка задачи:
Дан массив из n слов произвольной длины (длина слова не превышает 80 символов). В качестве символов могут использоваться только арабские цифры. Вывести те слова, у которых число четных цифр превышает число нечетных.
Какова реализация через массив? Никак не допру. Спасибо за помощь !
Решение задачи: «Вывести из массива слов те слова, у которых число чётных цифр превышает число нечётных»
textual
Листинг программы
program Project2; {$APPTYPE CONSOLE} uses SysUtils; var n, i, j, x, r: integer; a: array of string; s:Boolean; begin write('Vvedite N:'); readln(n); SetLength(a,n); writeln('Vvedite slova:'); for i := 0 to n-1 do begin repeat s:=True; readln(a[i]); for j:=1 to Length(a[i]) do if not (a[i][j] in ['0'..'9']) then begin s:=False; Writeln('Vvedite 3anovo'); Break; end; until s; end; writeln('Nai`dennie slova:'); for i := 0 to n-1 do begin x:= 0; r := 0; for j := 0 to length(a[i]) do if not a[i][j] in ['1','3','5','7','9'] then inc(x) else inc(r); if r > x then writeln(a[i]); end; Readln; end.
Объяснение кода листинга программы
- Объявление переменных:
n
: целочисленная переменная для хранения количества слов;i
: целочисленная переменная для использования в цикле;j
: целочисленная переменная для использования в цикле;x
: целочисленная переменная для подсчета четных цифр в слове;r
: целочисленная переменная для подсчета нечетных цифр в слове;a
: массив строк, где будут храниться слова;s
: логическая переменная для проверки корректности ввода слова.
- Запрос ввода количества слов:
- Пользователю будет предложено ввести значение переменной
n
.
- Пользователю будет предложено ввести значение переменной
- Выделение памяти под массив:
- Вызов функции
SetLength
для установки размера массиваa
равным значениюn
.
- Вызов функции
- Ввод слов:
- Цикл для ввода слов в массив
a
. - Используется проверка, чтобы убедиться, что введенное слово состоит только из цифр.
- Если слово содержит нецифровые символы, пользователю будет предложено ввести слово снова.
- Цикл для ввода слов в массив
- Поиск слов с бОльшим количеством нечетных цифр:
- Цикл для перебора слов в массиве
a
. - Для каждого слова проверяется, сколько в нем четных и нечетных цифр.
- Если количество нечетных цифр больше четных, выводится данное слово.
- Цикл для перебора слов в массиве
- Конец программы:
- Ожидание ввода перед завершением программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д