PASSCAL简单编程

来源:百度知道 编辑:UC知道 时间:2024/05/26 01:42:23
阿源今年n岁了,他的生日正好是3月12日植树节。今年植树节老师带同学们到公园里去植树。阿源很高兴,一个人就栽了3棵树,过了一个很有意义的生日。他想,如果从明年开始每年过生日都去植树,并且每一年都比前一年多栽一棵树,这样下去,到多少岁时才能累计种到或超过100棵树呢?
输入
17 年龄
输出
28 100棵树时阿源的年龄

###20分钟之内

//这是常规的算法
function(StartTime :integer;AllNum :integer=100):integer;
const
StartNum = 3;
var
loopi :integer;
NowNum :integer;
begin
NowNum := 0;
loopi :=0;
while NowNum <AllNum do
begin
//这里计算递增的树

NowNum =NowNum + StartNum +loopi;

inc(loopi);
end;
result := loopi + StartTime ;
end;

//第二种,要想一下算法,推荐这种
其实不管好久开始,都是 3的递增数列,如 3,4,5,6。。。。。
得到他们的和为 到或超过100 就可以了,其中中间隔的数就是需要的年,
怀疑题目有问题~~~不然就是开始年龄 加上 11 就得到 现在的年龄了