Kā ieviest Java divu skaitļu pievienošanu?



Šajā rakstā jūs iepazīstināsiet ar vienkāršu, tomēr svarīgu jēdzienu, kas ir divu skaitļu pievienošana Java ar demonstrāciju.

Šajā rakstā es jūs iepazīstināšu ar vienkāršu, tomēr svarīgu jēdzienu, kas ir divu Java skaitļu pievienošana. Bet pirms došanās uz priekšu, es iesaku jums iepazīties ar “Kas ir Java”, Java funkcijām un kā jūs varat instalēt Java savā sistēmā, ko varat atrast iepriekšējos . Tas palīdzēs jums ātri un viegli sagrābt nākamās koncepcijas. Pārējie emuāri šajā Java apmācību sērijā, kuru autori ir mūsu eksperti padziļināti aplūkos visas svarīgās Java un J2EE tēmas,

Šajā rakstā tiks apskatīti šādi norādījumi,





Tad ļaujiet mums sākt darbu,

Divu skaitļu pievienošana Java valodā

1. metode

Sapratīsim tieši, izstrādājot programmu Java, lai ekrānā drukātu “Divu skaitļu pievienošana”.



Klase AddTwoNumbers {public static void main (String [] args) {System.out.println (“Divu skaitļu 10 + 20 pievienošana ir” + (10 + 20))}}

Rezultāts

Izeja - pievienojiet divus ciparus Java valodā - Edureka

Kā atrast lielāko masīva java numuru

Mums tas ir jāsaprot, ka šeit skaitļi tiek pievienoti, tieši sakot, 10 + 20, tas ir 30. Bet ko mēs iegūstam skaitļus no konsoles. Tādā gadījumā vērtības tiks saglabātas mainīgajā. Runājot par Java, mainīgais String masīvs mainīs šos skaitļus, pamatojoties uz to indeksu.



public class Main {public static void main (String [] args) {System.out.println ('Divu skaitļu pievienošana' + args [0] + '+' + args [1] + 'ir' + (args [0 ] + args [1]))}}

Rezultāts būs tāds, kā parādīts konsolē, kad mēs nodosim to pašu skaitli, kas ir 10 un 20.

Eh, rezultāts, ko mēs šeit ieguvām, nav vēlams. 30. Atcerieties String [] argumentus, katrs ievads, ko lietojat no konsoles, tiek attēlots virknē. Tātad, lai aprēķinātu pievienojumu, mums šīs virknes jāpārvērš par veselu skaitli.

public class Main {public static void main (String [] args) {//System.out.println('Divu skaitļu pievienošana '+ args [0] +' + '+ args [1] +' ir '+ (args [0] + args [1])) System.out.println ('Divu skaitļu pievienošana' + args [0] + '+' + args [1] + 'ir' + (Integer.parseInt (args [0] ) + Integer.parseInt (args [1])))}}

Rezultāts

Tagad vēlamais rezultāts ir tas, ko mēs vēlamies. Tas ir 10 un 20 ir 30 pievienojums pēc tam, kad mēs tos parsējām no virknes līdz veselam skaitlim.

Nākamais šajā rakstā par divu ciparu pievienošanu Java

2. metode

  1. Izmantojot atņemšanas operatoru: Mēs varam izmantot atņemšanu, lai pievienotu divus skaitļus tā, lai tas noliegtu negatīvo vērtību un tādējādi tiktu pievienots.

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

Ouputs

30

10

Nākamais šajā rakstā par divu ciparu pievienošanu Java

Atkārtots vienotais operators

Tas ir saistīts ar ciklu, bet pamatideja tam ir nulles līmeņa pirmā operanda vērtība. Un turpināt palielināt tā atbilstošo otro operandu par tādu pašu atkārtojumu daudzumu. Apsveriet šo piemēru pats.

public class HelloWorld {public static void main (String [] args) {System.out.println ('pievienot' + pievienot (10, 20)) System.out.println ('pievienot' + pievienot (-10, 20)) } public static int add (int a, int b) {//System.out.println ('--->' + a + ':' + b) while (a> 0) {//System.out.println ('kamēr a> 0 --->' + a + ':' + b) b ++ a--} kamēr (a<0) { //System.out.println('while a ' + a + ' : ' + b) b-- a++ } //System.out.println('return b--->'+ a +': '+ b) atgriešanās b}}

Ouputs

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

Nākamais šajā rakstā par divu ciparu pievienošanu Java

Bitwise un Bitshift operators Java

Mēs varam arī pievienot divus veselus skaitļus, izmantojot XOR operatoru bitiem un pārnēsāšanu var iegūt operators AND. Lai pievienotu pārneses summu, mums jāizmanto parakstīts kreisās maiņas operators. Kā tas notiek? Vispirms redzēsim piemēru.

public class HelloWorld {public static void main (String [] args) {System.out.println ('Papildinājums, izmantojot + ve' + addUsingBits (10, 20)) System.out.println ('Papildinājums, izmantojot -ve' + addUsingBits ( -10, 20))} public static int addUsingBits (int a, int b) {while (b! = 0) {int carry = (a & b) a = a ^ bb = carry<< 1 } return a } }

Rezultāts

$ javac HelloWorld.java

$ java -Xmx128M -Xms16M HelloWorld

Pievienošana, izmantojot + ve 30

Pievienošana, izmantojot -ve 10

Vienmēr atcerieties, ka XOR darbība tiek izmantota, lai novērtētu divu bitu pievienošanu. AND darbību izmanto, lai novērtētu divu bitu pārnēsāšanu. Atdalīsim to, vai ne? Pārejot pēc ievades vērtībām, pieņemsim, ka pirmais nosacījums ir a = 10 un b = 20.

Darbība

Izteiksmes novērtējums

Binārais ekvivalents

Decimālvērtība

uz

10

00001010

10

b

divdesmit

00010100

divdesmit

kamēr (b! = 0)

taisnība

int pārvadāt = (a & b)

10 un 20

0

0

a = a ^ b

10 ^ 20

00011110

30

b = nēsāt<< 1

0<< 1

0

0

atgriezties a

30

00011110

30

Tagad ņemsim negatīvu ievadi, teiksim -10. Apskatīsim, kas notiek zemāk esošajā tabulā.Tas ļauj mums cilpā, līdz pārnešanas decimālā vērtība kļūst negatīva.

Nākamais šajā rakstā par divu ciparu pievienošanu Java

Sākotnējā cilpas tabula

Darbība

Izteiksmes novērtējums

Binārais ekvivalents

Decimālvērtība

uz

-10

11110110

-10

b

divdesmit

00010100

divdesmit

kamēr (b! = 0)

taisnība

int pārvadāt = (a & b)

-10 un 20

00010100

divdesmit

a = a ^ b

-10 ^ 20

11100010

-30

b = nēsāt<< 1

divdesmit<< 1

00101000

40

1. cilpa.

Darbība

Izteiksmes novērtējums

Binārais ekvivalents

Decimālvērtība

uz

-30

11100010

-30

pavedienu sinhronizēšana Java piemērā

b

40

00101000

40

kamēr (b! = 0)

taisnība

int pārvadāt = (a & b)

-30 un 40

00100000

32

a = a ^ b

-30 ^ 40

11001010

-54

b = nēsāt<< 1

32<< 1

00101000

64.

Un tā tālāk & hellip, līdz īsuma dēļ cilpa izrādās b = 0, ne visi rezultāti šeit ir parādīti. Tātad zemāk esošā tabula apzīmē šīs operācijas pēdējo cilpu.

Darbība

Izteiksmes novērtējums

Binārais ekvivalents

Decimālvērtība

uz

-2147483638

1111111111111111111111111111111110000000000000000000000000000000001010

-2147483638

b

-2147483648

1111111111111111111111111111111110000000000000000000000000000000000000

-2147483648

kamēr (b! = 0)

taisnība

int pārvadāt = (a & b)

-2147483638 un -2147483648

1111111111111111111111111111111110000000000000000000000000000000000000

-2147483648

a = a ^ b

-2147483638 ^ -2147483648

00001010

10

b = nēsāt<< 1

-2147483648<< 1

0

0

atgriezties a

10

00001010

10

Tātad šādi tika aprēķināts papildinājums. Phew! tik par domu. Vienkārši padomājiet, vai šo aprēķinu veica cilvēki manuāli, galvenokārt bināros aprēķinos.

Nākamais šajā rakstā par divu ciparu pievienošanu Java

Rekursija

Mēs arī varam uzrakstīt iepriekš minēto programmu, izmantojot arī rekursiju. Aprēķina daļa nedaudz atšķiras, ļaujot to ņemt vērā mājas darbos, vai ne? Es šeit došu izrakstu rekursijai, un jūs mēģināt izveidot savu galdu, lai jūs zinātu, kā tas darbojas iekšēji. Turklāt tas nav nepieciešams, lai tas viss būtu tikai reprezentācijas nolūkos, ja vien jūs neuztraucat par iekšējo darbību šeit.

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

Tas viss bija paredzēts divu skaitļu pievienošanai Java, izmantojot + operatoru un neizmantojot + operatoru. Jebkura no šiem iemesliem iemesls būs pilnībā atkarīgs no projekta vajadzības un prasības.

Es neesmu novērtējis un pārbaudījis abu scenāriju darbību, lai izdomātu sniegumu. Es domāju, ka tas stāsies spēkā tikai tad, ja jūs būvējat raķeti un nogādājat to kosmosā.

Es īsumā izskaidroju tikai skaitļus, kas saistīti ar Integers, kam ir savs atmiņas ierobežojums. Es atstāju jums iespēju turpināt izpētīt, izmantojot pludiņus, dubultus utt. Vienmēr atcerieties, ka, ja jūs pārsniedzat primitīvo tipu robežvērtību, rezultāts parādīs atšķirīgu atbildi.

Pārbaudiet Autors: Edureka, uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē. Mēs esam šeit, lai palīdzētu jums katrā solī jūsu ceļojumā, lai kļūtu par labāko, mēs piedāvājam mācību programmu, kas paredzēta studentiem un profesionāļiem, kuri vēlas būt Java izstrādātāji.