C語言 迴圈 疑問
有3個題目 對於 完全沒上過C語言課程 實在是不太明白 請各位解答
1.使用者自行輸入2整數 m 與 n 值 1.試利用for迴圈計算1+3+5...n 的總和,其中n為奇數 2.試利用for迴圈計算m+(m+2)...n 的總和,其中m與n為奇數 3.題目2之m n 值若是偶數,您可改成 m n 間奇數和嗎? (希望用if 打成同一串)
2.使用while迴圈:假設有一條繩子長x公尺,每天剪去一半的長度,請問需要花費幾天的時間,繩子的長度會短於x/2?(短於一半長度) (答案一定都是2天吧@@)
3.輸入2整數值 x 與 y, 試利用do while迴圈找出最小的n值,使得 x+(x+1)+(x+2).....+n的總和大於等於y....假設y>x
希望可以寫詳細點 因為只是初學者 感謝~
1 個解答
- 7 年前最佳解答
程式header宣告, 變數宣告, 還有主程式 int main() 我就省略了
[1-1]
sum=0;
for (int i =1 ; i<=n ; i+=2) {
sum = sum + i;
{
cout<<sum<<endl;
[1-2]
sum=0;
for ( ; m<=n ; m+=2){
sum+=m;
}
cout<<sum<<endl;
[1-3]
sum=0;
for (m=m+m%2 ; m<=n ; m+=2) {
sum+=m;
}
cout<<sum<<endl;
[2]
int day=0;
double half = x / 2;
while (x>=half)
{
day++;
x /= 2;
}
cout<<day<<endl;
[3]
sum=x;
n=0;
do{
n++;
x++;
sum+=x;
while(sum<y);
cout<<n<<endl;