当前位置:首页 >> 工学 >>

广东海洋大学Java实验二


GDOU-B-11-112

广东海洋大学学生实验报告书(学生用表)
实验名称 学院(系) 学生姓名

Java 流程控制
信息学院 学号 专业

课程名称 Java 程序设计 计算机科学与技术 实验地点 班级

课程号 16232105 计科 1124 实验日期 14/10/16

实验目的: 掌握 Java 流程控制语句 掌握字符串的定义与使用 实验内容: 1、超级素数:一个 n 位超级素数是指一个 n 位正整数,它的前 1 位,前 2 位, . . . , 前 n 位均为素数, 例如, 7331 是个 4 位超级素数, 因为 7, 73, 733, 7331 均为素数。由键盘输入 n (n<9), 然后输出全部的 1---n 位超级素数. 可参考下面的类: class Prime{ public boolean isPrime(long num){ //输入:一个长整数,若为素数 则返回 true,否则返回 false; if(num==1) return false; for(long i=2;i<=Math.sqrt(num);i++){ if(num%i==0) return false; } return true; } public boolean findPrime(long a){ //判断一个数是否为超级素数

boolean flagPrime=true; long b; b=a; while(b>=10) b=b/10; if (b==1) return false; b=a; flagPrime=true; while(b>0) { flagPrime=flagPrime &&isPrime(b); if(flagPrime==true) b=b/10; else break; } if (flagPrime==true) return true; else return false; } }

package shiyan; import java.util.*; public class shiyan2_1 { public static void main(String[] args){ while(true){//可以循环多次输入这个位数 int n;//定义一个输入的位数 while(true){//判断输入的一个数 System.out.print("\n");//输出下面一句话是前面换行 System.out.print("请输入一个正整数n(1<n<9):"); Scanner in=new Scanner(System.in); n=in.nextInt(); if(n>9 || n<1){ System.out.println("输入的数不能大于9或者小于1"); continue; } break; }

long sum=0; for(int q=n;q>0;q--){ sum+=Math.pow(10,(q-1))*9; } System.out.println(sum); for(int i=(int)Math.pow(10,n-1);i<=sum;i++){// 循环找出 2到 n 位数的最大数 sum 之间的所有素数 Prime PP= new Prime(); PP.isPrime(i); } } } } class Prime{//素数类 public boolean isPrime(long num){//判断并一个数num是素数返回true否则返回false //int count=1;//定义一个行数让输出素数每行显示固定个数 if(num==1)return false; for(long i=2;i<=Math.sqrt(num);i++){ if(num %i==0)return false; }

System.out.print(num+" "); return true; } //} /*public boolean findPrime(long a){//判断一个数是否为超级素数 boolean flagPrime=true; long b; b=a; while(b>=10){ if(b==1){return false;} b=a; flagPrime=true; } while(b>0){ flagPrime=flagPrime&&isPrime(b); if(flagPrime==true){b=b/10;} break; } if(flagPrime==true){return true;}else{return false;}*/ }

2、编写一个程序,读入用户输入的两个整数 K1 和 K2(K2>K1) ,然后(1) 输出 K1 到 K2 之间所有的素数以及所有素数之和,输出时每行显示的个数 自定; (2)输出 K1 和 K2 的最大公约数。
package shiyan; //import java.util.*; import java.io.*; public class shiyan2_2 { public static void main(String[] args) { while(true){//可以循环多次输入需要加密的字符 String start=null; InputStreamReader is=new InputStreamReader(System. in); BufferedReader br=new BufferedReader(is); try{//输入错误判断 System.out.print("请输入需要加密的字符串:"); start=br.readLine(); }catch(Exception e){ e.printStackTrace(); }

password m=new password(); System.out.print("加密后:"); char kk[]=m.jiami(start); System.out.println(kk); System.out.print("解密后:"); char aa[]=m.jiemi(start); System.out.println(aa); } } } class password{ public char[] jiami(String start){ char finish[]=new char[start.length()]; char a ; for(int i=0;i<start.length();i++){ a=start.charAt(i);//返回指定索引处的 char 值 if('a'<=a && a<'z'){ a+=1; }else if('A'<=a && a<'Z'){ a+=1; }else if('0'<=a && a<'9'){ a+=1; }else if(a=='z'){ a='a'; }else if(a=='Z'){ a='A'; }else if(a=='9'){ a='0'; } finish[i]=a; } return finish; } public char[] jiemi(String start){ char finish[]=new char[start.length()]; char a; for(int i=0;i<start.length();i++){ a=start.charAt(i);

if('a'<a && a<='z'){ a-=1; }else if('A'<a && a<='Z'){ a-=1; }else if('0'<a && a<='9'){ a-=1; }else if(a=='a'){ a='z'; }else if(a=='0'){ a='9'; }else if(a=='A'){ a='Z'; } finish[i]=a; } return finish; } }

成绩
注:请用 A4 纸书写,不够另附纸。

指导教师

日期
第 页,共 页


相关文章:
计科1141广东海洋大学java10(实验4)
计科1141广东海洋大学java10(实验4) - GDOU-B-11-112 广东海洋大学学生实验报告书(学生用表) 实验名称 实验四.类的基本编程 专业 课程名称 Java 程序设计与...
广东海洋大学java课程设计报告书-记事本
广东海洋大学java课程设计报告书-记事本 - 广东海洋大学 课程设计报告 课程名称课时学专程号间院业 Java 程序设计与开发技术课程设计 j1620204 201...
广东海洋大学编译原理LL(1)文法分析器实验(java)
广东海洋大学编译原理LL(1)文法分析器实验(java) - GDOU-B-11-112 广东海洋大学学生实验报告书(学生用表) 实验名称 学生姓名 实验 3:语法分析 专业 学号 课程...
广东海洋大学寸金学院JAVA期末考试模拟试卷
广东海洋大学寸金学院JAVA期末考试模拟试卷 - JAVA 复习资料 一、单选题 1、JDK 安装进程中,需设置的环境变量为( D ) A、classpath B、path C、path 和 s...
更多相关标签: