vb程序设计:S= 1-1/4+1/7-1/10+1/13-1/16 求级数和直到最后一项小于0.01

来自:社会风气    更新日期:早些时候
c语言编程序 /*计算1-1/4+1/7-1/10+1/13-1/16…共n项之和*/~

#include
int main(void)
{
double n,sum,i,k;
sum=0;
k=1;
printf("Enter n: ");
scanf("%lf",&n);
for(i=1;i<=n;i++){
sum=sum+k/(3*i-2);
k=-k;
}
printf("sum=%.3f",sum);
return 0;
}
输入形式
从键盘输入一个正整数n。
输入输出样例1(下划线部分表示输入)
Enter n:3
sum=0.893
输入输出样例2(下划线部分表示输入)
Enter n:10
sum=0.819

扩展资料:scanf函数用法:
scanf("输入控制符",输入参数);
功能:将从键盘输入的字符转化为“输入控制符”所规定格式的数据,然后存入以输入参数的值为地址的变量中。
用scanf()函数以%s格式读入的数据不能含有空白符时,所有空白符都被当做数据结束的标志。所以题中函数输出的值只有空格前面的部分。
如果想要输出包括空格在内的所有数据,可以使用gets()函数读入数据。gets()函数的功能是读取字符串,并存放在指定的字符数组中,遇到换行符或文件结束标志时结束读入。换行符不作为读取串的内容,读取的换行符被转换为字符串结束标志'\0'。

程序修改如下:

#include
#include
int main()
{
int denominator, flag;
int repeat, ri;
double eps, item, sum;

scanf("%d", &repeat);
for(ri = 1; ri <= repeat; ri++){
scanf("%lf", &eps); //<-----改了,输入double 用%lf
item=1;
sum=0;
flag=1;
while(1.0/item>=eps) {
sum=sum+flag*1.0/item;
item=item+3;
flag=(-1)*flag;
}
sum = sum + flag*1.0/item; //最后一项需要加进来,即第一个满足1/item < eps的项需要进行计算。
printf("sum = %.6lf
", sum); //改了,输出double有%lf
}
}

Private Sub Form_Click()
Dim sum#, n#, i#, sign%
sum = 0: n = 1: i = 1: sign = 1
Do
sum = sum + n
i = i + 3
sign = -sign
n = sign / i
Loop Until n < 0.01
Print "级数求和得结果为S=" & sum
End Sub
'希望对你有帮助!~ ^_^b

Private Sub Command1_Click()
Dim b, n As Integer 'b是项的数量,n是记数用的
Dim a, j As Double 'a是保存结果用的,j是text2的值
j = Text2.Text 'text2输入0.01
b = (1 - j) / 3 * j + 1
For n = 0 To b
a = a + ((-1) ^ n) / (1 + 3 * n)
Next
Text1.Text = a
End Sub

具体VB程序记不得,只能给你提供算法了
利用do…… while循环来求,注意规律 m=P/i;i=i+3;p=p*(-1);sum=sum+m
循环直到m*100<1为止


vb程序设计:S= 1-1/4+1/7-1/10+1/13-1/16 求级数和直到最后一项小于0.01视频

相关评论:

相关主题精彩

版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

Copyright © 喜物网