数字计算

生成10个75-100之间(包含75和100)的随机整数,将其存放到数组中,并遍历输出数组的数据

求该数组的数据之和和平均数(平均数保留两位小数点)

求该数组的最大值和最小值

请任选冒泡、选择、插入或其他排序算法,对上述的数组进行排序,请注明你采用的排序算法

思路:

  • 生成随机数random,但是我们知道随机数的产生都是 [0,i)(i 是用户决定的最大值)
  • 这样就会不满足题目要求,我们可以这样做random.nextInt(26)+75;随机产生的最大值为25,最小值为0加上75就满足了条件
  • for循环将随机生成的整数添加到数组中
  • 遍历数组,同时将所有的数加起来
  • 求平均数保留两位小数,无论用double接收或者用float接收,都会导致精度不准
  • 所以我们在接收和的时候用double类型的变量存储即可,然后求平均值
  • 但是这样还是不满足保留两位小数,所以需要用String.format()包装,String avg1 = String.format("%.2f", avg);
  • 求最大值与最小值可以先进行排序再获取数组的头和尾下标进行输出

代码:

import java.util.Random;public class A {public static void main(String[] args) {//定义数组int[] a = new int[10];Random random = new Random();for (int i = 0; i < 10; i++) {a[i] = random.nextInt(26) + 75;//随机生成一个小于26的数,再加上75,无论如何都小于100且大于70System.out.print(a[i] + " ");}avg(a);sort(a);}//求平均数public static void avg(int[] randomList) {//声明变量sum,存储和double sum = 0;for (int i = 0; i < 10; i++) {sum = randomList[i] + sum;}System.out.println();//声明变量avg,存储平均数double avg = sum / 10;String avg1 = String.format("%.2f", avg);System.out.println("平均数为:" + avg1);}//冒泡排序public static void sort(int[] sort) {for (int i = 0; i < sort.length - 1; i++) {for (int j = 0; j < sort.length - 1 - i; j++) {if (sort[j] < sort[j + 1]) {int temp = sort[j];sort[j] = sort[j + 1];sort[j + 1] = temp;}}}System.out.println();System.out.println("最大值为:" + sort[0]);System.out.println("最小值为:" + sort[sort.length - 1]);System.out.println();System.out.println("冒泡排序后的数组:");for (int i = 0; i < sort.length; i++) {System.out.print(sort[i] + " ");}}
}

Java练习题——数字计算相关推荐

  1. java数字计算结果_Java编写程序之输入一个数字实现该数字阶乘的计算

    需求说明: 编写Java程序,输入一个数字,实现该数字阶乘的计算.一个数字的阶乘是所有小于及等于该数的正整数的积,自然数n的阶乘写作n! .例如,5的阶乘等于1*2*3*4*5,表示为5! = 120 ...

  2. 二进制、八进制、十六进制和十进制的相互转换,原码反码补码计算以及Java中数字的存储

    1. Java中数字默认是十进制,二进制.八进制以及十六进制的表示如下 2. 二进制.八进制.十六进制和十进制的相互转换 2.1 为了不累赘描述,本文以百度的二进制小数转换为十进制小数为例,如下图 2 ...

  3. 新手java练习题100(1-5)

    新手java练习题100(1-5) 1.编程实现:根据以下函数关系,对输入的X值计算输出对应的y值. x的值 对应y的值 x<0 0 0<=x<10 x 10<=x<20 ...

  4. 2021-07-30 Java练习题

    2021-07-30 Java练习题目录: 1.现在有字符串: 2.字符串解析,现有一字符串,"卡巴斯基#杀毒软件#免费版#俄罗斯#",解析出每个元素. 3."那车水马龙 ...

  5. Java练习题一【数据类型,运算符】

    开篇说明 *************************** ↓[重点提醒]↓ *************************** "操千曲而后晓声,观千剑而后识器" 学好 ...

  6. 2021-08-05 Java练习题

    2021-08-05 Java练习题目录: 1.一.产生10个1-100的随机数,并放到一个数组中,把数组中大于等于10的数字放到一个list集合中,并打印到控制台. 2.LinkedList使用,已 ...

  7. java 分裂数字_分裂的补充:超越数字,打印物理可视化

    java 分裂数字 As noted in my earlier Nightingale writings, color harmony is the process of choosing colo ...

  8. 二级计算机java2017级_2017计算机等级二级考试java练习题及答案

    2017计算机等级二级考试java练习题及答案 JAVA是计算机二级考试的科玛之一,你知道计算机二级考试JAVA科目都考哪些知识吗?为了方便考生备考计算机二级考试JAVA 科目.下面是小编为大家带来的 ...

  9. 数字计算lisp_可从计算尺和LISP中汲取教训

    数字计算lisp Sat around a wooden table, with brown cloth upholstered chairs I remember watching my fathe ...

最新文章

  1. 招聘|字节跳动计算机视觉算法实习生
  2. 企业批量部署RealVNC远程控制软件
  3. linux svn配置教程,linux svn搭建及配置
  4. Java实现根据地理位置获取经纬度
  5. swagger文档转换为WebApiClient声明式代码
  6. 为什么python打不开_python文件打不开如何解决
  7. mysql中的double类型_MySQL中float、double、decimal三个浮点类型的区别与总结!
  8. 重磅综述:三万字长文读懂单细胞RNA测序分析的最佳实践教程 (原理、代码和评述)
  9. Qt + Python + OpenCV图标替换工具 之 项目介绍(一)
  10. OpenShift Security (13) - 利用Log4j漏洞攻击容器
  11. layui横向时间线_操盘线:线上阴线满仓,线下阳线清仓
  12. 12c r2单实例 静默安装软件
  13. attachEvent和addEventListener详解
  14. b+树的增删改查_EF Core / 基础_从建库到增删改查
  15. 微软原版win10系统启动盘的制作
  16. Arduino 常用电子元件和扩展模块
  17. 小程序源代码 古诗词
  18. 【新知实验室】快速实现视频应用
  19. [198].打家劫舍
  20. 宏宇社:国外lead入门教程(八)申请联盟时常见的词汇与问题答案

热门文章

  1. 关于常见的DOS命令
  2. 爱情名言名句爱情哲理名言爱情格言语录
  3. 不知道这几点,千万别开发微信小程序
  4. [附源码]java毕业设计基于的花店后台管理系统
  5. 华为如何显示我的电脑连接到服务器地址,我的电脑如何访问服务器地址
  6. 阻击外挂——《龙之谷手游》安全测试的那点事
  7. Android UI布局之线性布局LinearLayout
  8. 伯乐很多,你是千里马吗?
  9. 没有感觉 ,From dereism to self-confidence and friend's
  10. 装win10测试软件,这个系统比较高级:测试告诉你有必要重装一个Win10工作站版吗?...