首页 > 解决方案 > 你能帮我解决这个素数函数吗?

问题描述

“前 5 个以 1 结尾的素数是:11, 31, 41, 61, 71

编写一个程序来计算前 5000 个以 9 结尾的素数。你可以使用任何常见的编程语言,如 C、C++、Java、C#、Python 等。

public class nbrPremier {
public static void main(String[] args) {
int reste;
boolean flag = true;
int n = 0, 5000;
for(int i=2; i <= n/2; i++)
{
//nombre est divisible par lui-meme
reste = n%i;
//si le reste est 0, alors arrete la boucle. Sinon continuer la boucle
if(reste == 0)
{
flag = false;
break;
}
}
//si flag est true, alors nombre est premier, sinon non premier
if(flag)
System.out.println(n+ " est un nombre premier");
else
System.out.println(n + " n'est pas un nombre premier");

问题是我怎么知道 9 结束的数字?

标签: java

解决方案


问题是我怎么知道 9 结束的数字?

n % 10 == 9将确定除以 10 时的余数是否为 9 - 即 的最后一位是否n为 9。

在更一般的情况下,您可以采用字符串表示形式并检查最后一个字符是否为'9',但这更笨拙且此处不需要。


推荐阅读