会员登录 用户名: 密码: 登录 新会员注册 [找回密码]
当前位置:编程论坛 >> C/S程序开发专区 >> JAVA编程论坛 >> JAVA第一课习题,盲目中
首页
  发表一个新主题  发表一个新投票  回复主题 您是本帖的第 4657 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
 * 贴子主题:JAVA第一课习题,盲目中 悬赏分30 [提问中] 报告本帖给版主  显示可打印的版本  把本贴打包邮递  把本贴加入论坛收藏夹  发送本页面给朋友  把本贴加入IE收藏夹 
 smzd 帅哥哟,离线,有人找我吗?
  
  
  等 级:初出江湖
  积 分:1008
  专家分:422
  提问帖:0/0
  回答帖:58
  总帖数:65
  经验值:130
  注 册:2008-7-22
给smzd发送一个短消息 把smzd加入好友 查看smzd的个人资料 搜索smzd在JAVA编程论坛的所有贴子  引用回复这个贴子 回复这个贴子41

发贴心情 

public static void main(String[] args) {
        int sum = 0;
        for(int i=2; i<=300; i+=2){
            if((sum+=i)>10000){
                sum -= i;
                break;
            }
        }
        System.out.println("sum="+sum);
    }
===========
sum=9900
发帖:2008-9-16 20:45:00
 zlaimy 帅哥哟,离线,有人找我吗?
  
  
  等 级:初出江湖
  积 分:226
  专家分:3
  提问帖:0/0
  回答帖:1
  总帖数:1
  经验值:57
  注 册:2008-9-18
给zlaimy发送一个短消息 把zlaimy加入好友 查看zlaimy的个人资料 搜索zlaimy在JAVA编程论坛的所有贴子  引用回复这个贴子 回复这个贴子42

发贴心情 

九楼的 大哥 我想问下你在IF中的处理  你的偶数算法是 num = num+2   当第一个sun 超过10000时 在这之前 已经执行了num +2 >10000 而sun <10000 我在这num总有点怪怪的感觉,假如把IF放前点呢 会有什么结果?
发帖:2008-9-19 12:20:00
 safeware 帅哥哟,离线,有人找我吗?
  
  
  等 级:初出江湖
  积 分:231
  专家分:12
  提问帖:0/0
  回答帖:3
  总帖数:3
  经验值:54
  注 册:2008-9-22
给safeware发送一个短消息 把safeware加入好友 查看safeware的个人资料 搜索safeware在JAVA编程论坛的所有贴子 引用回复这个贴子 回复这个贴子43

发贴心情 

public class Sum {
 public static void main(String[] args) {
  // 声明变量
  int sum = 0;
   
  /* 循环计算300以内偶数和 */
  for (int i = 0; i <= 300; i += 2){
   sum += i;
   if (sum > 10000)
    break;
  }
  System.out.print("所求的和为:" + sum);
 }
}
或者
public class Sum {
 public static void main(String[] args) {
  // 声明变量
  int sum = 0;
   
  /* 循环计算300以内偶数和 */
  for (int i = 0; i <= 150; i++) {
   sum += i * 2;
   if (sum > 10000) {
    sum -= i * 2;
    break;
   }
  }
  System.out.print("300之内的偶数和是:" + sum);
 }
}
结果是9900,我用笔算验证过,结果是正确的~~~
发帖:2008-9-22 23:27:00
 litieming 帅哥哟,离线,有人找我吗?狮子座1984-8-3
  
  
  等 级:初出江湖
  积 分:297
  专家分:42
  提问帖:0/0
  回答帖:8
  总帖数:9
  经验值:60
  注 册:2008-9-17
给litieming发送一个短消息 把litieming加入好友 查看litieming的个人资料 搜索litieming在JAVA编程论坛的所有贴子  引用回复这个贴子 回复这个贴子44

发贴心情 

我认为按照题意,是在和大于10000时停止累加,并不是求10000范围内1-300内偶数之和的最小值。所以我认为答案是10100。如果将相加后大于10000后的最后一个偶数减去,是画蛇添足。

public class SumDemo 
{
 public static void main(String[] args)
 {
  int sum = 0;
  for(int i=1;i<301;i++)
  {
   if(i%2==0)
    sum += i;
   
   if(sum>10000)
    break;
  }
  
  System.out.println(sum);
 }
}

发帖:2008-9-23 9:11:00
 hu6183806 帅哥哟,离线,有人找我吗?
  
  
  等 级:初出江湖
  积 分:248
  专家分:0
  提问帖:0/0
  回答帖:2
  总帖数:5
  经验值:60
  注 册:2008-9-22
给hu6183806发送一个短消息 把hu6183806加入好友 查看hu6183806的个人资料 搜索hu6183806在JAVA编程论坛的所有贴子  引用回复这个贴子 回复这个贴子45

发贴心情 

我求出结果是10100  为什么最后还要再减去 i ?
发帖:2008-9-23 21:36:00
 hu6183806 帅哥哟,离线,有人找我吗?
  
  
  等 级:初出江湖
  积 分:248
  专家分:0
  提问帖:0/0
  回答帖:2
  总帖数:5
  经验值:60
  注 册:2008-9-22
给hu6183806发送一个短消息 把hu6183806加入好友 查看hu6183806的个人资料 搜索hu6183806在JAVA编程论坛的所有贴子  引用回复这个贴子 回复这个贴子46

发贴心情 

public class sy{
   public static void main(String args[])
  {
   int s,i;
    for(s=0,i=0;i<300;i+=2){
     s=s+i;
   if (s>10000)break;
  }
   System.out.println(s);
  }  
}结果10100  觉得没比较再减 i,不知道是不是这样?
发帖:2008-9-23 21:38:00
 libosd0708 帅哥哟,离线,有人找我吗?
  
  
  等 级:初出江湖
  积 分:252
  专家分:11
  提问帖:0/0
  回答帖:4
  总帖数:4
  经验值:58
  注 册:2008-9-25
给libosd0708发送一个短消息 把libosd0708加入好友 查看libosd0708的个人资料 搜索libosd0708在JAVA编程论坛的所有贴子 引用回复这个贴子 回复这个贴子47

发贴心情 

public class sum {

 public static void main(String[] args) {
  int sum=0;
  int num=2;
  while(num<300){
   sum=sum+num;
   if(sum>10000){
    sum=sum-num;
    break;
   }
   num=num+2;
  }
  System.out.println(sum);
 }

}
结果为9900

发帖:2008-9-26 18:08:00
 weijava 帅哥哟,离线,有人找我吗?
  
  
  等 级:初出江湖
  积 分:115
  专家分:0
  提问帖:1/0
  回答帖:1
  总帖数:2
  经验值:54
  注 册:2008-10-2
给weijava发送一个短消息 把weijava加入好友 查看weijava的个人资料 搜索weijava在JAVA编程论坛的所有贴子  引用回复这个贴子 回复这个贴子48

发贴心情 

编程的格式一定要注意啊,乍看有点乱。有好的编程习惯才能编出更完美的程序啊。我也是刚来得啊,有什么不对的地方多多包涵!
发帖:2008-10-2 12:51:00
 lover小滋 美女呀,离线,快来找我吧!天秤座1988-10-18
  
  
  头 衔:笨籹子~
  等 级:初出江湖
  积 分:506
  专家分:98
  提问帖:1/1
  回答帖:37
  总帖数:76
  经验值:142
  注 册:2008-9-15
给lover小滋发送一个短消息 把lover小滋加入好友 查看lover小滋的个人资料 搜索lover小滋在JAVA编程论坛的所有贴子  引用回复这个贴子 回复这个贴子49

发贴心情 

public class E1
  { 
        public static void main(String args[])
      {
 int sum=0;
for(int i=1;i<=300;i++)
  {
    if(i%2==0&&sum<=10000)
    {
     sum=sum+i;
    }
    if(sum>10000)
      break;
    if(i%2!=0&&sum<=10000)
      continue;  
  }
 
    System.out.println("sum="+sum);
 
     }
}

  我的结果是10100啊~~
   呵呵 不知道到底是9900还是10100
  期待LZ的正确答案啊~~~


ㄗs:...苼萿.﹎簡簡單單就好(oo﹎oo)

发帖:2008-10-2 22:25:00
 秋风少落叶 帅哥哟,离线,有人找我吗?
  
  
  等 级:初出江湖
  积 分:1
  专家分:35
  提问帖:6/2
  回答帖:7
  总帖数:26
  经验值:98
  注 册:2008-10-2
给秋风少落叶发送一个短消息 把秋风少落叶加入好友 查看秋风少落叶的个人资料 搜索秋风少落叶在JAVA编程论坛的所有贴子  引用回复这个贴子 回复这个贴子50

发贴心情 

初出江湖写的好像不对吧,按你这样的算法那么应该答案是600才对,你求的不是300内的偶数和,而是i每增1就让和加2,还有这么小的程序又何必声明两个功能重复的变量(num和sum)呢?大家在上面不要客气,想说什么就说什么,才能达到论坛的目的吗
发帖:2008-10-4 11:06:00

本主题贴数63,分页:[返回帖子列表] [上一页] [1] [2] [3] [4] [5] [6] [7] [下一页]
 *快速回复:JAVA第一课习题,盲目中  [ 回帖是一种美德 :) ]
会员账号 用户名    还没注册?    密码    忘记密码?
内容
  • HTML标签: 不可用
  • UBB标签: 可用
  • 贴图标签: 可用
  • 多媒体标签:可用
  • 表情字符转换:可用
  • 上传图片:不可用
  • 最多15KB
  • 点击表情图即可在帖子中加入相应的表情
                                
    邮件回复 显示签名   [Ctrl+Enter直接提交贴子]

    管理选项锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告