编写一个控制台应用程序,接收一个三位数(如果不是三位数,提示输入错误后重新接收),输出从0至该数中所有的完美数。完美数是指一个数恰好等于它的所有因子之和
时间: 2024-02-13 11:59:36 浏览: 13
好的,这是一个简单的控制台程序,可以实现您的需求:
```csharp
using System;
namespace PerfectNumbers
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入一个三位数:");
string input = Console.ReadLine();
int number;
while (!int.TryParse(input, out number) || number < 100 || number > 999)
{
Console.WriteLine("输入有误,请重新输入一个三位数:");
input = Console.ReadLine();
}
Console.WriteLine($"0到{number}中的完美数有:");
for (int i = 1; i <= number; i++)
{
int sum = 0;
for (int j = 1; j <= i / 2; j++)
{
if (i % j == 0)
{
sum += j;
}
}
if (sum == i)
{
Console.WriteLine(i);
}
}
Console.ReadKey();
}
}
}
```
程序会首先提示用户输入一个三位数,如果输入不正确,程序会一直提示,直到用户输入正确的三位数为止。然后程序会输出从0到该数中所有的完美数。
完美数的判断是通过计算该数的因子之和,如果等于该数本身,那么该数就是完美数。因子的范围是从1到该数的一半。
希望能帮到您,如有问题请随时问我。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)