算法第二次作业
2014-03-19 19:33
183 查看
2.1: 判断一个正整数是否为质数的算法。函数签名如下int isPrime(long a) 输入:一个长整数a 输出:返回1(为质数),返回0(非质数)
import java.util.*;
public class Prime {
static int isPrime(long a){
if(a==1) return 0;
for(long i=2;i<=Math.sqrt(a);i++){
if(a%i==0)
return 0;
}
return 1;
}
public static void main(String args[]){
System.out.println("请输入一个长整数:");
Scanner scan=new Scanner(System.in);
long x = scan.nextLong();
int y =isPrime(x);
if(y==0){
System.out.println(x + "不是质数,返回" + y);
}else{
System.out.println(x + "是质数,返回" + y);
}
}
}
2.2: 随机生成一个n bit位的长整数。函数签名如下
long createRndInteger(int n)
输入:随机数bit位的长度为n(解释:3bit位,则最大为111,最小为100;n bit位,则该数字二进制长度为n)
输出:返回该随机数
import java.util.Random; import java.util.Scanner; public class createRndInteger { public static void main(String[] args) { System.out.print("请输入随机生成n bit位的长整数的长度n:"); Scanner scanner=new Scanner(System.in); int x= scanner.nextInt(); long random= createRndInteger(x); System.out.println("随机生成的" + x + "位长整数是:" + random); } public static long createRndInteger(int n){ int a[]={0,1}; StringBuilder sb=new StringBuilder(); Random random=new Random(); if(n==1){ return a[random.nextInt(a.length)]; }else{ sb.append(1); for(int i=0;i<n-1;i++){ sb.append(a[random.nextInt(a.length)]); } long num=Long.parseLong(sb.toString()); return num; } } }
相关文章推荐
- 哈工大深研院数字图像处理第二次大作业:水果自动识别(2)HSV空间聚类及SIFT算法目标识别
- 算法 第二次作业
- 算法与数据结构作业第二次 cards
- 第二次实验作业(算法基本功 与 综合思考)
- 第二次实验作业(算法基本功 与 综合思考)
- Coursera普林斯顿算法课第二次作业
- 算法第二次作业
- 算法概论第二次作业
- 算法--第二次作业
- 第二次编程作业:判断一个正整数是否为质数的算法和 随机生成一个n bit位的长整数
- 算法原理与分析第二次作业
- 吉软-java57-第二次作业
- 第二次作业
- 第二次作业
- 面向对象程序设计第二次作业之视频作业
- 软件测试第二次作业(2)
- 第二次作业及学习计划
- 第二次作业
- 算法第二次上机部分题解
- 第二次实验 算法基本功 与 综合思考