买卖提将养的一缸金鱼分五次出售!递归算法及程序!

题目:

买卖提将养的一缸金鱼分五次出售系统上一次卖出全部的一半加二分之一条;第二次卖出余下的三分之一加三分之一条;第三次卖出余下的四分之一加四分之一条;第四次卖出余下的五分之一加五分之一条;最后卖出余下的11条。问原来的鱼缸中共有几条金鱼?

#include<stdio.h>

float fish(float n)//卖鱼的次数;
{
if(n==5) return (11);
else return ((n+1)/n)*(fish(n+1)+1/(n+1));

}

void main()
{
float n;
n=fish(1);
printf(“%f”,n);
}
由此: f(n)=f(n-1)-[f(n-1)/n+1/n]=>

      f(n-1)=[n/(1-n)]*[f(n)+1/n]=>

      f(n)=[(n+1/n]*[f(n)+1/(n+1)]

利用最后一个公式进行递归,当n==5表示买到第五次的时候,f(5)==11;

    原文作者:递归算法
    原文地址: https://blog.csdn.net/leonliu7558168/article/details/5623701
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞