有八层灯塔,每层的灯数都是上一层的一倍,共有765 盏灯,编程求最上层与最下层的灯数。

#include int main() {     int m = 1,n, f;/*第一层有m个   对应第i层层有f个  共n个*/     while (

#include
int main()
{
    int m = 1,n, f;/*第一层有m个   对应第i层层有f个  共n个*/
    while (1)
    {
        n = m;//初始时共有第一层个数
        f = m;//初始时底层就是第一层
        for (int i = 1; i <= 7; i++)
        {
            f = 2 * f;//每一层是上一层的2倍
            n = n + f;
        }
        if (n == 765)
        {
            printf("第一层有%d,最后一层有%d", m, f);
            break;
        }
        else
            m++;
    }
}