| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 717 人关注过本帖
标题:请大家帮忙小弟看下这简单的程序 谢谢大家了
只看楼主 加入收藏
风影空
Rank: 1
等 级:新手上路
帖 子:73
专家分:2
注 册:2009-7-23
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:7 
请大家帮忙小弟看下这简单的程序 谢谢大家了
1、    编写一个Java应用程序,计算1-1/3+1/5-1/7+1/9-1/11+…的前10000项之和。
class He{
    public static void main (String args[]){
   
int m;
double sum=0,s;
for(m=1;m<=1000;m++)
{

s=((-1)^(m-1))/(2m-1);
sum=sum+s;
}
System.out.println(sum);
}
}
不知道为什么运行不了  哪里错了 麻烦大家了 谢谢
搜索更多相关主题的帖子: 应用程序 public double Java 
2010-04-15 00:08
lampeter123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:54
帖 子:2508
专家分:6424
注 册:2009-1-30
收藏
得分:8 
//2m-1不是表达式,应是2*m-1;
//乘方是Math.pow(x,n); 表示x的n次幂

public class He{
    public static void main (String args[]){
   
double sum=0,s,a,b;
for(int m=1;m<=1000;m++)
{

a=Math.pow(-1,(m-1));
b=2*m-1;
s=a/b;
sum=sum+s;
}
System.out.println(sum);
}
}

[ 本帖最后由 lampeter123 于 2010-4-15 08:53 编辑 ]

你的优秀和我的人生无关!!!!
    
    我要过的,是属于我自己的生活~~~
2010-04-15 08:50
linjx0123
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:279
专家分:1362
注 册:2006-4-7
收藏
得分:4 
public class He {
    public static void main(String args[]) {
        double sum = 0;
        for (int m = 1; m <= 1000; m++) {
            if(m%2==0){
                sum-=1.0/(2*m-1);
            }
            else
                sum+=1.0/(2*m-1);
        }
        System.out.println(sum);
    }
}
不用幂函数做也行
2010-04-15 09:47
myhnuhai
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:3
帖 子:425
专家分:1725
注 册:2010-3-17
收藏
得分:8 
class He{
    public static void main (String args[]){
   
int m;   // m必须要赋值才能使用改为:int m =0  或者直接在第三行for语句的里面m前加上int
double sum=0,s;
for(m=1;m<=1000;m++)         //  for(int m=1;m<=1000;m++)
{

s=((-1)^(m-1))/(2m-1);//你这里出错了这里不能用VB中的算法一样算 应该用Math.pow,因改为S=pow(-1,m-1)/(2 * m - 1).还有(2m-1)是错误的写法,应该写为(2 * m - 1);为了看起来美观在运算符左右加空格!!!
sum=sum+s;//这里还可简化为:sum +=s

}System.out.println(sum);
}
}
修改后的完整代码为:
public class He {
    public static void main(String args[]) {

        //int m = 0;
        double sum = 0, s;
        for (int m = 1; m <= 1000; m++) {

            s = Math.pow(-1,m-1)/ (2 * m - 1);
            sum += s;
        }
        System.out.println(sum);
    }
}

不要让肮脏的记忆,迷失了原本纯洁的心灵!
2010-04-15 12:38
风影空
Rank: 1
等 级:新手上路
帖 子:73
专家分:2
注 册:2009-7-23
收藏
得分:0 
谢谢大家的帮忙 小弟感激不尽
2010-04-17 18:37
abigbadboy
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-4-17
收藏
得分:0 
public class He {
    public static void main(String args[]) {

        //int m = 0;
        double sum = 0, s;
        for (int m = 1; m <= 1000; m++) {

            s = Math.pow(-1,m-1)/ (2 * m - 1);
            sum += s;
        }
        System.out.println(sum);
    }
}
问下//int m = 0;
为什么要加//
2010-04-17 19:11
风影空
Rank: 1
等 级:新手上路
帖 子:73
专家分:2
注 册:2009-7-23
收藏
得分:0 
那个是解释说明的 凡是加上//
2010-04-17 20:29
xudongcsharp
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:129
专家分:156
注 册:2009-5-31
收藏
得分:0 
    public static void main(String[] args) {
        int t=-1;
        double sum=1.0;
        for(int i=1;i<=10000;i++)
        {
            double s=2*i+1;
            sum=sum+t/s;
            t=-t;
        }
        System.out.println("总和为:"+sum);
    }
2010-04-18 18:29
快速回复:请大家帮忙小弟看下这简单的程序 谢谢大家了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029963 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved