java大数除法_java大数除法求余数
题目
输入输出的要求
输入输出样例
看到这一题,我的第一个想法是通过数组进行除法取余运算的,思路是将一串字符和被除数输入,用spit和Integer.parseInt方法把字符串赋值给整形数组,然后一一与被除数相除法
JAVA代码实现
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
String num = in.next();
int n = in.nextInt();
String []num2 = num.split("");
int []num3 = new int[num2.length];
for(int i = 0;i < num2.length;i++)
{
num3[i] = Integer.parseInt(num2[i]);
}
chufa(num3,n);
}
public static void chufa(int []num,int n)
{
String str = "";
String str2 = "";
int flag = 0;
int flag2 = 0;
for(int i = 0;i < num.length;i++)
{
flag = flag * 10 + num[i];
str += flag / n;
flag = flag % n;
}
for(int i = 0;i < str.length();i++)
{
if(str.charAt(i) != '0')
{
flag2 = i;
break;
}
}
for(int i = flag2;i < str.length();i++)
{
str2 += str.charAt(i);
}
System.out.println(str2 + " " + flag);
}
}
后面发现其实JAVA有更加便捷的大数除法取余数的方法,是通过JAVA的divideAndRemainder方法,num1.divideAndRemainder(num2),就是将num1除以num2,将结果和余数赋值给长度为2的数组
JAVA代码实现:
import java.math.*;
import java.util.*;
public class pat8 {
public static void main(String[] args) {
BigInteger n;
BigInteger m;
Scanner put = new Scanner(System.in);
n=put.nextBigInteger();
m=put.nextBigInteger();
BigInteger[] answer=n.divideAndRemainder(m);
System.out.print(answer[0]+" "+answer[1]);
}
}
以上代码是我自己捣鼓出来的,如果有错误或者有能够改进的地方,望大家伙指正,谢谢!!!~
java大数除法_java大数除法求余数相关推荐
- Python中除法取整以及求余数(模)的方式
除法取整 第一种方法 第二种方法 求余数 第一种方法 强制类型转换,即将结果转换成int类型: int(5/2) 第二种方法 整除运算"//": (5//2) 结果都是2. 求余数 ...
- java float 运算_java float除法的问题
展开全部 您好,1.整数的除法:32313133353236313431303231363533e78988e69d8331333337386536 0做除数抛运行时异常:两整数商会做取整运算,Flo ...
- java大数模板_java大数模板
这几天做了几道用大数的题,发现java来做大数运算十分方便.对acmer来说是十分实用的 1.valueOf(parament); 将参数转换为制定的类型 比如 int a=3; BigInteger ...
- java 大数类_Java大数类介绍
java能处理大数的类有两个高精度大整数BigInteger和高精度浮点数BigDecimal,这两个类位于java.math包内,要使用它们必须在类前面引用该包:import java.math.B ...
- java biginteger位数_JAVA 大数(BigInteger) 归纳总结
这里主要是归纳了一些他人博客上的对于JAVA大数处理的一些方法. 主要是BigInteger类的应用 转载虽然要注明出处...但是我已经找不到地址了...见谅 Ⅰ基本函数: 1.valueOf(par ...
- java除法_java精确除法运算(BigDecimal)
除法运算的函数定义如下 BigDecimal.divide(BigDecimal divisor, int scale, RoundingMode roundingMode) ; scale为小数位数 ...
- java bigdecima 除法_java精确除法运算(BigDecimal)
除法运算的函数定义如下 BigDecimal.divide(BigDecimal divisor, int scale, RoundingMode roundingMode) ; scale为小数位数 ...
- java抽象类列子_Java 抽象类,求个范例
展开全部 抽象类与接口紧密相关,32313133353236313431303231363533e4b893e5b19e31333262373337它们不能实例化,并且常常部分实现或根本不实现.抽象类 ...
- java 窗体代码_Java 用户界面设计 求界面代码
展开全部 一: 首先弄清题目的意思 A.需要的主要组件列表: 1. 创建一个窗口,窗口标32313133353236313431303231363533e4b893e5b19e31333339653 ...
最新文章
- 怎样成为一名优秀的系统工程师
- jbpm springboot mysql_SpringBoot开发案例之整合Activiti工作流引擎
- mysql 索引都有哪些_MySQL 数据库的优化,你知道有哪些?
- 网络编程+Python
- win7下硬盘安装Windows
- 微型计算机的三类接口,2020年武汉理工期末微机接口复习.doc
- 股票指标php源码,自编技术指标公式源码(一)_股票学习网
- oracle pdb与cdb区别,浅谈oracle 12C的新特性-CDB和PDB
- Tkinter 组件详解(十三):Menu
- mifs算法 matlab,信息安全工程师教程协议分析深度流检测技术(DFI)真题习题与考点...
- 青龙面板+傻妞+JD(自用)
- PHP代码审计8—SSRF 漏洞
- sas数据操作update、modify by ke=、控制modify的更新、datasets添加约束条件、操作文件变动aduit trail...
- 手撸Spring系列13:MyBatis(实战篇)
- windows 8 新登陆方式(图片密码、Pin码)
- Qt多个平台安装与维护
- Beats:Beats 在 Kibana 中的集中管理
- 华为交换机根据MAC地址禁止设备上网
- 021-MongoDB数据库从入门到放弃
- java毕业生设计学生信息管理系统计算机源码+系统+mysql+调试部署+lw