循环小题简答

欢迎大家关注我的日志

一.100以内的一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

 1100以内的一个整数:0--99之间的数值,要用到循环操作

          For(int i=0;i<100;i++){}

 2、它加上100后是一个完全平方数:完全平方数(一个数开方之后是一个整数),开方(Mathf.Sqrt())Mathf.Sqrt(i+100)得出来的数值是个整数

 3、再加上168又是一个完全平方数:Mathf.Sqrt(i+268)得出来的数值是个整数

 4、需要一个恒等式来实现完全平方数(Mathf.Sqrt(4)=2  2*2==4)

 5.if(x*x==i+100  && y*y==i+268)

 6.打印i,即所求的数值

二.定义一个三位数,计算其各位数字之和

 1.定义三位数,100999之间的数,用到循环

     Forint i=100I<=999;i++

 2把各位数字转化为个数

A=i%100

B=i/10%10;

C=i%10;

3.求和

Sum=a+b=c

三.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在     10次落地时,共经过多少米?第10次反弹多高?

  1.10次落地时,共经过多少米,需要先推前几次(循环)

      For(int i=1;i<=9;i++)

2.推出公式

S=s+h,h=2/h;

3.求第十次落地时,共经过

S=s+h,

第十次反弹

h/2;

四.猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个     第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下     的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。 

1、最后一天只剩下一个桃子,要求第一天共摘了多少个,需 

    要倒推,倒推9天(循环)

    For(int i=1;i<=9;i++){   }

      2、推出通式:

       1      4          10       22

       1  1+1*2    (4+1)*2  (10+1)*2

       通式:(i+1)*2

 3、求第一天共摘了多少

       i=(i+1)*2

五.输入一整数A,判断它是否质数

提示1.若从2到A的平方根的范围内,没有一个数能整除A,则A是质数

提示2.在java中计算n的平方根可以使用Math.sqrt(n)

(不包括2和3)

1、   从2到A的平方根的范围内

       For(int i=2;i<=Mathf.Sqrt(A);i++){   }

   2、没有一个数能整除A     

       If(A%i!=0){   }

   3、For(int i=2;i<=Mathf.Sqrt(A);i++){  

               If(A%i!=0){ 

                   是质数

                }else{

不是质数

}

 

       }输出的结果是质数和不是质数都有

4、设置一个标志位(布尔变量),来区分是否是质数bool b = false;

       A%i!=0布尔变量为真,否则为假。然后在循环外部判断布尔变量if (b == true) {

        print(a+"是质数");

      }

这样输出的值只有一个

    5、需要退出循环操作:当a%i!=0为假时,退出循环,不再寻找

 六.(for循环)求100以内所有能被3整除但不能5整除的数字的和

 1.100以内的所有数,要循环

For(int i=1; i<=100;i++)

2.能被3整除但不能被5整除,要判断语句

If(i%3==0&&i%5!=0)

3,求和

Sum=sum+i;

想了解更多可以关注http://www.gopedu.com/


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值