package precisenumber;

//import java.util.*;
public class PreciseNumber {
public int fore;
public int after;

public void DTI(double num)// double to int
{
String numStr = Double.toString(num);
String foreStr = numStr.substring(0, numStr.indexOf("."));
String afterStr = numStr.substring(numStr.indexOf(".") + 1);
this.fore = Integer.parseInt(foreStr);
this.after = Integer.parseInt(afterStr);
}

public double ITD()// int to double
{
String numStr = this.fore + "." + this.after;
double num = Double.parseDouble(numStr);
return num;
}

public void putNum(double num) {
System.out.println("number" + num);
}

public static void main(String[] args) {

}
}

package precisenumber;

import java.util.Scanner;

public class text {
private PreciseNumber Num1 = new PreciseNumber();
private PreciseNumber Num2 = new PreciseNumber();
private PreciseNumber result = new PreciseNumber();

public double getNum() {
Scanner in = new Scanner(System.in);
double num = in.nextDouble();
return num;
}

public void add(double num1, double num2) {
Num1.DTI(num1);
Num2.DTI(num2);
result.fore = Num1.fore + Num2.fore;
result.after = Num1.after + Num2.after;
double num;
num = result.ITD();
result.putNum(num);
}

public void subtract(double num1, double num2) {
Num1.DTI(num1);
Num2.DTI(num2);
result.fore = Num1.fore - Num2.fore;
result.after = Num1.after - Num2.after;
double num;
num = result.ITD();
result.putNum(num);
}

public void multiplication(double num1, double num2) {
Num1.DTI(num1);
Num2.DTI(num2);
result.fore = Num1.fore * Num2.fore;
result.after = Num1.after * Num2.after;
double num;
num = result.ITD();
result.putNum(num);
}

public void devide(double num1, double num2) {
Num1.DTI(num1);
Num2.DTI(num2);
result.fore = Num1.fore / Num2.fore;
result.after = Num1.after / Num2.after;
double num;
num = result.ITD();
result.putNum(num);
}

public static void main(String[] args) {
text operate = new text();
System.out.println("Input num 1:");
double num1 = operate.getNum();
System.out.println("Input num 2:");
double num2 = operate.getNum();
System.out.println("选择操作:");
System.out.println("1.加 2.减 3.乘 4.除");
Scanner in = new Scanner(System.in);
int i = in.nextInt();
switch (i) {
case 1:
operate.add(num1, num2);
break;
case 2:
operate.subtract(num1, num2);
break;
case 3:
operate.multiplication(num1, num2);
break;
case 4:
operate.devide(num1, num2);
break;
}
}

}

最新文章

  1. 阿里云推送SDK在某些机型(某米为主)下崩溃问题的解决方法
  2. ASP.NET MVC随想录——创建自定义的Middleware中间件
  3. Windows Azure虚拟机和云服务实例计费方式更新
  4. JQuery怎么实现页面刷新后保留鼠标点击样式的方法
  5. 课程设计(部分代码)之java版(记事本)
  6. Angularjs 通过WebApi 下载excel
  7. Git学习资料
  8. (原创)ubuntu 12.04 安装 apache ant
  9. android 中FragmentActivity中模拟返回键返回上一个Activity效果
  10. C++实现20个设计模式
  11. 将warning设为错误
  12. 理解Android DecorView
  13. [转]解决scrapy下载图片时相对路径转绝对路径的问题
  14. 【游戏开发】基于VS2017的OpenGL开发环境搭建
  15. 用PRODUCT_COPY_FILES拷贝文件夹
  16. Linux时间变慢解决方法
  17. Go 面试题(附答案解析)
  18. 关于less在DW中高亮显示问题
  19. js 正则去除指定的单词
  20. 第二十二天- 序列化 pickle json shelve

热门文章

  1. 专访Nick McKeown:网络领域的游戏颠覆者
  2. 网络数据嗅探工具HexInject
  3. Java调用Python程序
  4. Linux 在VMware中搭建CentOS6.5虚拟机
  5. angular http ajax header
  6. [反汇编练习] 160个CrackMe之030
  7. 综合运用: C++11 多线程下生产者消费者模型详解(转)
  8. C++错误——”无法启动程序”…\xxx.exe” 系统找不到指定的文件”
  9. Java基础:抽象类和接口
  10. 牛顿迭代法(Newton's Method)