版权声明:版权问题请加微信:17165380098 备注 版权问题 https://blog.csdn.net/qq_30277453/article/details/82857088
Problem Description
从键盘上输入任意一个正整数,然后判断该数是否为素数。
如果是素数则输出"This is a prime."
否则输出“This is not a prime.”
Input
输入任意一个正整数n(1 <= n <= 1000000)。
Output
判断n是否为素数,并输出判断结果:
如果n是素数则输出"This is a prime."
否则输出“This is not a prime.”
特别提醒:请注意对1的判定,1不是素数。
Sample Input
3
Sample Output
This is a prime.
AC的代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n;
n = in.nextInt();
int i,f=1;
if (n == 1)
System.out.println("This is not a prime.");
else if(n==2)
System.out.println("This is a prime.");
else {
for(i=2;i<n;i++){
if(n%i==0){
f = 0;
}
}
if(f == 0)System.out.println("This is not a prime.");
else System.out.println("This is a prime.");
}
}
}
代码结果一样但是OLE(超时)的结果:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n;
n = in.nextInt();
int i;
if (n == 1)
System.out.println("This is not a prime.");
else if(n==2)
System.out.println("This is a prime.");
else {
for(i=2;i<n;i++){
if(n%i==0){
System.out.println("This is not a prime.");
break;
}
else{
System.out.println("This is a prime.");
}
}
}
}
}
相同结果,但是代码不同导致题结果不同。根据两者的对比,可得出结果:标志符标记可以节省代码运算时间