8.
Логические функции. Совершенные числа
Совершенным называется число, равное сумме всех своих делителей, меньших его самого (например, число 6=1+2+3). Напишите программу, которая вводит натуральное число N и определяет, является ли число N совершенным. Используйте функцию для нахождения суммы делителей числа и логическую функцию для проверки является ли число совершенным или нет.
Входные данные: входная строка содержит натуральное число N .
Выходные данные: если число N – совершенное, программа должна вывести слово 'YES', иначе – слово 'NO'.
Примеры.
| Входные данный |
Выходные данные |
| 28 |
YES |
| 29 |
NO |
Вставьте недостающие фрагменты кода
C#
| 1 |
using System;
|
| 2 |
class Program
|
| 3 |
{
|
| 4 |
static int sumOfDivisors(int x) // нахождение суммы числа делителей, меньших его
|
| 5 |
{
|
| 6 |
|
| 7 |
|
| 8 |
|
| 9 |
|
| 10 |
|
| 11 |
|
| 12 |
|
| 13 |
|
| 14 |
|
| 15 |
}
|
| 16 |
static bool isPerfect(int x) // является ли число x совершенным
|
| 17 |
{
|
| 18 |
|
| 19 |
|
| 20 |
|
| 21 |
|
| 22 |
|
| 23 |
|
| 24 |
|
| 25 |
|
| 26 |
}
|
| 27 |
static void Main()
|
| 28 |
{
|
| 29 |
int x = Convert.ToInt32(Console.ReadLine());
|
| 30 |
if (isPerfect(x))
|
| 31 |
{
|
| 32 |
Console.WriteLine("YES");
|
| 33 |
}
|
| 34 |
else
|
| 35 |
{
|
| 36 |
Console.WriteLine("NO");
|
| 37 |
}
|
| 38 |
}
|
| 39 |
}
|