1.枚舉算法的核心思想:算法
將全部問題的可能性一一列舉。
2.枚舉算法的應用:spa
《百錢找百雞》
問題:
公雞每隻5元,母雞每隻3元,小雞3只1元。用100元買100只雞code
問公雞,母雞,小雞各多少?
3.解決問題的核心思想:對象
以3種雞的個數爲枚舉對象(gj,mj,xj)
4.枚舉條件:
gj+mj+xj=100;[個數之和]圖片
gj5+mj3+xj/3=100;[用錢之和]get
xj%3==0;[小雞個數必定能夠取餘3,由於xj個數和購買花的錢必須爲整數]it
5.代碼實現:class
int main() { //過程:分別枚舉公雞,母雞的個數範圍知足條件進行輸出。 int x, y, z;//分別表示公雞,母雞和小雞的個數 for (x = 0; x <= 20; x++)//公雞個數範圍:0-20只,用100元除以每隻公雞的錢 { for (y = 0; y <= 33; y++)//母雞個數範圍:0-33只,用100元除以每隻母雞的錢 { z = 100 - x - y;//z表示小雞的個數 if (z % 3 == 0 && x * 5 + y * 3 + z / 3 == 100) printf("公雞:%d,母雞:%d,小雞:%d\n", x, y, z); } } getch(); return 0; }
6.代碼實現效果圖:
im