Определить, имеется ли в записи числа N цифра «2» - C (СИ)

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

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

Помогите решить пожалуйста, 4 задача цикл while
4) Дано целое число N (>0). С помощью операций деления нацело и взятия остатка от деления определить, имеется ли в записи числа N цифра «2». Если имеется, то вывести TRUE, если нет — вывести FALSE.

Решение задачи: «Определить, имеется ли в записи числа N цифра «2»»

textual
Листинг программы
#include <stdio.h>
 
int main() {
    int n;
    if (scanf("%d", &n) != 1 || n <= 0) {
        return -1;
    }
    while (n != 0 && n % 10 != 2) {
        n /= 10;
    }
    if (n == 0) {
        puts("FALSE");
    } else {
        puts("TRUE");
    }
    return 0;
}

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

В этом коде:

  1. Объявлена переменная n типа int, которая будет использоваться для хранения числа, вводимого пользователем.
  2. При помощи функции scanf вводится число и сохраняется в переменной n.
  3. Производится проверка корректности ввода: если число не введено или введено некорректное значение (меньше или равно нулю), то программа возвращает -1.
  4. Если ввод корректен, то начинается цикл, который будет искать в числе цифру 2.
  5. В каждой итерации цикла число делится на 10 и проверяется остаток от деления на 2. Если остаток от деления не равен 2, то цикл продолжается.
  6. Если в числе не осталось ни одной цифры, то это означает, что число не содержит цифры 2, и программа выводит FALSE.
  7. Если в числе осталась цифра 2, то программа выводит TRUE.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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