Module: BAHAGIAN INTEGER DAN KEKAL


Problem

14 /16


Soalan yang paling sukar untuk pemula, atau digit nombor

Theory Click to read/hide

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)); }

Problem

Nombor tiga digit dimasukkan daripada papan kekunci. 
Tulis program yang mencetak ruang yang diasingkan pada satu baris:
hasil tambah digit nombor dan nombor baharu yang terbentuk dengan mengubah suai satu dan sepuluh