C語言程式例題(四)
阿新 • • 發佈:2019-02-03
1.問題描述
公雞5文錢一隻,母雞3文錢一隻,小雞3只一文錢,用100文錢買一百隻雞,其中公雞,母雞,小雞都必須要有,問公雞,母雞,小雞要買多少隻剛好湊足100文錢。
2.問題分析
首先我們可以確定公雞、母雞、小雞的數目肯定為整數,由題目描述可以得出兩個等式:小雞數目+母雞數目+公雞數目=100;公雞價格公雞數目+母雞價格母雞數目+3只小雞價格*小雞數目/3=100。在這裡隱含了2個條件:(1)公雞、母雞、小雞的數目均為整數。(2)小雞的數目為3的倍數
3.程式
#include <stdio.h>
int main()
{
int cock;
int hen;
int chick;
for(cock = 0; cock <= 20; cock++)
{
for(hen = 0; hen <=33; hen++)
{
for(chick = 0; chick <= 100; chick++)
{
if((cock + hen + chick == 100) && (5 * cock + 3 * hen + chick / 3.0 == 100))
{
printf("the number of cock ,hen ,chick is:%d ,%d,%d\n",cock,hen,chick);
}
}
}
}
return 0;
}
4.執行結果:
5.演算法改進
此程式可以只用2個迴圈,最後一個迴圈可以用判斷條件來代替,這樣可以提高執行效率。