0
点赞
收藏
分享

微信扫一扫

P1217(洛谷)

f12b11374cba 2022-03-11 阅读 61

回文质数

在这里插入图片描述
在这里插入图片描述
做题仔细看说明提示,可以带来灵感,这篇文章小编先Mark一下.

  • 回文求解
public static boolean IsHuiwen(int x) {
		if (x < 0 || (x % 10 == 0 && x != 0))
	        return false;
		
	    int j = 0;
	    while (x > j) {
	        j = j * 10 + x % 10;   //从低位反转
	        x = (int) x / 10;
	    }
	    return x == j || x == (int)j / 10;
		
	}
  • 求质数
public static boolean IsShow(int k) {
		boolean flag = true;
		for (int i = 2; i < k; i++) {
			if (k % i == 0) {
				flag = false;
				break;
			}
		}
		return flag;
	}

最后附加上整体的代码

import java.util.Scanner;


public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int a = sc.nextInt();
		int b = sc.nextInt();
		boolean flag = false;
		for (int i = a; i <= b; i++)
        { 
        	if(IsHuiwen(i) == true){
        		flag = IsShow(i);
        		if (flag) {
        			System.out.println(i);
				}
        	}   
        }	
	}
	public static boolean IsShow(int k) {
		boolean flag = true;
		for (int i = 2; i < k; i++) {
			if (k % i == 0) {
				flag = false;
				break;
			}
		}
		return flag;
	}
	public static boolean IsHuiwen(int x) {
		if (x < 0 || (x % 10 == 0 && x != 0))
	        return false;
		
	    int j = 0;
	    while (x > j) {
	        j = j * 10 + x % 10;
	        x = (int) x / 10;
	    }
	    return x == j || x == (int)j / 10;
		
	}
}
举报

相关推荐

0 条评论