1樓:匿名使用者
第一種方式:
private sub command1_click()dim a as integer
dim i as integer
dim s as double
a = 1
i = 1
s = 0
do while (1 / a) > (1 / 10000)a = a + (i - 1)
s = s + (1 / a)
i = i + 1
if i = 141 then print i; sloop
print s
print i
end sub
第二種方式
dim a as integer
dim i as integer
dim s as double
a = 1
i = 1
s = 0
doa = a + (i - 1)
s = s + (1 / a)
i = i + 1
if i = 141 then print i; sloop while (1 / a) > (1 / 10000)print s
print i
注:i為項數、s為總合。如果把while改為until則符號“>”改為“<”>.
對了,第141項為2.35936…雖然和你說的結果有點誤差,但是,這是在計算機合理的範圍內,因為儲存資料的需要,單精度(single)和雙精度(double)在實際儲存資料中都會對小數位數多的產生一定誤差。
2樓:候學海
s=0xn=1
i=1while xn>=1e-5:
s=s+xn
i=i+1
xn=1/(1/xn+i-1)
print(s)
3樓:匿名使用者
不懂.也想學.沒人教我.嗚嗚.
4樓:匿名使用者
一、do while 1/x>=10^-4i=i+1
x=x+i
s=s+1/x
loop
二、do until 1/x<10^-4
i=i+1
x=x+i
s=s+1/x
loop
三、do
i=i+1
x=x+i
s=s+1/x
loop while 1/x>=10^-4四、do
i=i+1
x=x+i
s=s+1/x
loop until 1/x<10^-4
c語言程式設計題,計算s=1-1/2+1/3-1/4.....+1/m
5樓:匿名使用者
n是整型,執行1/n後也是個整型。**修改:
#include
int main()
printf("%f\n",s);
return 0;}
6樓:天願見伊
由於你的n是int型,則1/n是整數,程式中的1/n或(-1)/n一直是0,所以s一直都是0;將t=1/n和t=(-1)/n改為t=1/(float)n和t=-1/(float)n即可,即將n強制轉換為float型,這樣1/n就可以表示為小數了。
希望可以幫到你!
7樓:selonsy少英
#include
int main()
printf("%f\n",s);
return 0;
} //該程式已在vs中除錯通過,望採納!
8樓:匿名使用者
/*輸入數值n:10
0.645635
press any key to continue*/#include
int main()
printf("%lf\n",sum);
return 0;}
9樓:流星不死
# include
int main()
printf("\n\n sum is %f",sum);
return 0;}
編寫程式,計算s=1+1/(1*2)+1/(1*2*3)+1/(1*2*3*4)+。。。+1/(1*2*3*...*n)的值。 說明:本題以10 為例!
10樓:匿名使用者
下面是你的**修改後並能成功執行的**
#include
main()
printf("s=%.6f\n",s);
getchar();
getchar();
} 錯誤1.maim改為 main
錯誤2.for迴圈沒加花括號,沒括號只迴圈for接下來的那句。
錯誤3.a、t不能是整型,至少t不能是整型,想想看,若a、t是整型會造成s也是整型,事實上t的值從來不會大於1,約等於後就得0了。
for(i=1;i<=10;i++)
a*=i;
t=1/a;
s+=t;
下面是我編得程式
#include
void ok(int n);//宣告 求各項和函式double njie(int n);//宣告 求n! 函式main()
double njie(int n)//求n! 函式void ok(int n)//求各項和函式該程式直到n=33都正確,n=34就開始亂碼了,可能是溢位了。
11樓:匿名使用者
t你定義為整數型 可是你又讓它等於1/a,結果強制變整數了 把t定義為浮點型
12樓:匿名使用者
第一行應該是main(),而不是maim,
其他的就是和樓上老兄一樣,你應該把t宣告成float。
c語言程式設計:本題要求編寫程式,計算序列 1 - 1/4 + 1/7 - 1/10 + ... 的前n項之和
13樓:匿名使用者
兩個printf語句錯了,一個多了,n 一個多了&這是修改後的**
#include
int main()
printf("sun=%.3f\n",sum);
return 0;}
14樓:穆詩
錯誤的給你註釋了,更正的寫在下面,請認真看**#include
int main()
//printf("sun=%.3f",&sum);//加&取地址,這樣輸出的是sum的地址值
printf("sum=%0.3f\n",sum);
return 0;
}同時給你簡化一下程式
#include
#include
int main()望採納
15樓:來夕橋嬋
很容易編寫!
先用數學方法計算出這個等差數列的求和公式:s(n)=3*n*n-2*n(n>=1);
然後輸入n,直接用公式進行計算輸出;
#include
#include
#include
#include
int main()
return 0;}
16樓:
sum=sum-1/(3*i-2);//1/(3*i-2);這個得數一定為0
c語言題目 求1-1/2+1/4-1/8+1/16 …..+(-1/2)n值,直到最後元素的小於10-4 5
17樓:匿名使用者
#include
#include
main()
printf("n=%d ,sum=%lf\n",n,sum);}
18樓:
#include "stdio.h"
#include "math.h"
int main()
printf("1-1/2+1/4-1/8+...=%lf\n",sum);}
19樓:匿名使用者
可以化簡成
1/2+1/8+1/32+...+1/(2*(4--(n-1)次方))
int main(void)
////應為上面沒一項是原式中的兩項相加的結果且這兩項分別為2a , -a,所以如果2a也滿足要求,就不要最後一項-1了
if((2*a)<0.00001)
s += a;
printf("s = %lf\n",s);
return 0;}
20樓:龍__鳳
程式如下:
#include
#include
void main()
printf("%lf\n",sum);
}結果:
1/2+1/3+1/4+1/5+1/6+1/7+1/8+1/9+1/10+....1/100這道題怎樣簡算
21樓:慕野清流
沒有,復這是調和數列,制
很早就有數學家bai
研究,比如中世紀後du期的數學家oresme在zhi2023年就證明了這個級數dao是發散的。他的方法很簡單: 1 +1/2+1/3 +1/4 + 1/5+ 1/6+1/7+1/8 +...
1/2+1/2+(1/4+1/4)+(1/8+1/8+1/8+1/8)+... 注意後一個級數每一項對應的分數都小於調和級數中每一項,而且後面級數的括號中的數值和都為1/2,這樣的1/2有無窮多個,所以後一個級數是趨向無窮大的,進而調和級數也是發散的。 從更廣泛的意義上講,如果an是不全部為0的等差數列,則1/an就稱為調和數列,求和所得即為調和級數,易得,所有調和級數都是發散於無窮的。
22樓:匿名使用者
1/2+1/3+1/4+1/5+1/6+1/7+1/8+1/9+1/10
=(1/2+1/3+1/6)+(1/4+1/5+1/10)+1/7+1/8+1/9
=1+11/20+1/8+1/7+1/9
=1+27/40+1/9+1/7
=1+283/360+1/7
=1+2341/2520
=4861/2520
簡便計算一題
有乘除和加減,先算乘除,後算加減 9分之5 11分之7,分子與分子相乘,分母與分母相乘,等於99分之35 同樣可以算出9分之7 11分之6等於99分之42分母相同,不變,分子相加 99分之35加99分之42等於99分之77化減,分子分母同除11,得到7分之9 孤獨月下 1.125 3 125 5 2...
怎麼做這一大題,這一題怎麼做?
kingx皇朝 你好你首先要把這個大題發出來,把不會的題發出來,我們才能幫到你啊! 淺笑嫣然 你好,對於做題我覺得需要一點點的分析,要有耐心並且細心的去算。如果可以的話,要盡量提高自己的速度,畢竟考試是有時間限制的。 在江嶺騎馬的金銀花 怎麼做這一大題,當然是能慢慢的細心的去做就好了,就這樣。 一道...
最後一題加列式計算怎麼寫
逆流向上呀 2160 8 18 2160 144 15 連加豎式怎麼寫 連加豎式有兩種寫法,以15 59 16 90為例,如下圖所示 豎式,指的是每乙個過渡數都是由上乙個過渡數變化而後,上乙個過渡數的個位數乘以2,如果需要進製,則往前面進1,然後個位公升十位,以此類推,而箇位上補上新的運算數字。擴充...