奧數之「牛吃草問題」C++實現

導讀 最近在給小朋友補奧數課,順便看了幾道題目其中能夠用「計算機算法」表示出來的。以爲寫出來會比較集中,但願對你們有幫助。其實生活中編程到處都有,關鍵在於本身是否有一顆觀察的心,下面讓咱們一塊兒來看看吧~

問題以下:html

有一個牧場,牧場上的牧草天天都在勻速生長,這片牧場可供15頭牛吃20天,或供20頭牛吃10天,那麼,這片牧場天天新生的草量可供幾頭牛吃一天?linux

數學解題思路以下:算法

假設一頭牛天天吃草一份,那麼15頭牛20天吃草爲:15 X 20 = 300份。20頭牛10天吃草爲:20 X 10 = 200份。編程

前者是在原有草的基礎上,加上20天新草。後者是在原有草的基礎上,加上10天新草。htm

300-200=100份,20-10=10天。blog

說明10天長草100份,那麼天天長草10份,夠10頭牛吃一天。ci

答案是這片牧場天天新生的草量可供10頭牛吃一天.get

再繼續想:10頭牛天天專吃新長出來的草,那剩餘的牛吃原有草,咱們能夠獲得:數學

原有草:(15-10)X  20 = 100份 或者 (20-10)X 10 = 100份table

把數學問題轉換爲代碼實現,是一種有意思的事情。因爲小朋友是剛接觸一些簡單的C++代碼,因此,我寫的最簡單的版本。

下面使用C++語言編程實現該題目:

int main()
{
    int m1,n1,m2,n2;//mi爲牛的數量,ni爲mi對應的吃草天數。 
    cin>>m1>>n1>>m2>>n2;
    int x=(m1*n1-m2*n2)/(n1-n2);
    cout< <x<<endl;
    return 0;
}

若是須要轉載,請註明出處:http://www.cnblogs.com/wongyi/

原文來自:http://www.linuxprobe.com/c-cattle-grass.html

相關文章
相關標籤/搜索