java整數(shù)相加代碼 java整數(shù)加小數(shù)

用Java編寫(xiě) 任意長(zhǎng)的整數(shù)加法

這個(gè)程序也許能滿足你的要求:

創(chuàng)新互聯(lián)公司為您提適合企業(yè)的網(wǎng)站設(shè)計(jì)?讓您的網(wǎng)站在搜索引擎具有高度排名,讓您的網(wǎng)站具備超強(qiáng)的網(wǎng)絡(luò)競(jìng)爭(zhēng)力!結(jié)合企業(yè)自身,進(jìn)行網(wǎng)站設(shè)計(jì)及把握,最后結(jié)合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網(wǎng)站策劃到成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì), 我們的網(wǎng)頁(yè)設(shè)計(jì)師為您提供的解決方案。

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class BigInteger//定義長(zhǎng)整型的類

{

private static final int add1Max=1000;//可計(jì)算最長(zhǎng)位數(shù)

private static final int add2Max=1000;//同上

private char[] add1 = new char[add1Max];

private char[] add2 = new char[add1Max];

private int len1;

private int len2;

public void setAdd1() throws IOException

{

int i=0;

String sLine1;

System.out.print("請(qǐng)輸入第一個(gè)長(zhǎng)整數(shù): ");//輸入第一個(gè)長(zhǎng)整數(shù)

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

sLine1=in.readLine();

for(;isLine1.length();i++)

add1[i]=sLine1.charAt(i);

for(i=0;iadd1Max;i++)//len1=add1.length()

{

if(add1[i]!='\0')

len1++;

}

}

public void setAdd2() throws IOException

{

int i=0;

String sLine2;

System.out.print("請(qǐng)輸入第二個(gè)長(zhǎng)整數(shù) : ");//輸入第二個(gè)長(zhǎng)整數(shù)

BufferedReader in2 = new BufferedReader(new InputStreamReader(System.in));

sLine2 = in2.readLine();

for(i=0;isLine2.length();i++)

add2[i]=sLine2.charAt(i);

for(i=0;iadd2Max;i++)//len2=add2.length()

{

if(add2[i]!='\0')

len2++;

}

}

public char[] getAdd1()

{

return add1;

}

public char[] getAdd2()

{

return add2;

}

public int getLen1()

{

return len1;

}

public int getLen2()

{

return len2;

}

public void add(char[] add1,char[] add2)//BigInteger相加方法

{

int len = Math.max(len1,len2);

int i;

char[] temp1 = new char[len];

char[] temp2 = new char[len];

char[] result = new char[len+1];

for(i=0;ilen1;i++)

temp1[len-1-i]=add1[len1-1-i];

for(i=0;ilen2;i++)

temp2[len-1-i]=add2[len2-1-i];

int m=0;

for(i=0;ilen;i++)//相加

{

if(temp1[len-1-i]!=0)

temp1[len-1-i]-=48;

if(temp2[len-1-i]!=0)

temp2[len-1-i]-=48;

m=temp1[len-1-i]+temp2[len-1-i];

if(m=10)

{

m-=10;

result[len-i]+=m;

result[len-1-i]+=1;

}

else result[len-i]+=m;

}

System.out.print("相加的和為:");//輸出相加結(jié)果

i=0;

if(result[0]==0)

i=1;

for(;ilen+1;i++)

System.out.print(Integer.toString(result[i]));

}

public static void main(String[] args) throws IOException//主方法

{

BigInteger big = new BigInteger();//生成一個(gè)BigInteger對(duì)象

big.setAdd1();//得到數(shù)1

big.setAdd2();//得到數(shù)2

char[] num1 = big.getAdd1();//相加

char[] num2 = big.getAdd2();//相減

int len1 = big.getLen1();

int len2 = big.getLen2();

System.out.println();

System.out.println("第一個(gè)長(zhǎng)整數(shù)的長(zhǎng)度是: " + len1);

System.out.println("第二個(gè)長(zhǎng)整數(shù)的長(zhǎng)度是: " + len2);

big.add(num1,num2);

System.out.println();

}

}

運(yùn)行結(jié)果如下:

請(qǐng)輸入第一個(gè)長(zhǎng)整數(shù): 222222222222222222222222222222222222222222555555555555555555555555

請(qǐng)輸入第二個(gè)長(zhǎng)整數(shù) : 88888888888888888888888888888888888888899999999999999999999999999

第一個(gè)長(zhǎng)整數(shù)的長(zhǎng)度是: 66

第二個(gè)長(zhǎng)整數(shù)的長(zhǎng)度是: 65

相加的和為:311111111111111111111111111111111111111122555555555555555555555554

java 兩數(shù)相加 計(jì)算代碼 給個(gè)答案唄

如果是一般的兩個(gè)數(shù)求和,用 long類型 初始化 就可以了~~~

import java.util.Scanner;

public class Demo1 {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

System.out.println("請(qǐng)輸入兩個(gè)數(shù): ");

long n1,n2;

n1 = input.nextLong();

n2 = input.nextLong();

System.out.println("兩個(gè)數(shù)的和是: ");

System.out.println(n1+ n2);

}

}

運(yùn)行結(jié)果:

請(qǐng)輸入兩個(gè)數(shù):

213152454

238547571234

兩個(gè)數(shù)的和是:

238760723688

如果兩個(gè)數(shù)很大,超出了long表示范圍,用大數(shù)BigInteger 初始化 就OK了~~~

import java.math.BigInteger;

import java.util.Scanner;

public class 大數(shù)相加 {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

System.out.println("請(qǐng)輸入兩個(gè)大數(shù): ");

Scanner input = new Scanner(System.in);

BigInteger b1 = input.nextBigInteger();

BigInteger b2 = input.nextBigInteger();

System.out.println("兩個(gè)大數(shù)的和是: ");

System.out.println(b1.add(b2));

}

}

運(yùn)行結(jié)果:

請(qǐng)輸入兩個(gè)大數(shù):

236547625754751312371

1237527547543547124751254

兩個(gè)大數(shù)的和是:

1237764095169301876063625

望采納~~~~~~~~~~

用Java如何求出一個(gè)整數(shù)的各位數(shù)字之和?

用Java求出一個(gè)整數(shù)的各位數(shù)字之和:先算出這個(gè)整數(shù)的位數(shù),再取到一個(gè)整數(shù)的個(gè)位十位百位等等等,然后求和。如下:

public static int sumDig(int n)

int sum=0

if(n=10)

sum+=n%10

sum+=sumDig(n/10)

else sum+=n

return sum

Java語(yǔ)言特點(diǎn)

Java不僅吸收了C++語(yǔ)言的各種優(yōu)點(diǎn),還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語(yǔ)言具有功能強(qiáng)大和簡(jiǎn)單易用兩個(gè)特征。

Java具有簡(jiǎn)單性、面向?qū)ο?、分布式、健壯性、安全性、平臺(tái)獨(dú)立與可移植性、多線程、動(dòng)態(tài)性等特點(diǎn)。Java可以編寫(xiě)桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等。

網(wǎng)站名稱:java整數(shù)相加代碼 java整數(shù)加小數(shù)
文章起源:http://muchs.cn/article26/ddipdjg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、微信小程序小程序開(kāi)發(fā)、外貿(mào)網(wǎng)站建設(shè)企業(yè)建站ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)