java作业一

(一)学习总结
1.在java中通过Scanner类完成控制台的输入,查阅JDK帮助文档,Scanner类实现基本数据输入的方法是什么?不能只用文字描述,一定要写代码,通过具体实例加以说明。
Scanner函数就是用来进行语句输入的,下面举例的是数值型。
不同的类型要用不同的函数

String 输入的就是字符串
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("请输入一个数值:");
int length=input.nextInt();//输入一个正整数
System.out.println("输入的数字是:"+length);}
}

2.Random类和Math类的random()方法都能产生随机数,这两种方式有什么区别,各有什么特点呢?查阅JDK帮助文档,并举例加以说明。
Math类的random()返回的只是从0到1之间的小数。
Random类产生的随机数,相同次数生成的随机数字是完全相同的。

import java.util.Random;
 public class Random;{
 pubilc static void main(String[]    arge){
   int i,j;
   Random n=new Random();
   i=rand.nextInt(100);
   j=rand.nextInt(100);
   system.out.printIn(x+""+y+"="+(x+y));
 }   
 }

3.运行下列程序,结果是什么?查阅资料,分析为什么。

public class Test {
public static void main(String args[]) {
double a = 0.1;
double b = 0.1;
double c = 0.1;
if((a + b + c) == 0.3){
System.out.println("等于0.3");
}else {
System.out.println("不等于0.3");
}
}
}

答案为不等于0.3
原因 :存在极小误差 精准度缺失
改进方法使用BigDecinmal

import java.math.BigDecimal;
import java.math.MathContext;
public class Test {
    public static void main(String args[]) { 
        BigDecimal a = new BigDecimal("0.1");
        BigDecimal b = new BigDecimal("0.1");
        BigDecimal c = new BigDecimal("0.1");
        if((ic.add(a.add(b))).round(new MathContext(1)).equals(new BigDecimal("0.3"))){
            System.out.println("等于0.3");
        }else {
            System.out.println("不等于0.3");
        }
    }     
}

为了处理精度损失的问题,可以使用java.math.BigDecimal类,查阅JDK帮助文档或教材p378,对上述程序进行修改。
4.本次学习要点中其他需要总结的内容:因人而异,根据自己的学习情况,记录难掌握或难理解的内容,以及学有心得的内容。还存在哪些问题,也可以提出来,对于同学在博客中提出的问题,大家可以积极讨论,互帮互学。
(二)实验总结
1.猜数游戏
程序设计思路:
1.生成随机价格
2.输入猜的价格
3.比较两个价格,若猜错且机会没有用完,回到2
4.输入是否继续,若继续,回到1;
2.万年历
程序设计思路:
1.输入年份year,月份month
2.调用yeardays求1990到year之间的整年的天数
3.调用monthdays求1到moth之间的整月的天数
4.总天数%7取余数判断1号为星期几
3.互评成绩
程序设计思路:
1.设计求数组最值函数
2.在求平均值函数中,调用求最值函数,将每个元素求和,最后减去最值求平均
3.调用sort函数排序,输出成绩
注意:输出制表符时,应该用双引号
(三)代码托管
1032462-20180318222058542-717511433.png

转载于:https://www.cnblogs.com/wp980327/p/8597935.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值