Bagaimana Melaksanakan Penambahan Dua Nombor Di Jawa?



Dalam artikel ini, akan memperkenalkan kepada anda konsep sederhana namun penting iaitu penambahan dua nombor di Java dengan demonstrasi.

Dalam artikel ini, saya akan memperkenalkan anda kepada konsep sederhana namun penting iaitu penambahan dua nombor di Java. Tetapi sebelum bergerak maju, saya sarankan Anda untuk membiasakan diri dengan 'Apa itu Java', fitur Java dan bagaimana anda dapat memasang Java pada sistem anda, yang dapat anda temukan di sebelumnya . Ini akan membantu anda merealisasikan konsep yang akan datang dengan cepat dan mudah. Blog lain dalam siri tutorial Java ini ditulis oleh kami pakar akan merangkumi semua topik penting Java & J2EE secara mendalam,

overriding vs overloading c ++

Petunjuk berikut akan dibahas dalam artikel ini,





Oleh itu, mari kita mulakan,

Penambahan dua nombor di Jawa

Kaedah 1

Mari kita fahami secara langsung dengan mengembangkan program di Java untuk mencetak 'Penambahan dua angka' di layar.



Kelas AddTwoNumbers {public static void main (String [] args) {System.out.println ('Penambahan dua nombor 10 + 20 adalah' + (10 + 20))}}

Pengeluaran

Keluaran - Tambah Dua Nombor Di Java - Edureka

Kita mesti memahami bahawa, di sini nombor ditambahkan secara langsung mengatakan 10 + 20 iaitu 30. Tetapi apa yang kita dapat nombor dari konsol. Sekiranya nilai tersebut disimpan dalam pemboleh ubah. Dari segi Java, String array variabel akan menyimpan nombor tersebut berdasarkan indeksnya.



kelas awam Utama {public static void main (String [] args) {System.out.println ('Penambahan dua nombor' + args [0] + '+' + args [1] + 'is' + (args [0 ] + argumen [1]))}}

Keluaran untuk ini akan seperti yang ditunjukkan dalam Konsol apabila kita melewati angka yang sama iaitu 10 dan 20.

Eh, hasil yang kita dapat di sini tidak diinginkan 30. Ingat String [] berpendapat, setiap input yang anda ambil dari konsol ditunjukkan dalam String. Jadi di sini kita harus menukar String tersebut menjadi Integer untuk mengira penambahannya.

kelas awam Utama {public static void main (String [] args) {//System.out.println('Penambahan dua nombor '+ args [0] +' + '+ args [1] +' adalah '+ (args [0] + args [1])) System.out.println ('Penambahan dua nombor' + args [0] + '+' + args [1] + 'adalah' + (Integer.parseInt (args [0] ) + Integer.parseInt (args [1])))}}

Pengeluaran

Sekarang output yang diinginkan adalah yang kita mahukan. Itu adalah penambahan 10 dan 20 adalah 30 setelah kita menguraikannya dari String ke Integer.

Selanjutnya dalam artikel ini mengenai Penambahan Dua Nombor Di Jawa

Kaedah 2

  1. Menggunakan pengendali Penolakan: Kita boleh menggunakan pengurangan untuk menambahkan dua nombor sehingga akan menafikan nilai negatif dan datang sehingga menghasilkan penambahan.

kelas awam AddTwoNumbers {public static int add (int a, int b) {return a - (-b)} public static void main (String [] args) {System.out.println (add (10, 20)) Sistem. out.println (tambah (-10, 20))}}

Ouput

30

10

Selanjutnya dalam artikel ini mengenai Penambahan Dua Nombor Di Jawa

Pengendali Tidak Berulang

Ini melibatkan while loop, idea asas di sebalik ini adalah menjadikan nilai operan pertama menjadi sifar. Dan untuk terus meningkatkan operan kedua yang sepadan dengan jumlah lelaran yang sama. Pertimbangkan sendiri contoh di bawah ini.

kelas awam HelloWorld {public static void main (String [] args) {System.out.println ('add' + add (10, 20)) System.out.println ('add' + add (-10, 20)) } int statik awam tambah (int a, int b) {//System.out.println ('--->' + a + ':' + b) sementara (a> 0) {//System.out.println ('while a> 0 --->' + a + ':' + b) b ++ a--} sementara (a<0) { //System.out.println('while a ' + a + ' : ' + b) b-- a++ } //System.out.println('return b--->'+ a +': '+ b) kembali b}}

Ouput

$ javac HelloWorld.java $ java -Xmx128M -Xms16M HelloWorld tambah 30 tambah 10

Selanjutnya dalam artikel ini mengenai Penambahan Dua Nombor Di Jawa

Pengendali Bitwise Dan Bitshift Di Jawa

Kita juga boleh melakukan penambahan dua bilangan bulat dengan menggunakan operator bitwise XOR dan pembawa boleh diperolehi oleh operator AND. Untuk menambah jumlah tambah, kita perlu menggunakan operator shift kiri yang ditandatangani. Bagaimana ini berlaku? Mari kita lihat contohnya.

kelas awam HelloWorld {public static void main (String [] args) {System.out.println ('Addition using + ve' + addUsingBits (10, 20)) System.out.println ('Addition using -ve' + addUsingBits ( -10, 20))} int addUsingBits statik awam (int a, int b) {while (b! = 0) {int carry = (a & b) a = a ^ bb = carry<< 1 } return a } }

Pengeluaran

$ javac HelloWorld.java

$ java -Xmx128M -Xms16M HelloWorld

Penambahan menggunakan + ve 30

Penambahan menggunakan -ve 10

Sentiasa ingat bahawa, operasi XOR digunakan untuk menilai penambahan dua bit. DAN operasi digunakan untuk menilai pembawaan dua bit. Mari kita membedah ini? Mengikut nilai input mari kita ambil a = 10 dan b = 20 untuk keadaan pertama.

Operasi

Penilaian ekspresi

Setaraf binari

Nilai Perpuluhan

ke

10

00001010

10

b

dua puluh

00010100

dua puluh

sementara (b! = 0)

benar

int membawa = (a & b)

10 & 20

0

0

a = a ^ b

10 ^ 20

00011110

30

b = membawa<< 1

0<< 1

0

0

mengembalikan a

30

00011110

30

Sekarang, mari kita katakan input negatif -10 untuk a. Mari kita kaji apa yang berlaku di jadual di bawah.Ini membolehkan kita terus berubah sehingga nilai perpuluhan dibawa menjadi negatif.

Selanjutnya dalam artikel ini mengenai Penambahan Dua Nombor Di Jawa

Jadual Gelung Permulaan

Operasi

Penilaian ekspresi

Setaraf binari

Nilai Perpuluhan

ke

-10

11110110

-10

b

dua puluh

00010100

dua puluh

sementara (b! = 0)

benar

int membawa = (a & b)

-10 & 20

00010100

dua puluh

a = a ^ b

-10 ^ 20

11100010

-30

b = membawa<< 1

dua puluh<< 1

00101000

40

Gelung 1.

Operasi

Penilaian ekspresi

Setaraf binari

Nilai Perpuluhan

ke

-30

11100010

-30

b

40

00101000

40

sementara (b! = 0)

benar

int membawa = (a & b)

-30 & 40

00100000

32

a = a ^ b

-30 ^ 40

11001010

-54

b = membawa<< 1

32<< 1

00101000

64

Dan seterusnya & hellip sehingga loop berubah menjadi b = 0 untuk singkatnya tidak semua hasil ditunjukkan di sini. Jadi jadual di bawah menunjukkan gelung terakhir dalam operasi ini.

Operasi

Penilaian ekspresi

Setaraf binari

Nilai Perpuluhan

ke

-2147483638

111111111111111111111111111110000000000000000000000000001010

-2147483638

b

-2147483648

apa itu boneka dan tukang masak

111111111111111111111111111110000000000000000000000000000000

-2147483648

sementara (b! = 0)

benar

int membawa = (a & b)

-2147483638 & -2147483648

111111111111111111111111111110000000000000000000000000000000

-2147483648

a = a ^ b

-2147483638 ^ -2147483648

00001010

10

b = membawa<< 1

-2147483648<< 1

0

0

mengembalikan a

10

00001010

10

Oleh itu, penambahan itu dikira. Phew! begitu banyak untuk pemikiran. Cuba fikirkan jika pengiraan ini dilakukan secara manual oleh manusia, terutamanya pengiraan binari.

Selanjutnya dalam artikel ini mengenai Penambahan Dua Nombor Di Jawa

Pengulangan

Kita juga boleh menulis program di atas menggunakan rekursi. Bahagian pengiraan berbeza sedikit mari kita mempertimbangkan ini untuk kerja rumah untuk anda kan? Saya akan memberikan ekstrak di sini untuk tujuan dan anda cuba membina jadual anda sendiri supaya anda tahu bagaimana ia berfungsi secara dalaman. Juga, tidak perlu mencungkil semua ini hanya untuk tujuan perwakilan melainkan anda teruja dengan kerja dalaman di sini.

public static int addUsingRecursion (int a, int b) {if (b == 0) mengembalikan int sum = a ^ b int carry = (a & b)<< 1 return add(sum, carry) }

Ini semua untuk penambahan dua nombor di Java dengan menggunakan + operator dan tanpa menggunakan + operator. Sebab untuk memilih salah satu dari mereka bergantung sepenuhnya kepada keperluan dan kehendak projek.

Saya belum menilai dan menguji bagaimana kedua-dua senario tersebut dapat menghasilkan prestasi. Saya rasa ia akan berlaku hanya jika anda membina roket dan menghantarnya ke angkasa.

Saya telah menerangkan hanya nombor yang berkaitan dengan bilangan bulat untuk bilangan pendek yang mempunyai had ingatannya sendiri. Saya menyerahkan kepada anda untuk meneroka lebih jauh dengan menggunakan float, double, dll. Sentiasa ingat bahawa jika anda melebihi nilai had jenis primitif maka hasilnya akan menunjukkan jawapan yang berbeza.

Lihat oleh Edureka, sebuah syarikat pembelajaran dalam talian yang dipercayai dengan rangkaian lebih daripada 250,000 pelajar berpuas hati yang tersebar di seluruh dunia. Kami sedia membantu anda dalam setiap langkah dalam perjalanan anda, untuk menjadi yang terbaik, kami menyediakan kurikulum yang dirancang untuk pelajar dan profesional yang ingin menjadi Pembangun Java.