Задачи по Pascal. Найти количество четных и нечетных цифр в числе

Задачи по Pascal

Условие задачи : Написать программу, подсчитывающую количество четных и нечетных цифр в числе (Язык Pascal).

Сложность : легкая

Решение задачи :

Для начала продумаем наше решение. Ну само собой сначала попросим пользователя ввести число, а затем в цикле, сначала возьмем последнюю цифру числа, проверим её на четность, и в зависимости четная она или нет увеличим кол-во четных или нечетных.

Ну а дальше оторвем последнюю цифру у числа и будем так делать пока число не станет равно 0.

Для того чтобы найти количество четных и нечетных цифр в числе нам понадобятся следующие переменные :

  1. Переменная number — для числа
  2. Переменная figure — для цифры которую мы проверять на четность
  3. Переменная countOdd — для количества нечетных элементов
  4. Переменная countEven — для количества четных

Начнем мы с каркаса нашей программы :

uses crt;

var
    number, countOdd , countEven, figure : integer;

begin
write('Введите число : '); readln(number);
end.

Объявили переменные и попросили пользователя ввести число , теперь цикл, подробно как правильно разбить число на цифры вы можете почитать (тут), а как определить четность числа можете (тут)

Там нечего трудного нет, и так пишем цикл :

while(number > 0) do
    begin
        figure := number mod 10;

        if (figure mod 2 = 0) then
            countEven := countEven + 1
        else
            countOdd := countOdd + 1;

        number := number div 10;
    end;

Сначала отделили последнюю цифру, занесли её в переменную , потом проверяем четная она или нет, если да то увеличиваем количество четных элементов иначе нечетных и затем убираем последнюю цифру числа.

И нам осталось только вывести кол-во четных и нечетных элементов :

writeln('Кол-во четных элементов : ', countEven);
writeln('Кол-во нечетных элементов : ', countOdd);

Всё решение задачи Pascal :

uses crt;

var
    number, countOdd , countEven, figure : integer; // объявили переменные

begin
clrscr; // очищаем экран

write('Введите число : '); readln(number); // вводим число

while(number > 0) do // пускаем цикл пока число не станет равным 0
    begin
        figure := number mod 10; // заносим в figure последнюю цифру числа

        if (figure mod 2 = 0) then
            countEven := countEven + 1 // если цифра четныя то увеличиваем кол-во четных
        else
            countOdd := countOdd + 1; // иначе кол-во нечетных

        number := number div 10; // убираем последнюю цифру числа
    end;

writeln('Кол-во четных элементов : ', countEven); // выводим
writeln('Кол-во нечетных элементов : ', countOdd);  // результат

readln; // чтобы программа не закрывалась

end.

cyber
Оцените автора
CyberLesson | Быстро освоить программирование Pascal и C++. Решение задач Pascal и C++
Добавить комментарий