学习-Java循环之break之判断素数

任务描述

本关任务:判断给定的任意一个大于 1 的正整数是否是素数。 素数的定义:在大于 1 的自然数中,除了 1 和它本身以外不再有其他因数的自然数。

相关知识

在之前学习的 Java 循环语句中,只有当循环的判断条件不成立时,才能退出整个循环,如果我们想在循环的判断条件依然成立,但在满足某种条件时,退出整个循环,执行循环体以外的语句,这时候就需要使用到 break 语句。

break 语句

break 语句用于强行退出整个循环,而不管循环的条件判断是否成立,并且不执行循环体内后续的语句。

break 语句使用案例:打印 1 到 10,遇到 4 的倍数时程序自动退出。

 
  
  1. public class BreakTest {
  2. public static void main(String[] args) {
  3. for (int i = 1; i <= 10; i++) {
  4. //判断i是否为4的倍数,如果是,则退出循环。
  5. if (i % 4 == 0) {
  6. break;
  7. }
  8. System.out.print(i+" ");
  9. }
  10. }
  11. }

输出结果如下:

 
  
  1. 1 2 3

从结果中我们可以看到,当 i=4 的时候,循环立即退出,所以 4 以及后续数字都不会被打印出来。

/*
任务:判断给定的任意一个大于 1 的正整数是否是素数。
素数的定义:在大于 1 的自然数中,除了 1 和它本身以外不再有其他因数的自然数。
思路:接收给定的正整数n,从2到n对该数取余,如果存在余数为零,那么该数不为素数,否则就是素数
      
如果不是:请输出“x不是一个素数”。
如果是:请输出“x是一个素数”。

*/
import java.util.Scanner;

public class BreakTest {
    public static void main(String[] args) {
       
        // 请在Begin-End间编写代码
        /********** Begin **********/
        Scanner input = new Scanner(System.in);
        int x = input.nextInt();
        int info = 0;
        for(int i = 2;i <= x / 2;i++){
            if(x % i == 0){
                info = 1;
                break;
            }
        }
        if(info == 0){
        System.out.println(x + "是一个素数");
        }else{
            System.out.println(x + "不是一个素数");
        }   
        /********** End **********/
    }
}

你可能感兴趣的:(java,开发语言,后端)