Menjumlahkan Dua Buah Bilangan Dengan Digit Tak Hingga

Buatlah sebuah fungsi ADT yang dapat menjumlahkan 2 buah bilangan dengan syarat kapasitas digit masing-masing 2000.

import java.util.*;
class longdigitapp {
    public static void main(String[]args) {
    Scanner sc = new Scanner(System.in);
    LongDigit d = new LongDigit();
   
    System.out.print("\nMasukan bilangan pertama = ");
    String in1 = sc.nextLine();
    String num1 = in1;
    System.out.print("\nMasukan bilangan kedua = ");
    String in2 = sc.nextLine();
    String num2 = in2;
    System.out.print("Hasil penjumlahannya adalah = ");
        d.add(num1,num2);
    }
}
class LongDigit{
    private String num1,num2,result;
    public LongDigit(){
    result = "";
    }
    public void total(String copy1, String copy2) {
    num1 = copy1;
    num2 = copy2;
    }
    public void add(String num1,String num2) {
    int depan,belakang,hasil,gudang = 0;
    int depan1 = num1.length();
    int belakang1 = num2.length();
        if (depan1<=2000 && belakang1<=2000) {
            if(num1.length() < num2.length()){
                for(int i = 0;i<belakang1-depan1;i++){
                num1 = "0" + num1;
                }
            }
            else if(num1.length() >= num2.length()){
                for(int i = 0;i<belakang1-depan1;i++){
                num2 = "0" + num2;
                }
            }
            for(int i=Math.max(depan1,belakang1)-1;i>=0;i--){
            depan = Integer.parseInt(""+num1.charAt(i));
            belakang = Integer.parseInt(""+num2.charAt(i));
            hasil = (depan+belakang+gudang)%10;
            gudang = (depan+belakang+gudang)/10;
            result = hasil + result;
            }
            if (gudang>=0) {
                result = Integer.toString(gudang)+result;
            }
            System.out.println(""+num1+"+"+num2+" = ");
            System.out.println(result);
        }
        else {
        System.out.print("digits exceeds than 2000");
        }
    }
}

Popular posts from this blog

Bubble Sort Program

Mengatur Konfigurasi PATH JDK