Fzu-趣考网-java1

标签(空格分隔): java


序列

  1. 题目
  2. 代码
  3. 示例
  4. 思考

题目:

-制作一个Java控制台程序,让他可以随机生成四则运算,并针对用户的输入判断对错。之后在Github新建一个项目,并上传。

-个人理解:让系统随机生成两个变量,然后再随机生成一个四则运算符,且计算结果保存。最后由客户端输入一个值,判断是否正确。

代码:

import java.util.Random;  //调用生成随机数的包
import java.util.Scanner; //调用输入的包
public class test
{
public static void main(String args[])
{
Random rand = new Random(); //定义一个生成随机数的对象
Scanner ans = new Scanner(System.in); //定义一个输入的对象
int a = rand.nextInt(100); //生成一个[0,100)的随机整数
int b = rand.nextInt(100);
int c = rand.nextInt(4); //生成一个0,1,2,3的随机数 便于选择四则运算操作符
int res = 0; //正确的答案保存在res中
switch(c) //然后用个switch选择一种方法
{
case 0:
res = a + b;
System.out.println(a + "+" + b +"=" );
break;
case 1:
res = a - b;
System.out.println(a + "-" + b +"=");
break;
case 2:
res = a * b;
System.out.println(a + "*" + b +"=");
break;
case 3:
res = a / b;
System.out.println("结果为整数: "+ a + "/" + b +"=");
break;
}
int answer =ans.nextInt(); //从键盘输入客户端输入值
if (res == answer) //判断用户是否输入正确
System.out.println("恭喜你答对了!");
else
System.out.println("很遗憾,你答错了。正确答案是"+res);
}
}

样例:

1. 23+33=56
恭喜你答对了!
2. 26-34=12
很遗憾,你答错了。正确答案是-8

思考:

  • 第一步:思考题目的意思,当时我还是不太明白题目的意思---(原谅我理解能力不是特别好)。

  • 第二步:java作业,当然是要会用java了。因为有C语言的基础,其实看简单的代码还是能懂的。所以我当时查了下如何生成随机数,和如何从键盘输入。--- (第一次接触java,所以还是一脸懵逼)。

  • 第三步: 但是两个随机数的值都被我设置成了[0,100)的值,所以在数据上还是有些缺陷的。尤是除法,因为是用整型保存的,所以遇到除不尽的情况就很尴尬,我是用了向下取整法。出题机目前只能用于两位数的四则运算,所以还是挺尴尬。

Fzu-java1的更多相关文章

  1. FZU 2137 奇异字符串 后缀树组+RMQ

    题目连接:http://acm.fzu.edu.cn/problem.php?pid=2137 题解: 枚举x位置,向左右延伸计算答案 如何计算答案:对字符串建立SA,那么对于想双延伸的长度L,假如有 ...

  2. FZU 1914 单调队列

    题目链接:http://acm.fzu.edu.cn/problem.php?pid=1914 题意: 给出一个数列,如果它的前i(1<=i<=n)项和都是正的,那么这个数列是正的,问这个 ...

  3. ACM: FZU 2105 Digits Count - 位运算的线段树【黑科技福利】

     FZU 2105  Digits Count Time Limit:10000MS     Memory Limit:262144KB     64bit IO Format:%I64d & ...

  4. FZU 2112 并查集、欧拉通路

    原题:http://acm.fzu.edu.cn/problem.php?pid=2112 首先是,票上没有提到的点是不需要去的. 然后我们先考虑这个图有几个连通分量,我们可以用一个并查集来维护,假设 ...

  5. ACM: FZU 2107 Hua Rong Dao - DFS - 暴力

    FZU 2107 Hua Rong Dao Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I6 ...

  6. ACM: FZU 2112 Tickets - 欧拉回路 - 并查集

     FZU 2112 Tickets Time Limit:3000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u P ...

  7. ACM: FZU 2102 Solve equation - 手速题

     FZU 2102   Solve equation Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & ...

  8. ACM: FZU 2110 Star - 数学几何 - 水题

     FZU 2110  Star Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u  Pr ...

  9. FZU 2150 Fire Game

    Fire Game Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Submit St ...

  10. FZU 1759 欧拉函数 降幂公式

    Description   Given A,B,C, You should quickly calculate the result of A^B mod C. (1<=A,C<=1000 ...

随机推荐

  1. maven工程目录和类加载器ClassLoader的记录

    URL url = this.getClass().getClassLoader().getResource("/" + packageName.replaceAll(" ...

  2. openstack-nova源码之阅读流程

    以创建虚拟机为例 1.项目入口setup.cfg文件 2.根据nova-compute = nova.cmd.compute:main找到功能入口 3.nova/api/openstack/compu ...

  3. Arm-Linux 移植 Nginx

    有关博客: <Windows 编译安装 nginx 服务器 + rtmp 模块>.<Ubuntu 编译安装 nginx>.<Arm-Linux 移植 Nginx> ...

  4. css之多行居中

    需求: 单行到多行文字居中. <div> <p>应该为数组中的每个子代分配一个唯一的键.表格dataSource和中的值columns应遵循此规则.默认情况下</p> ...

  5. Luogu4548 CTSC2006 歌唱王国 概率生成函数、哈希

    传送门 orz ymd 考虑构造生成函数:设\(F(x) = \sum\limits_{i=0}^\infty f_ix^i\),其中\(f_i\)表示答案为\(i\)的概率:又设\(G(x) = \ ...

  6. Linux环境Ubuntu上安装GitLab

    本文主要介绍在Ubuntu[Ubuntu 18.04.3]上安装最新的GitLab版本控制工具. 一.安装更新GitLab所需要的依赖项 sudo apt-get update 下载过程中,网络要有所 ...

  7. elasticsearch*3 + Es-Head + kibana Docker集群

    ES官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html   拉取docker镜像 dock ...

  8. 【转载】C#使用Math.Floor方法来向下取整

    在C#的数值运算中,有时候需要对计算结果舍去小数位保留整数位向下取整即可,此时就可使用内置方法Math.Floor来实现向下取整操作,Math.Floor方法将舍去小数部分,保留整数.Math.Flo ...

  9. 配置CTS+

    Please let me know if below SAP KBA could help you: 1739340 - ESR/ID Export Using CTS+ option is dis ...

  10. js中的call()、apply()、bind()

    js中的一个核心概念就是对this的理解,关于this前面也有说过,不过在有些情况下,还是需要手动去改变this的指向,这里总结一下,js中关于this操作的三种方法 call() apply() b ...