1.乙個人趕著鴨子去每個村莊賣,每經過乙個村子賣去所趕鴨子的一半又乙隻。
這樣他經過了七個村子後還剩兩隻鴨子,問他出發時共趕多少只鴨子?
經過每個村子賣出多少只鴨子?
public class demo1
public static int judge()
public static int judge1(int shengyu,int i) else
int x1=((x+1)*2)-x;
system.out.println("第"+i+"個村子賣了"+x1+"只鴨子");
return x;
}}
2.角谷定理。輸入乙個自然數,若為偶數,則把它除以2,若為奇數,則把它乘以3加1。經過如此有限次運算後,總可以得到自然數值1。求經過多少次可得到自然數1。
public class demo2
public static void judge(int i) else
step++;
system.out.print(i+"\t");
if(i==1) }}
}
3.**號碼對應的字元組合:在**或者手機上,乙個數字如2對應著字母abc,7對應著pqrs。那麼數字串27所對應的字元的可能組合就有3*4=12種(如ap,br等)。現在輸入乙個3到11位長的**號碼,請列印出這個**號碼所對應的字元的所有可能組合和組合數。
public class demo3
public static void judge(string s)
}
4.日本著名數學遊戲專家中村義作教授提出這樣乙個問題:父親將2520個桔子分給六個兒子。分完 後父親說:「老大將分給你的桔子的1/8給老二;老二拿到後連同原先的桔子分1/7給老三;老三拿到後連同原先的桔子分1/6給老四;老四拿到後連同原先的桔子分1/5給老五;老五拿到後連同原先的桔子分1/4給老六;老六拿到後連同原先的桔子分1/3給老大」。結果大家手中的桔子正好一樣多。問六兄弟原來手中各有多少桔子?
演算法分析:
總共2520個橘子,分完最後每人手上420個橘子,老六分完前為420/(2/3)=630個橘子
分給老大的就是6301/3=210個橘子,所以老大分給老二後手裡還剩420-210=210個橘子
所以老大手中原有210/(7/8)=240個橘子;
老二原來應該有420/(6/7)-30=460個橘子
老三原來應該有420/(5/6)-4901/7=504
所以每個人a[i]=420*(8-i)/(7-i),再減去給別人的a[i]=a[i]-a[i-1]/(9-i);剩下的就是自己的
public class demo4
public static void fenorange(int index)
for(i=5;i>0;i--)
a[0]=210*8/7;
for(i=5;i>0;i--)
int sum=0;
for(i=0;i<6;i++)
system.out.println(sum);
}}
遞迴演算法實現
遞迴演算法 1 乙個人趕著鴨子去每個村莊賣,每經過乙個村子賣去所趕鴨子的一半又乙隻。這樣他經過了七個村子後還剩兩隻鴨子,問他出發時共趕多少只鴨子?經過每個村子賣出多少只鴨子?題目分析 遞迴終止的條件是到第7個村莊時遞迴停止 演算法構造 定義遞迴函式f n 當 n 8時 剩餘2只鴨子,當 0時 總共趕...
遞迴演算法簡單題
最大公約數 題目內容 輸入兩個整數m,n,用遞迴演算法實現計算兩個數的最大公約數。輸入格式 輸入兩個整數m,n 輸出格式 最大公約數 輸入樣例 12,40 回車 輸出樣例 4 回車 時間限制 500ms記憶體限制 32000kb 理解最大公約數演算法!include int n intm void ...
遞迴演算法簡單應用
1.遞迴和非遞迴分別實現求第n個斐波那契數。斐波那契數 亦稱之為斐波那契數列 義大利語 successione di fibonacci 又稱 分割數列 費波那西數列 費波拿契數 費氏數列,指的是這樣乙個數列 1 1 2 3 5 8 13 21 在數學上,斐波那契數列以如下被以遞迴的方法定義 f0 ...