生成n个30以内的随机正整数(n输入指定)

原作者博客:原作者博客链接
感谢原作者,新手拿来练手
刚开始对求最大值和最小值不太理解,后来发现很简单,分享给大家

问题:
1、生成n个30以内的随机正整数
2、n由用户键盘输入
3、统计并输出0-10,11-20,21-30三个区间数段的个数
4、并输出所有数中的最大值和最小值

public class Test {
	public static void main(String[] args){
		int min = 0;//假设最小值
		int max = 0;//假设最大值
		int count1 = 0;//用于统计0~10的个数
		int count2 = 0;//用于统计11~20的个数
		int count3 = 0;//用于统计21~30的个数
		Random random = new Random();
		Scanner in = new Scanner(System.in);
		System.out.println("请输入一个大于0的正整数:");
		int num = in.nextInt();
		if(num <= 0){//用户输入不能小于等于0
			System.out.println("您输入的数有误!");
		}else{
			for(int i = 0;i < num; i++){//循环输出用户输入的次数
				int randomNum = random.nextInt(31);//循环生成0-30个随机数
				//System.out.println(randomNum);//可以输出生成随机数的结果
				if(randomNum >= 0 && randomNum <= 10){//判断随机数是否0-10
					count1++;//统计次数
				}else if(randomNum >= 11 && randomNum <= 20){//判断随机数是否11-20
					count2++;//统计次数
				}else{
					count3++;//统计次数
				}
				
				if(i == 0){//记录第一次循环的随机数,只执行一次
					min = randomNum;//赋值给min,只执行一次
				}else if(randomNum < min){//如果randomNum小于min
					min = randomNum;//重新将randomNum赋值给min
				}else if(randomNum > max){//程序走到这说明randomNum大于min
					max = randomNum;//将randomNum赋值给max
				}
			}
		}
		System.out.println("0~10:" + count1 + "个。");
		System.out.println("11~20:" + count2 + "个。");
		System.out.println("21~30:" + count3 + "个。");
		System.out.println("最小值:" + min);
		System.out.println("最大值:" + max);
	}
}
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值