【简单数学小问题6】读书问题
本帖最后由 无理想的闲鱼 于 2022-11-11 12:26 编辑题目:小明读书,第一天读了全书的一半加2页,第二天读了剩下的一半加2页,以后天天如此,已知第五天他看完书后还剩3页没读,问全书一共有几页?
如果你有更优的解法或者建议,欢迎评论!我会看实际情况给你评分{:10_329:}
先动手做做看,真的不会再看答案
提示:全书一共有220页
注意,这个答案不能在代码中使用,只能用作判断代码是否正确
**** Hidden Message *****
问一下,我这个图片怎么设置隐藏呀? 一半加两页 那这本书怎么会多出来四页 空白君学python 发表于 2022-11-8 01:10
一半加两页 那这本书怎么会多出来四页
抱歉,我没看懂你的意思,
题目是第五天看完书,还剩三页 本帖最后由 zhangjinxuan 于 2022-11-8 07:14 编辑
看看答案 无理想的闲鱼 发表于 2022-11-8 06:42
抱歉,我没看懂你的意思,
题目是第五天看完书,还剩三页
没事了 我理解错了 先看答案,答案是多少?
220 没问题
我用C写的,因为你没说编程语言,看了答案之后才知道是python
另外提个建议,建议发题目的同时把代码执行的结果贴出来
例如这个题目,如果有下面这一句,我感觉会更好
提示:全书一共有220页
如果有必要的话,再加上一句?
注意,这个答案不能在代码中使用,只能用作判断代码是否正确
因为我写完了代码,执行得到的结果不知道对不对,^_^
sh-5.1$ cat main.c
#include <stdio.h>
size_t book(size_t day) {
if(day == 5) return 3;
return (book(day + 1) + 2) * 2;
}
int main(void) {
printf("%zu\n", book(0));
return 0;
}
sh-5.1$ gcc -g -Wall -o main main.c
sh-5.1$ ./main
220
sh-5.1$
来个python版本的,^_^
>>> def book(day): return 3 if day == 5 else (book(day + 1) + 2) * 2
...
>>> book(0)
220
>>>
看看答案 用递归{:10_256:}{:10_256:} 只想领个币 我是来学习的 领个币 {:10_256:} 先解密隐藏内容·· {:10_256:} c++超级简单的解法:
#include<bits/stdc++.h>
using namespace std;
int dg(int n){
return n==5?3:(dg(n+1)-2)*2;
}
int main(){
cout<<dg(1);
return 0;
}
看一下
页:
[1]