首尾质数 如果一个整数是质数,而且它的首位和未位也都是质数,刚称之为“首尾质数”。现在请你在N个整数中统计出“首尾质数”的总个数。输入:N(N<=1000)下接N个整数(每个整数<=10000,以空格相隔)输出:“首尾质数”的总个数样例:输入:3 37 2 4 输出:2 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这题还是比较简单的,下面是我随便写的一个程序,给你借鉴借鉴下:import java.util.Scanner;//如果一个整数是质数,而且它的首位和未位也都是质数,刚称之为“首尾质数”。//现在请你在N个整数中统计出“首尾质数”的总个数。class SWZS{ Scanner scan=null; int a[]=null; public void input(){ scan=new Scanner(System.in); System.out.println("请输入要输入的整数的个数"); int total=scan.nextInt(); a=new int[total]; System.out.println("请输入这些整数值……"); for(int i=0;i<total;i++){ a[i]=scan.nextInt(); } System.out.println("您输入的整数如下…………"); for(int j=0;j<total;j++){ System.out.print(a[j]+" "); } System.out.println(""); System.out.println("查找后的结果如下…………"); output(); } public void output(){ for(int k=0;k<a.length;k++){ boolean flag=true; for(int i=2;i<=a[k]/2;i++){ if(a[k]%i==0){ flag=false; break; } } if(flag){ String s0=Integer.toString(a[k]); int x1=Integer.parseInt(s0.substring(0,1)); int x2=Integer.parseInt(s0.substring(s0.length()-1,s0.length())); if((x1==2 || x1==3 || x1==5 || x1==7) &&(x2==2 || x2==3 || x2==5 || x2==7)){ System.out.println(a[k]+"是首尾质数!"); } } } }}public class LunTan_01 {public static void main(String[] args) { SWZS swzs=new SWZS(); swzs.input();}}运行结果如下:请输入要输入的整数的个数5请输入这些整数值……4 13 6 23 9您输入的整数如下…………4 13 6 23 9 import java.util.Scanner;public class T { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("输入:"); int n = input.nextInt(); if(n <= 0) { System.out.println("请输入一个正整数!"); System.exit(0); } int count = 0;//计数器,可以用计数器控制每行输出10个 for(int i=2; i<=n; i++) { if(i<10) { if(isPrime(i)) { System.out.print(i + " "); count ++; } } else { String str = String.valueOf(i); int start = str.charAt(0) - '0'; int end = str.charAt(str.length() - 1) - '0'; if(isPrime(i) && isPrime(start) && isPrime(end)) { System.out.print(i + " "); count ++; } } } System.out.println("\n输出:" + count); } private static boolean isPrime(int n) { for(int i=2; i<=(int)Math.sqrt(n); i++) { if(n % i == 0) return false; } return true; }} import java.util.Scanner;public class TestSu { public static void main(String[] args) { Scanner in=new Scanner(System.in); int n=in.nextInt(); int i=1;; String strNum=""; while(i<=n){ strNum+=in.next()+" "; i++; } strNum=strNum.substring(0, strNum.length()-1); System.out.println(calCount(strNum)); } public static int calCount(String num){ int count=0; String sNum[]=num.split(" "); for(int j=0;j<sNum.length;j++){ if(sNum[j].length()==1){ // 当输入的数是一位数时 if((isSu(Integer.parseInt(sNum[j])))){ count++; } }else{ int firstNum=Integer.parseInt(sNum[j].charAt(0)+""); //不是一位数的首位数 int seCondNum=Integer.parseInt(sNum[j].charAt(sNum[j].length()-1)+""); //不是一位数的末尾数 if(isSu(firstNum)&&isSu(seCondNum)){ count++; } } } return count; } public static boolean isSu(int num){ //计算是不是素数 boolean flag=true; for(int i=2;i<=num/2;i++){ if(num%i==0){ flag=false; break; } } return flag; }} 如何throw Exception ? 求解一个面试题 能过来帮忙解决一下.就是我写的一个聊天程序,然后用客户端发给服务器信息,服务器在把信息发给我想要指定的客户端,怎么解决,我用swt写的,代码如下! 正则表达 一道简单的JAVA题目! 生产者消费者应用实例 把图片打包的问题 编译通过但运行没结果 大侠救命!java编程连接数据库的异常! 我用ResultSet得到的结果集,然后一个个的next(),到上百的时候就内存不够了,但是我有384的内存,javaw占了80M Java 中怎么实现一次编译,到处运行? 怎么用字符流读取txt文件的中文都会出现乱码呢
import java.util.Scanner;
//如果一个整数是质数,而且它的首位和未位也都是质数,刚称之为“首尾质数”。
//现在请你在N个整数中统计出“首尾质数”的总个数。class SWZS{
Scanner scan=null;
int a[]=null;
public void input(){
scan=new Scanner(System.in);
System.out.println("请输入要输入的整数的个数");
int total=scan.nextInt();
a=new int[total];
System.out.println("请输入这些整数值……");
for(int i=0;i<total;i++){
a[i]=scan.nextInt();
}
System.out.println("您输入的整数如下…………");
for(int j=0;j<total;j++){
System.out.print(a[j]+" ");
}
System.out.println("");
System.out.println("查找后的结果如下…………");
output();
}
public void output(){
for(int k=0;k<a.length;k++){
boolean flag=true;
for(int i=2;i<=a[k]/2;i++){
if(a[k]%i==0){
flag=false;
break;
}
}
if(flag){
String s0=Integer.toString(a[k]);
int x1=Integer.parseInt(s0.substring(0,1));
int x2=Integer.parseInt(s0.substring(s0.length()-1,s0.length()));
if((x1==2 || x1==3 || x1==5 || x1==7) &&(x2==2 || x2==3 || x2==5 || x2==7)){
System.out.println(a[k]+"是首尾质数!");
}
}
}
}
}
public class LunTan_01 {
public static void main(String[] args) {
SWZS swzs=new SWZS();
swzs.input();
}
}
运行结果如下:
请输入要输入的整数的个数
5
请输入这些整数值……
4 13 6 23 9
您输入的整数如下…………
4 13 6 23 9
import java.util.Scanner;public class T {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("输入:");
int n = input.nextInt();
if(n <= 0) {
System.out.println("请输入一个正整数!");
System.exit(0);
}
int count = 0;//计数器,可以用计数器控制每行输出10个
for(int i=2; i<=n; i++) {
if(i<10) {
if(isPrime(i)) {
System.out.print(i + " ");
count ++;
}
} else {
String str = String.valueOf(i);
int start = str.charAt(0) - '0';
int end = str.charAt(str.length() - 1) - '0';
if(isPrime(i) && isPrime(start) && isPrime(end)) {
System.out.print(i + " ");
count ++;
}
}
}
System.out.println("\n输出:" + count);
}
private static boolean isPrime(int n) {
for(int i=2; i<=(int)Math.sqrt(n); i++) {
if(n % i == 0)
return false;
}
return true;
}}
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int n=in.nextInt();
int i=1;;
String strNum="";
while(i<=n){
strNum+=in.next()+" ";
i++;
}
strNum=strNum.substring(0, strNum.length()-1);
System.out.println(calCount(strNum));
}
public static int calCount(String num){
int count=0;
String sNum[]=num.split(" ");
for(int j=0;j<sNum.length;j++){
if(sNum[j].length()==1){ // 当输入的数是一位数时
if((isSu(Integer.parseInt(sNum[j])))){
count++;
}
}else{
int firstNum=Integer.parseInt(sNum[j].charAt(0)+""); //不是一位数的首位数
int seCondNum=Integer.parseInt(sNum[j].charAt(sNum[j].length()-1)+""); //不是一位数的末尾数
if(isSu(firstNum)&&isSu(seCondNum)){
count++;
}
}
}
return count;
}
public static boolean isSu(int num){ //计算是不是素数
boolean flag=true;
for(int i=2;i<=num/2;i++){
if(num%i==0){
flag=false;
break;
}
}
return flag;
}}