第九周项目6-穷举法之年龄几何
生活随笔
收集整理的這篇文章主要介紹了
第九周项目6-穷举法之年龄几何
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
張三、李四、王五、劉六的年齡成一等差數列,他們四人的年齡相加是26,相乘是880,求以他們的年齡為前4項的等差數列的前20項。
構建代碼:
/**Copyright (c) 2014,煙臺大學計算機學院*All gight reserved.*文件名稱:temp.cpp*作者:邵帥*完成時間:2014年10月25日*版本號:v1.0**問題描述:求等差數列*輸入描述:無*程序輸出;輸出20項的等差數列 */ #include<iostream> using namespace std; int main() {int a,n,i;//n為最小的年齡,a為項差,i為記錄循環的次數for (n=1; n>=1 && n<=6; n++){for (a=1; a>=1 && a<=4; a++){if (4*n+6*a==26 && n*(n+a)*(n+a+a)*(n+a+a+a)==880){for (i=1; i<=20; i++,n=n+a)cout<<n<<" ";}}}return 0; }運行結果:
思路:設數列的首項為n(1<=n<=6),項差為a(1<=a<=4),前4項之和=4*n+6*a,前4項之積=n*(n+a)*(n+a+a)*(n+a+a+a),當進行窮舉出現符合兩式時跳出循環。
@ Mayuko
轉載于:https://www.cnblogs.com/mayuko/p/4567653.html
總結
以上是生活随笔為你收集整理的第九周项目6-穷举法之年龄几何的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [汇编] 002基础知识-CPU和寄存器
- 下一篇: Maven的学习资料收集--(九) 构建