BAHAGIAN INTEGER DAN KEKAL


Dalam modul "Ungkapan aritmetik" kami bercakap tentang ciri-ciri operasi bahagi dalam bahasa Java.
Ingat bahawa untuk data integer (jenis int) dua operasi pembahagian boleh digunakan.
/ - pembahagian integer, apabila kita membuang bahagian pecahan hasil daripada operasi bahagi
% - pengiraan baki bahagian

INGAT!
Di Jawa, hasil pembahagian integer dengan integer – ia sentiasa integer, bakinya dibuang apabila membahagi.

Contoh: int a,b; a = 10; b = 3; int c = a / b; // Jawapan: c = 3 int d = a%b; // Jawapan: d = 1 Operasi ini sangat penting dalam pengaturcaraan. Mereka perlu difahami dan digunakan dengan betul. Dan itu memerlukan latihan!

 

Keperluan untuk menggunakan operasi pengiraan baki bahagian dapat dilihat apabila bekerja dengan digit nombor. 

Mari analisa tugasan berikut:
Nombor tiga digit diberikan. Paparkan semua digit nombor ini dan dapatkan nombor baharu yang dibentuk dengan mengubah suai unit dan ratusan

Soalan paling sukar yang timbul untuk pemula ialah cara mengambil dan mendapatkan digitnya daripada nombor.
Sebenarnya, semuanya diselesaikan dengan mudah, jika anda ingat matematik. Dan matematik memberitahu kita bahawa sebarang nombor boleh diuraikan menjadi jumlah sebutan digit.
Contohnya: 365=3*100+6*10+5*1 . Kami melihat bahawa setiap digit ialah pengganda bagi digit nombor yang sepadan. 
Kami akan menunjukkan cara untuk mendapatkan setiap digit nombor ke dalam pembolehubah yang berasingan, menggunakan contoh membahagikan lajur dengan nombor 10. (Kami mengambil nombor 10, kerana kami mempunyai sistem nombor perpuluhan dan, dengan itu, kami mempunyai istilah digit 1, 10, 100, dsb.)
  

Menganalisis angka itu, anda dapat melihat bahawa  e = n % 10; // operasi n % 10 - mengira digit terakhir nombor n (iaitu, unit nombor) 365 % 10 = 5 d = n / 10% 10; // operasi n / 10 - mengurangkan nombor sebanyak 10 kali, iaitu membuang digit terakhir nombor (365 / 10 = 36), // kini kita boleh mengira bilangan puluh dengan menggunakan operasi biasa pada hasil - kira baki pembahagian dengan nombor 10, 36 % 10 = 6 s = n / 100; // untuk mendapatkan ratusan, cukup untuk membuang dua digit dari sebelah kanan nombor, iaitu bahagikan dengan 10 dua kali (n / 10 /10 atau sama dengan n / 100 ) < strong>365 / 100 = 3
Mempunyai digit nombor yang disimpan, kita boleh membuat sebarang nombor daripadanya dengan mendarab digit yang dikehendaki dengan digit yang sepadan: 
sebagai contoh, baris di bawah akan mendapat nombor baharu daripada nombor asal n, dengan ratusan dan satu disusun semula:
1) bilangan lama yang (disimpan dalam pembolehubah e)  didarab dengan 100 
2) bilangan lama sepuluh (disimpan dalam pembolehubah d)  darab dengan 10 
3) kita hanya boleh mendarabkan nombor lama ratus dengan 1, atau hanya mengambil nilai yang disimpan dalam pembolehubah s
Kemudian hanya tambah nilai dari mata 1, 2 dan 3 dan dapatkan nombor baharu:

n1 = e * 100 + d * 10 + s;

Keseluruhan program akan kelihatan seperti ini: import java.util.Scanner; kelas awam Utama { public static void main(String[] args) { Pengimbas masuk = Pengimbas baharu(System.in); int n, e, d, s; n = in.nextInt(); e = n % 10; d = n / 10% 10; s = n / 100; System.out.print(e + "" + d + "" + s + "" + (e * 100 + d * 10 + s)); }