Giả sử chúng ta có một số n. Chúng ta phải tìm số cách chia một số thành các phần [a, b, c và d] sao cho a = c và b = d. Vì vậy, nếu số là 20, thì đầu ra sẽ là 4. Như [1, 1, 9, 9], [2, 2, 8, 8], [3, 3, 7, 7] và [4, 4, 6, 6]
Vì vậy, nếu N là số lẻ, thì câu trả lời sẽ là 0. Nếu số đó chia hết cho 4 thì đáp án sẽ là n/4 – 1 ngược lại n/4
Ví dụ
Bản thử trực tiếp
#include using namespace std; int countPossiblity[int num] { if [num % 2 == 1] return 0; else if [num % 4 == 0] return num / 4 - 1; else return num / 4; } int main[] { int n = 20; cout 1Bây giờ lấy modulo 10
1 % 10 = 1
Sử dụng phương pháp trên, chúng ta có thể tách từng chữ số từ một số
Hợp lý
Cho đến khi số trở thành 0
làm
Lấy số % 10 và in kết quả
Chia số đó cho 10. [số = số / 10]
Ví dụ
Hãy lấy num = 123
Bước 1
Num = 123 [không bằng 0]
Mod = 123% 10 ==> 3
Số = 123/10 ==> 12
Bước 2
Num = 12 [không bằng 0]
Mod = 12% 10 ==> 2
Số = 12/10 ==> 1
Bước 3
Num = 1 [không bằng 0]
Chế độ = 1% 10 ==> 1
Số = 1/10 ==> 0
Bước 4
Num = 0 [bằng 0, dừng quá trình]
Giải thích bằng hình ảnh
Chương trình
Ví dụ
/***************************** *Program : split the digits * *Language : C * *****************************/ #include int main[] { int num; scanf["%d",&num]; while[num > 0] //do till num greater than 0 { int mod = num % 10; //split last digit from number printf["%d\n",mod]; //print the digit. num = num / 10; //divide num by 10. num /= 10 also a valid one } return 0; }
chạy nóChủ đề bạn có thể thích
Làm cách nào để chia một số thành hai phần trong C?
Đây là mã của tôi. int a; . phân công. c. division.Làm thế nào để chia một số trong C?
printf["Nhập cổ tức. "]; scanf["%d", ÷nd]; printf["Nhập số chia. "]; scanf["%d", &divisor]; Sau đó thương được đánh giá bằng cách sử dụng / [toán tử chia] và được lưu trữ trong thương. thương = số bị chia / số bị chia ; .