有八层灯塔,每层的灯数都是上一层的一倍,共有765 盏灯,编程求最上层与最下层的灯数。
#include <stdio.h>
int main()
{
int n = 1 , m , sum , i;
while (1)
{
m = n;
sum = 0;
for (i = 1; i < 8; i++)
{
m = m * 2;
sum += m;
}
sum += n;
if (sum == 765)
{
printf("第一层有 %d 个灯\n", n);
printf("第八层有 %d 个灯\n", m);
break;
}
n++;
}
return 0;
}