Top.Mail.Ru
Ответы

Программирование С#. CРОЧНО. Помогите пожалуйста

Напишите программу, которая вычисляет количество чисел от 1 до N (включительно), удовлетворяющих хотя бы одному условию из двух: число делится на 19; произведение цифр числа делится на 12. N вводится пользователем с клавиатуры. Входные данные: Вводится натуральное число N <= 10000. Выходные данные: Количество чисел от 1 до N, которые удовлетворяют хотя бы одному условию из двух: число делится на 19; произведение цифр числа делится на 12. Так, например, если программе на вход подать число 10, она должна вывести число 1, т.к. в диапазоне от 1 до 10 только 19 удовлетворяет условию задачи. В поле краткого ответа введите число, которое получается в результате работы программы при вводе числа 10000.

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Просветленный
123456789101112131415161718192021222324252627282930313233343536373839404142434445
 using System; 
 
class Program 
{ 
    static void Main() 
    { 
        // Чтение входного числа N 
        Console.Write("Введите число (N <= 10000): "); 
        int N = int.Parse(Console.ReadLine()); 
         
        // Инициализация счетчика чисел, удовлетворяющих условиям 
        int count = 0; 
         
        // Перебор чисел от 1 до N 
        for (int i = 1; i <= N; i++) 
        { 
            if (ДелитсяНа19(i) || ПроизведениеЦифрДелитсяНа12(i)) 
            { 
                count++; 
            } 
        } 
         
        // Вывод результата 
        Console.WriteLine($"Количество чисел от 1 до {N}, удовлетворяющих условиям: {count}"); 
    } 
     
    // Проверка, делится ли число на 19 
    static bool ДелитсяНа19(int number) 
    { 
        return number % 19 == 0; 
    } 
     
    // Проверка, делится ли произведение цифр числа на 12 
    static bool ПроизведениеЦифрДелитсяНа12(int number) 
    { 
        int product = 1; 
        while (number > 0) 
        { 
            int digit = number % 10; 
            product *= digit; 
            number /= 10; 
        } 
        return product % 12 == 0; 
    } 
}  

Чтобы узнать результат для N = 10000, запустите программу и введите 10000 при запросе. Программа вычислит количество чисел от 1 до 10000, которые удовлетворяют хотя бы одному из условий.

Объяснение функций:

  1. ДелитсяНа19(int number): Проверяет, делится ли число на 19.

  2. ПроизведениеЦифрДелитсяНа12(int number): Вычисляет произведение цифр числа и проверяет, делится ли оно на 12.