基础题练习
打印1000~2000年的所有闰年
public class LeapYear {
public static void main(String[] args){
int year = 1000;
while(year <= 2000){
if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
System.out.println(year);
}
year++;
}
}
}
判断素数
素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数。
import java.util.Scanner;
public class IsPrime {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int j = 2;
if(num <= 0){
System.out.println(num+"不是素数");
return;
}
while(num % j != 0){
j++;
}
if(num == j){
System.out.println(num+"是素数");
} else {
System.out.println(num+"不是素数");
}
}
}
或者:
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
if(n <= 0) {
System.out.println(n+"不是素数");
return;
}
int i = 2;
for (; i < n; i++) {
if(n % i == 0) {
System.out.println(n+"不是素数");
break;
}
}
//代码走到这里,有2种情况:
//1、循环条件退出(素数) 2、遇到break(不是素数)
if(i >= n) {
System.out.println(n+"是素数!");
}
}
优化版: 循环到该数的1/2