![]() |
C++一問
找出□□*□=□□□=□*□□之值,其中□為1~9之值
老師告訴我要用9個FOR迴圈... 有大大能幫幫忙嗎 感激:( |
|
是要設計
□□*□=□□□ 和 □□□=□*□□ 的"所有可能組合" 之顯示功能嗎? 9個FOR迴圈 好耐人尋味的說法 ^^ □□ 有 11~99 之範圍值,但要跳過 10、20、30、40、50、60、70、80、90 □ 有 1~9 之範圍值 □□□ 有 111~999 之範圍值,但要跳過 110、120... 要避免 □ 出現 0 應該是設計重點 個位數 □ 判斷還算簡單 但 □□ 或 □□□ 的判斷避免出現 0,就有點技巧了 如果是我由於不在行數學 我會將 □ 轉換成 字元串(也就是字串) 這樣找 '0' 字元就簡單多了 只要答案不出現 '0' 就 Print 出來 □□*□=□□□ 用了兩個 FOR迴圈 □□□=□*□□ 也用了兩個 FOR迴圈 ****所以得到結論不行用以上方法 ^^||**** 應該是 設計一基本 1~9 的FOR迴圈 兩位數的話(□□) 就用 (一個1~9 的FOR迴圈) + (1~9 的FOR迴圈 x 10) 來達成 11~99 不出現(10、20、30、40、50、60、70、80、90)之要求 三位數的話(□□□) 就用 (一個1~9 的FOR迴圈) + (1~9 的FOR迴圈 x 10) + (1~9 的FOR迴圈 x 100) 來達成 所以 □□*□=□□□ 用了三個 FOR迴圈 □□□ / □ = □□ 加 □□□ / □□ = □ 用了六個 FOR迴圈 P.S. □□□ 基本用了 三個,而□□□的組合又分別除以 □ 多了一個,除以 □□ 多了 兩個,所以總共六個 FOR迴圈 程式就要你自己寫了 ^^|| 說真的我也不知道正不正確 |
謝謝2位
我再TRY TRY 看囉 到時再分享解答 |
其實...若要真的用9個FOR
就像上面大大說的 由00*0=000=0*01 一直到 99*9=999=9*99 當然應該沒跑這麼多 然後....再利用CHAR轉INT 來做運算 像上面大大說的 拆成兩個式子00*0=000 000=0*00 如果條件成立就用個陣列記錄下來 最後 比對陣列的9個數子 是否都不相同 就可找出0-9符合的運算式了 這是個人淺見,參考用 如有不對...請糾正之! |
還是多謝大大^^
班上沒人寫出來... 看老師有怎樣精闢的解答囉 |
引用:
不過最近期末考要到了 除非你願意等一等 而且題意請在說明清楚一點 |
是你先算 x * xx = xxx
在列出 xxx = x * xx 的可能值嗎?? 還是由使用者 輸入 xxx 然後列出 xxx = x * xx 的值嗎?? 要哪一種啊, 是都沒差就是了 不過一定要用 9 個 loop 嗎?? |
所有時間均為台北時間。現在的時間是 04:12 PM。 |
Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.
『服務條款』
* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *