java趣味编程100课的简单介绍

博主:adminadmin 2022-12-30 04:33:07 890

今天给各位分享java趣味编程100课的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

怎么使用java编程: 1、 随机产生一个1-100(小于100)内的整数,由用户通过键盘输入来猜,当从

public class Hello{

public static int max = 0;

static{

System.out.println("*********猜数游戏***********");

}

public static void main(String[] args){

try{

new Hello(Hello.syso());

}catch(Exception e){

System.out.println("输入错误,请输入整数.");

new Hello(Hello.syso());

}

}

public static int syso(){

java.util.Scanner sc = new java.util.Scanner(System.in);

return sc.nextInt();

}

public Hello(int a){

//产生随机数

int suiJi = new java.util.Random().nextInt(101)+1;

switch(max){

case 0:

case 1:

case 2:

if(suiJi == a){

System.out.println("猜中了...");

}else{

System.out.println("请再猜.");

Hello.max = Hello.max + 1;

if(max == 3){

System.out.println("只有三次机会.");

}else{

new Hello(Hello.syso());

}

}

break;

}

}

}

用Java编程实现一个猜数字的游戏:系统随机产生一个1~100的数字,然后让玩家猜测这个数字,如果玩家猜错,

1.int num = (int)(Math.random()*100+1);//随机得出一个1~100的数

2.用一个变量去接收玩家输入的数,例如int i;

3.用if语句,当玩家输入的数与随机数相等时(i==num),则输出语句(恭喜你猜对了).

4.用else写出猜错是的语句.

大致思路就是这样.建议你自己去写,只有自己写过才会懂.如有不懂的M我,本人也在学习中,大家可以相互讨论讨论.另外你可以把数字设置成1~10;这样的话比较容易出现猜对的情况,方便你验证程序是否正确,然后再改成1~100;

最后在说下Math.random(),这个方法得到是一个0~1之间的随机小数(不包括1但包括0),所以(0~1)*100=0~100(但是不包括100),然后+1就得出1~100了;因为Math.random()是个小数所以用int强转.

java编程,100个小朋友围成一圈,各个孩子的编号为1到100,

用链表结构来解决问题

ListInteger list =new LinkedListInteger();

for(int i=1 ; i= 100 ; i++) list.add(i); //添加100个小盆友的编号对应每一个人

int j =0; //记录报数次数

while(list.size!=1){ //list中剩下一个人得时候跳出循环

int k =list.remove(0) ; //删除第一个元素即报数的小朋友

j++; //每次报数后 j+1

if(j%3!=0) list.add(k) ; //如果j不是3得倍数 把刚报完数字的小朋友放在队伍的最后面

}

System.out.println(list.get(0)); //剩下的最后一个就是我们需要的编号

这样就实现了每次报数为3的小朋友退出

Java编程生成100个1~6之间的随机数,统计1~6每个数出现的概率;

首先:关于随机数的生成方法

java里生成随机数主要有2个方法比较常用.

1.Random类. 在 java.util.包里, 有多种方法可以随机产生int, long, double,boolean等类型

2.Math 类,在java.lang.包里, 可以生成一个[0~1)之间的随机浮点数

*备注* :a. )使用Random需要导包,但是使用Math无需导包. 

b.  )Math底层还是调用了Random类的nextDouble()方法

其次:关于随机数的代码

例如生成[1,6]之间的随机数

1 .Random的方法,生成的随机数

Random r= new Random();

int num1 = r.nextInt(6)+1;//r.next(6)生成的是0~5之间的数字,需要+1,才是[1~6]之间的数字

2. Math的方法,进行随机数的生成

int num = (int) (Math.random() * 6) + 1;

//(int) (Math.random() * 6) 生成的是0~5之间的整数

//需要+1 才是[1~6]的数字

关于次数统计的方案

1, 可以使用HashMapK,V的方法进行存储统计. 因为key不重复,所以key可以来存数字1~6, 而对应的V就可以用来存储出现的次数

2. 可以使用数组的方法来存出现的次数. 数字1~6 是连续的, 数组下标也是连续的.我们可以用下标[0~5] 来代表数字[1~6], 数组的每个格子用来存数字数字出现的次数

完整的代码

//本题使用数组来写代码比较方便,简洁.

import java.util.Random;

public class RandomDemo {

public static void main(String[] args) {

int[] times = new int[6];//6个格子的数组,存储出现的次数

int n = 100;//循环的次数

Random r= new Random();

for (int i = 0; i  n; i++) {

int num = r.nextInt(6)+1;//方法1 随机产生1~6的数字

//int num = (int) (Math.random() * 6) + 1;//方法2 随机产生1~6的数字

times[num - 1] = times[num - 1] + 1;//次数增加1

}

for (int i = 0; i  times.length; i++) {

System.out.println((i + 1) + "出现的次数" + times[i]);

}

}

}

输出:  当n=100时

1出现的次数13

2出现的次数16

3出现的次数17

4出现的次数23

5出现的次数21

6出现的次数10

输出: 当n=1000时

1出现的次数160

2出现的次数177

3出现的次数161

4出现的次数169

5出现的次数175

6出现的次数158

结论:

n=100时, 6是次数是10,  4次数是23,  两者的次数相差2倍多

n=1000时, 6次数是158, 2次数是177, 两者比较接近

说明:  当随机的次数越多. 那么随机数的概率也越来越接近~

java趣味编程100课的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、java趣味编程100课的信息别忘了在本站进行查找喔。