[java]代码库
第一道题:
package interesting;
import java.util.Random;
public class CountBoysAndGirls {
public static void main(String[] args) {
int sum_boy=0;
int sum_girl=0;
String sex[]=new String[50];
Random ran=new Random();
System.out.println("随机生成的各个学生情况:");
for(int i=0; i<sex.length; i++){
int boyorgirl=ran.nextInt(2);//表示性别,0:男生,1:女生
int bepresent=ran.nextInt(2);//表示出席,0:缺席,1:出席
sex[i]=boyorgirl+","+bepresent;
System.out.print(sex[i]+"\\t");
if((i+1)%10==0)
System.out.println();
}
for(int i=0;i<sex.length;i++){
String temp[]=sex[i].split(",");
if(temp[0].equals("0")&&temp[1].equals("1")){
sum_boy++;
}
else if(temp[0].equals("1")&&temp[1].equals("1")){
sum_girl++;
}
}
System.out.println("出席的男生:"+sum_boy);
System.out.println("出席的女生:"+sum_girl);
}
}
运行结果:
随机生成的各个学生情况:
0,1 1,0 1,1 1,1 0,0 1,1 0,1 0,1 0,1 1,1
0,0 0,0 1,1 0,0 0,1 0,1 1,1 0,1 1,1 1,0
0,0 0,1 0,0 1,0 0,1 0,1 0,1 0,1 0,0 0,0
0,1 0,0 0,1 0,0 0,0 1,1 0,0 0,0 0,1 0,1
1,1 1,1 0,1 0,1 1,0 1,0 0,0 1,1 0,1 1,0
出席的男生:19
出席的女生:11
第二道题:
package interesting;
public class WhereAmI {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] person=getLocation();
System.out.println("最后结果如下:(0表示已离开圈子,1表示任留在圈子中)");
for(int i=0; i<person.length; i++){
System.out.print(person[i]+" ");
if((i+1)%5==0)
System.out.println();
//寻找哪个状态为1的,则此人就是一直没有出圈的人,获得下标,就是此人原来位置的编号
if(person[i]==1){
System.out.println("这个人原来的位置编号是:"+i);
}
}
}
private static int[] getLocation() {
int[] person=new int[17];
// TODO Auto-generated method stub
for(int i=0; i<person.length ;i++){
person[i]=1;
}
int i=0;
int k=0;
int count=0;
while(true){
i=i%17;
if(person[i]==1){
k++;
if(k%3==0){
person[i]=0;
count++;
}
}
if(count==16){
break;
}
i++;
}
return person;
}
}
运行结果:
最后结果如下:(0表示已离开圈子,1表示任留在圈子中)
0 0 0 0 0
0 0 0 0 0
1 这个人原来的位置编号是:10
0 0 0 0
0 0
//源代码片段来自云代码http://yuncode.net