简单的除法逻辑实现
来源:互联网 发布:布鲁特斯的心脏 知乎 编辑:程序博客网 时间:2024/05/18 02:05
public static void main(String[] args) {
int dividend=149567;//被除数
int divisor=4573;//除数
int digit=1000;//小数点后的位数
List<Integer> arr=new ArrayList<Integer>();//保存小数点后位数的数组,用于判断是否余数循环
int[] array=new int[digit];//保存余数,当后面出现的商相等,余数相等,说明出现循环
StringBuffer sb=new StringBuffer();
int trade=dividend/divisor;//整出部分值
int remainder=dividend%divisor;//余数部分
sb.append(trade).append(".");
for(int i=0;i<digit;i++) {
remainder*=10;
trade=remainder/divisor;
remainder%=divisor;
if(i!=0&&trade==arr.get(0)&&remainder==array[0]) {//如果不是从第一个开始循环将不满足条件
sb.append(arrToString(arr));
break;
}
//sb.append(trade);
arr.add(trade);
array[i]=remainder;
if(remainder==0) break;
}
if(arr.size()<digit) sb.append("<").append(arrToString(arr)).append(">");//arr如果小于小数点后位数,说明有循环
else sb.append(arrToString(arr));
System.out.println(sb.toString());
}
private static String arrToString(List<Integer> arr) {
StringBuffer sb=new StringBuffer();
for(int i=0;i<arr.size();i++) {
sb.append(arr.get(i));
}
return sb.toString();
}
int dividend=149567;//被除数
int divisor=4573;//除数
int digit=1000;//小数点后的位数
List<Integer> arr=new ArrayList<Integer>();//保存小数点后位数的数组,用于判断是否余数循环
int[] array=new int[digit];//保存余数,当后面出现的商相等,余数相等,说明出现循环
StringBuffer sb=new StringBuffer();
int trade=dividend/divisor;//整出部分值
int remainder=dividend%divisor;//余数部分
sb.append(trade).append(".");
for(int i=0;i<digit;i++) {
remainder*=10;
trade=remainder/divisor;
remainder%=divisor;
if(i!=0&&trade==arr.get(0)&&remainder==array[0]) {//如果不是从第一个开始循环将不满足条件
sb.append(arrToString(arr));
break;
}
//sb.append(trade);
arr.add(trade);
array[i]=remainder;
if(remainder==0) break;
}
if(arr.size()<digit) sb.append("<").append(arrToString(arr)).append(">");//arr如果小于小数点后位数,说明有循环
else sb.append(arrToString(arr));
System.out.println(sb.toString());
}
private static String arrToString(List<Integer> arr) {
StringBuffer sb=new StringBuffer();
for(int i=0;i<arr.size();i++) {
sb.append(arr.get(i));
}
return sb.toString();
}
阅读全文
0 0
- 简单的除法逻辑实现
- 【算法导论】简单哈希表的除法实现
- 简单倒计时逻辑实现
- 简单的游戏逻辑,用C++ console来实现简单的逻辑
- 关于除法的加法实现
- 移位实现的乘除法
- 大整数除法的实现
- 移位实现的乘除法
- 二进制乘除法的实现
- Python实现简单爬虫逻辑
- 一些简单的逻辑
- 最简单的游戏回血逻辑实现(包括源代码)
- 定期任务的业务及其实现逻辑简单记录
- Nodejs做web服务器的一个简单逻辑和实现
- 最简单自定义实现ArrayAdapter,可以显示自己的逻辑
- 简单逻辑实现一个计算器,没有用到树的知识
- sparkmlib使用Pipeline实现简单的逻辑回归
- 用简单的代码逻辑实现三级缓存图片
- 中国传媒大学2016级研究生新源编码作业第四次
- 华为OJ-----密码验证合格程序
- 我来说说枚举类型
- PCA
- CSS3 自定义字体
- 简单的除法逻辑实现
- 【C语言】指针
- POJ1065 Wooden Sticks
- 《一个Android工程的从零开始》-7、base(六) BaseFragment的运用
- Java 异常处理
- SpringMVC 参数绑定详解
- 中国传媒大学2016级研究生新源编码作业第五次
- Qt / C++常见小问题汇总
- JavaScript 更改属性的指定值 ----setAttribute()方法