算法概论 第二周 实践

来源:互联网 发布:最好电子相册制作软件 编辑:程序博客网 时间:2024/05/21 17:41

2.1

通过a与小于根号a小的数相除,当余数为零时 ,跳出循环,否则除数加一,直到除数大于根号a

通过除数与根号a的比较  最终除数大于根号a时,说明该整数为质数 否则不是质数


源代码如下:

package 实验二;
import java.util.Scanner;
public class isPrime {
public static void main(String args[]){
System.out.println("请输入一个整数:");
int a,i=2;
a=new Scanner(System.in).nextInt();
if(a<2)
System.out.println(0);
else
for( ; i<=Math.sqrt(a);i++)
if(a%i==0)
            break;
if(i>Math.sqrt(a))
          System.out.println(1);
else
System.out.println(0);
}
}



2.2

该算法思想 首先输入一个整数n,创建一个一维数组,随机数产生大于0.5时,往数组存入1,否则存入0   

输出时,先输入一位1,之后把数组内的n-1位输出 即得到n位二进制

package 实验二;
import java.util.Scanner;
public class CreateRndInteger {
public static void main(String args[]){
System.out.println("请输入一个整数:");
  int n;
n=new Scanner(System.in).nextInt();
int [] a=new int[n];

for(int i=0;i<n;i++){
  if(Math.random()>0.5)
    a[i]=1;
   else
       a[i]=0;
  }
System.out.print(1);
for(int i=0;i<n-1;i++)   
System.out.print(a[i]);  
}
}



0 0
原创粉丝点击