ในวิชาคณิตศาสตร์ สมการแบบแยกส่วน เป็นสมการพีชคณิตที่พอใจโดย moduli ในแง่ของปัญหามอดูลี กล่าวคือ เมื่อให้ฟังก์ชันจำนวนหนึ่งบนสเปซโมดูลี สมการแบบแยกส่วนคือสมการที่ยึดระหว่างฟังก์ชันเหล่านี้ หรืออีกนัยหนึ่งคือเอกลักษณ์ของมอดูลี
การใช้คำว่า สมการแบบแยกส่วน . บ่อยที่สุด เกี่ยวข้องกับปัญหาโมดูลีของเส้นโค้งวงรี ในกรณีนั้น โมดูลีสเปซเองนั้นเป็นมิติหนึ่ง นั่นก็หมายความว่าฟังก์ชันตรรกยะสองฟังก์ชัน F และ G ในช่องฟังก์ชันของเส้นโค้งโมดูลาร์ จะเป็นไปตามสมการโมดูลาร์ P(F, G) =0 กับ P พหุนามที่ไม่ใช่ศูนย์ของตัวแปรสองตัวทับจำนวนเชิงซ้อน สำหรับทางเลือกที่ไม่เสื่อมคุณภาพที่เหมาะสมของ F และ G , สมการ P(X,Y) =0 จะกำหนดเส้นโค้งแบบแยกส่วนได้จริง
คุณเพิ่งเห็นนิพจน์ทางคณิตศาสตร์แปลก ๆ ของแบบฟอร์ม
B ≡ (ตัวดัดแปลง X)
นี่บอกว่า B เท่ากันกับ A โมดูโล X ลองมาดูตัวอย่างกัน
21 ≡ 5( สมัย 4)
เทียบเท่าสัญลักษณ์หมายถึง "ความเท่าเทียมกัน" ในสมการข้างต้น 21 และ 5 มีค่าเท่ากัน นี่เป็นเพราะว่า 21 โมดูโล 4 =1 เท่ากับ 5 โมดูโล 4 =1 อีกตัวอย่างหนึ่งคือ 51 ≡ 16( mod 7)
ในปัญหานี้ เรามีจำนวนเต็ม a และ b สองจำนวน และเราต้องค้นหาจำนวนค่าที่เป็นไปได้ x ที่เป็นไปตามสมการโมดูลาร์ (A mod X)=B โดยที่ X แก้สมการของสมการโมดูลาร์
ตัวอย่าง
Input: A = 26, B = 2 Output: X can take 6 values
คำอธิบาย
X สามารถเท่ากับค่าใดๆ ของ {3, 4, 6, 8, 12, 24} เนื่องจากโมดูลัส A ค่าใดๆ เหล่านี้เท่ากับ 2 i e., (26 mod 3) =(26 mod 4) =(26 mod 6) =(26 mod 8) =.... =2
เรามีสมการ A mod X =B
เงื่อนไข
ถ้า (A =B) จะมีค่ามากมายเป็นอนันต์ โดยที่ A จะมากกว่า X เสมอ
ถ้า (A
ตอนนี้เหลือเพียงกรณีสุดท้ายที่ (A> B)
ในกรณีนี้ เราจะใช้ความสัมพันธ์
เงินปันผล =ตัวหาร * ผลหาร + ส่วนที่เหลือ
X คือตัวหารที่ได้รับ A คือเงินปันผลและ B คือเศษส่วน
ตอนนี้
A =X * ผลหาร + B
ให้ Quotient แสดงเป็น Y
∴ A =X * Y + B
A - B =X * Y
∴ เพื่อให้ได้ค่าปริพันธ์ของ Y
เราจำเป็นต้องนำ X ทั้งหมดมาเพื่อให้ X หาร (A - B)
∴ X เป็นตัวหารของ (A - B)
การหาตัวหารของ (A – B) เป็นปัญหาหลัก และจำนวนตัวหารดังกล่าวคือค่าที่เป็นไปได้ที่ X สามารถรับได้
เรารู้ว่าค่าโซลูชัน A mod X จะมาจาก (0 ถึง X – 1) นำ X ดังกล่าวทั้งหมดมาที่ X> B.
ด้วยวิธีนี้ เราสามารถสรุปได้โดยบอกว่าจำนวนตัวหารของ (A – B) มากกว่า B โดยมีค่า X ที่เป็นไปได้ทั้งหมดซึ่งไม่เป็นไปตาม A mod X =B
ตัวอย่าง
#include <iostream> #include <math.h> using namespace std; int Divisors(int A, int B) { int N = (A - B); int D = 0; for (int i = 1; i <= sqrt(N); i++) { if ((N % i) == 0) { if (i > B) D++; if ((N / i) != i && (N / i) > B) D++; } } return D; } int PossibleWaysUtil(int A, int B) { if (A == B) return -1; if (A < B) return 0; int D = 0; D = Divisors(A, B); return D; } int main() { int A = 26, B = 2; int Sol = PossibleWaysUtil(A, B); if (Sol == -1) { cout <<" X can take Infinitely many values greater than " << A << "\n"; } else { cout << " X can take " << Sol << " values\n"; return 0; } }