設a和b是正整數
a+b=30 且a*b=221 求a和b的值
思路就是窮舉a和b的值,每次得到a和b的一個值,看是否同時滿足a+b=30且a*b=221,如果滿足,那么就輸出。
那么a和b的的取值范圍就是關鍵了
由a+b=30且a和b是正整數得出0<a<=30 ,0<b<=30
由a*b=221得出a<=221 b<=221
兩個條件同時滿足,那么a的范圍就是0<a<=30 b的范圍就是0<b<=30
求出取值范圍,那么窮舉的范圍就縮小了
for (int a = 1; a <= 30; a++) { for (int b = 1; b <= 30; b++) { if ((a + b == 30) && (a*b == 221)) { printf("a=%d b=%d\n",a,b); } } }