8层灯塔 共765盏灯


有一个8层灯塔,每层的灯数都是上一层的2倍,共有765盏灯。编程求最上层的灯数:

 1 #include<stdio.h>
 2 #include <math.h>
 3  
 4 int main(int argc, char const *argv[])
 5 {
 6     /*pow() 返回值的数据类型为 double*/
 7  
 8     double c = 0;
 9  
10     for (int i = 0; i <= 7; ++i)
11     {
12         c += pow(2,i);
13     }
14  
15     printf("顶层:%.f\n",765/c);
16     printf("底层:%.f\n",(765/c)*pow(2,7));
17     return 0;
18 }

分析:

设顶层总共有 x 盏灯 第二层有 x·2^1 盏 第三层有 x·2^2 盏  ......第八层有 x·2^7 盏

共 :    x·(2^0+2^1+2^2·····+2^7) = 765  盏

x = 765 / (2^0+2^1+2^2·····+2^7)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM