MOOC北京理工《C語言程式設計(上)》第5周第3題:求最小m值
阿新 • • 發佈:2018-12-30
題目內容:
求滿足下列不等式的最小 m。
1 + 2 + 3 + 4 + ...... + m ≥ n
例如:n=100,當 m =14 時,滿足:1+2+3+4+...+13=91<100,而 1+2+3+4+......+14=105>100。
輸入格式:
n
輸出格式:
m
輸入樣例:
100
輸出樣例:
14
#include <stdio.h> #include <stdlib.h> int main() { int n,m,i,j,sum1,sum2; scanf("%d",&n); for(m=2;m<=n;m++) { sum1=0; sum2=0; for(i=1;i<=(m-1);i++) { sum1=sum1+i; } for(j=1;j<=m;j++) { sum2=sum2+j; } if(sum1<n&&sum2>=n) { printf("%d",m); exit(0); } } return 0; }
sum1,sum2清零語句的位置要注意,昨天晚上我放到了迴圈的外面,結果一晚上都查不出bug,今天終於搞定了。