黑马程序员技术交流社区

标题: 这题能不能用两个for循环解决? [打印本页]

作者: 987212100    时间: 2015-4-28 21:59
标题: 这题能不能用两个for循环解决?
小芳的妈妈每天给她2.5元钱,她都会存起来, 但是,每当这一天是存钱的第5天或者5的倍数的话,
她都会花去6元钱,请问,经过多少天,小芳才可以存到100元钱。
作者: 下海的鱼儿    时间: 2015-4-28 22:16
其实一个for就可以搞定 关键是你现在学到那个位置了
作者: xfliyy    时间: 2015-4-28 23:00
:victory:正好无聊啊,拿去练习下
作者: xiaowen_wu    时间: 2015-4-28 23:22
  1. class LianXi
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 int day=1;  //第一天
  6.                 double sun=0.0d;   //存钱的变量,
  7.                 while(sun<100)     //当sun大于100就跳出循环
  8.                 {
  9.                         sun += 2.5;    //第存钱的总数
  10.                         if(day%5==0)   //这一天是第五天或者是5天的倍数时
  11.                                 sun = sun -6.0;   //就花去6元钱
  12.                         day++;           //日期加一天
  13.                 }
  14.                 System.out.println(day);  //打印需要的天数
  15.                 System.out.println(sun);  //打印共存的钱
  16.         }
  17. }
复制代码


不知道这样对不对,第一次来写,希望可以帮到你,嘻嘻
作者: xiaowen_wu    时间: 2015-4-28 23:54
xiaowen_wu 发表于 2015-4-28 23:22
不知道这样对不对,第一次来写,希望可以帮到你,嘻嘻

System.out.println(day);  //打印需要的天数
这里改为System.out.println(--day);  //打印需要的天数
作者: 840800102    时间: 2015-4-28 23:56
/*

小芳的妈妈每天给她2.5元钱,她都会存起来, 但是,每当这一天是存钱的第5天或者5的倍数的话,
她都会花去6元钱,请问,经过多少天,小芳才可以存到100元钱。

思路:
        定义变量。接收所存的钱。美团存2.5元。即25角定义变量接收存钱的天数。
        使用while循环遍历所存的钱。。
        因每当第五天的时候小芳要用掉6元。使用if语句判断符合就减6元。即60角

*/

class Save
{
        public static void main(String[] args)
        {
                int x = deposit(1000);
                System.out.println(x);
        }
        public static int deposit(int key){
                int x=0,y=0;
                while(x<=key){
                        ++y;
                        x+=25;
                        if(y%5==0){
                                x-=60;
                        }
                }
                return y;
        }
}

作者: 840800102    时间: 2015-4-29 00:02
//改版for循环。一个就好了 用if判断。
class Save
{
        public static void main(String[] args)
        {
                int x = deposit(1000);
                System.out.println(x);
        }
        public static int deposit(int key){
                int y=0;
                for(int x=0;x<=key;x+=25){
                        ++y;
                        if(y%5==0){
                                x-=60;
                        }
                       
                }
                return y;
        }
}
作者: wnk77521    时间: 2015-4-29 02:44
  1. /*
  2.   小芳的妈妈每天给她2.5元钱,她都会存起来,
  3.   但是,每当这一天是存钱的第5天或者5的倍数的话,
  4.   她都会花去6元钱,请问,经过多少天,
  5.   小芳才可以存到100元钱。

  6.   分析,
  7.     需要变量,
  8.           保存天数  int
  9.           保存总数  double
  10.         反复重复存钱,使用循环
  11.         当总钱数 >= 100时候,循环就结束了

  12. */

  13. class  XiaoFangDemo
  14. {
  15.         public static void main(String[] args)
  16.         {
  17.                 //定义变量,保存天数
  18.                 int day = 0;
  19.                 //定义变量,保存总数
  20.                 double money = 0 ;
  21.                 //开始循环存钱
  22.                 while(true){
  23.                    //开始存钱,总数+每次存的数据
  24.                    money += 2.5;
  25.                    day++;
  26.                    if(money >= 100){
  27.                       break;
  28.                    }
  29.                    //对天数,进行5的倍数,取模运算
  30.                    if(day % 5 ==0){
  31.                       //总数减去6元
  32.                           money = money - 6;
  33.                    }
  34.                 }

  35.                 System.out.println(day);
  36.         }
  37. }
复制代码

作者: fc389119336    时间: 2015-4-29 08:03
:o好厉害的感觉
作者: 蒋卓    时间: 2015-4-29 18:22
一个while解决的事
作者: 下一页5    时间: 2015-4-29 18:46
我试试哈哈哈哈哈
作者: 付长云    时间: 2015-4-29 20:57
顶+++++++++++++++++
作者: 19期1910    时间: 2015-4-29 21:45
求结果多少
作者: 987212100    时间: 2015-5-3 22:33
我能说你们回复的代码不是我想要的嘛。:'(一个for循环的累加计数早就写出来的,一直在研究可不可以把累加用for嵌套的代码方式解决....
作者: 987212100    时间: 2015-5-3 22:35
19期1910 发表于 2015-4-29 21:45
求结果多少

结果在发帖之前就已经解决.74天.不要怀疑。代码加上计算器手动加双重验证




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2