c# - 质数验证器代码块让我在 C# 中转换问题
问题描述
static void Main(string[] args)
{
if (isPrimeNumber(6))
{
Console.WriteLine("This is prime number");
}
else
{
Console.WriteLine("This is not prime number");
}
Console.ReadLine();
}
private static bool isPrimeNumber(int number)
{
bool result = true;
for (int i = 0; number - 1; i++)
{
if (number % i == 0)
{
result = false;
i = number;
}
}
return result;
}
嘿!我的代码块中有关于素数验证的问题。该程序在 for 循环中返回给我:无法将类型“int”转换为“bool”。我该如何解决?我怎么了?
解决方案
for (int i = 0; number - 1; i++)
应该for (int i = 0; i < number; i++)
是number - 1
不是布尔表达式。
private static bool isPrimeNumber(int number)
{
bool result = true;
for (int i = 2; i < number; i++)
{
if (number % i == 0)
{
result = false;
i = number;
}
}
return result;
}
我修好了它for (int i = 0; i < number; i++)
应该是for (int i = 2; i < number; i++)
推荐阅读
- boolean-expression - 使用步骤简化布尔表达式
- perl - 是否可以修改单词字符类或 \b 边界以排除下划线字符?
- android - 无法在第三方应用程序中打开 Zip 文件
- java - Springboot websockets无法建立连接java.lang.NoSuchMethodError
- kotlin - Android Navigation Instrumentation 测试抛出方法 addObserver 必须在主线程上调用
- php - 为 livewire/message/{component} 获取 404
- docker - 带有传递参数的 Dockerfile RUN 命令
- google-bigquery - 在 WHERE 子句中使用子查询进行 Google BigQuery 优化
- php - 作曲家 - 找不到类
- flutter - 集合内的 Flutter Range Error Firestore 数组