CodeGym /Java Blog /Random /Integer division Java
John Squirrels
Antas
San Francisco

Integer division Java

Nai-publish sa grupo

Ano ang integer division sa Java?

Ang dibisyon sa Java ay karaniwang nagaganap tulad ng regular na paghahati sa matematika o totoong buhay. Gayunpaman, itinatapon lamang nito ang natitira. Halimbawa, kung hahatiin mo ang 9 sa 2 ang quotient ay 4 at ang natitira ay 1. Integer division Java - 1Sa totoong buhay, ang sagot ay 4.5 o 4½. Kung gagawin mo ang parehong pagkalkula sa int sa Java, ang iyong sagot ay magiging 4. Hindi ito binibilog sa pinakamalapit na integer (tulad ng ~4.5 = 5) 1 habang ang natitira ay itinapon.

Halimbawa 1 [ Ang natitira ay 0 ]

Ang integer division sa Java ay gumagana nang perpekto para sa lahat ng mga kaso kung saan ganap na hinahati ng divisor ang dibidendo (integer na hinati sa x integer). Ang sagot ay isang buong numero at ang integer na uri ng data ay maaaring hawakan ito nang walang overflow. Kaya walang pagkawala ng data. Halimbawa, tingnan ang sumusunod na snippet.

public class IntegerDivision {

	public static void main(String[] args) {
		
		int dividend = 100;
		int divisor = 5;
		int quotient = dividend / divisor;
		
		//Dividend completely divides the divisor
		System.out.println(dividend + " / " + divisor + " = " + quotient);
			
		dividend = 143;
		divisor = 11;
		quotient = dividend / divisor;
		
		//Dividend completely divides the divisor
		System.out.println(dividend + " / " + divisor + " = " + quotient);
	}
}
Output
100 / 5 = 20 143 / 11 = 13

Halimbawa 2 [ Ang natitira ay hindi 0 ]

Para sa lahat ng mga division case kung saan ang natitira ay hindi 0, ang huling resulta ay puputulin sa pinakamalaking divisible integer (9/2 = 4). Ito ay ipapakita sa paparating na halimbawa. Maaaring may mga pagkakataon na kailangan mo ang aktwal na quotient sa decimal. Para sa kasong iyon, maaari mong gamitin ang float o double data type. Gayunpaman, kung nais mong i-round off ang quotient sa pinakamalapit na int maaari mong gawin ang sumusunod.

public class IntegerDivision {

	public static void main(String[] args) {

		int dividend = 9;
		int divisor = 2;
		int quotient = dividend / divisor;
		
		// Case I - Dividend does not divide the divisor completely
		// The quotient is chopped / truncated
		System.out.print("Integer division \t\t" );
		System.out.println(dividend + " / " + divisor + " = " + quotient);
		
		// Case II - Mathematical or real life division
		// Use float or double data type to get the actual quotient 
		
		double actualQuotient = (double)dividend / divisor;
		System.out.print("Mathematics division \t\t" );
		System.out.println((double)dividend + " / " + divisor + " = " + actualQuotient);
		
		// Case III - Integer Division with rounding off 
		// the quotient to the closest integer
		
		long roundedQuotient = Math.round((double)dividend / divisor);
		System.out.print("Round off int division \t\t" );
		System.out.println((double)dividend + " / " + divisor + " = " + roundedQuotient);

	}
}
Output
Integer division 9 / 2 = 4 Mathematics division 9.0 / 2 = 4.5 Round off int division 9.0 / 2 = 5

Paliwanag

Ang Case I at Case II ay paliwanag sa sarili. Para sa Case III, maaari mo itong hatiin sa mga sumusunod na hakbang.
  • Una, kailangan mong i-convert ang dibidendo sa doble.

  • Gawin ang regular na Java int division.

  • I-round off ang quotient gamit ang Math.round() method.

  • Gumamit ng mahabang datatype para iimbak ang rounded quotient.

  • ayan na! Nasa iyo ang iyong nais na output bilang quotient.

Konklusyon

Ang dibisyon na may mga Java integer ay maaaring magmukhang nakakalito sa simula. Ngunit sa ilang pagsasanay at pag-uulit, maaari mong makuha ito. Gumawa ng maraming pagsasanay hangga't maaari. Huwag mag-atubiling bumalik sa aming post anumang oras na gusto mo. Cheers! Upang palakasin ang iyong natutunan, iminumungkahi naming manood ka ng isang video lesson mula sa aming Java Course
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION