讨论/算法和数据结构/递归/
递归

题目简介
如上图,有一个半径为 r 的黑圆,里面有一个半径为 r/2 的白圆,此白圆里又有一个半径为
r/4 的黑圆,此黑圆里又有一个半径为 r/8 的白圆,如此重复下去,问黑色部分的面积为多少?
运行结果示例:
请输入最外层圆半径 r:2

image.png

希望前辈们可以在闲暇时间帮忙用递归算法解决一下。非常谢谢!
晚辈为初学者,望前辈们多多指教。非常谢谢!

结尾

为了让您的内容可以给大家带来最佳的阅读体验,我们推荐您遵循「中文文案排版指北」。

更多 Markdown 语法,请查看 官方文档

最后,感谢您抽空阅读本「力扣编辑器」使用说明,祝您创作愉快!

展开讨论
共 3 个讨论
public double getArea(double r){
        if(r==0){
            return 0;
        }
        return Math.PI*(r*r-(r/2)*(r/2))+getArea(r/4);
    }

可以粗略计算下

1

递归的话,利用-1的n次方变加减号
while(r>0)

sum=(-1)^n*3.14r^2【这里的具体实现没学过】
sum=sum+
r=r/2

这不是数学题吗,求极限~