看板 Python 關於我們 聯絡資訊
最近想學習 python 找到了中央大學數學系網路上提供的教材。 目前練習到第二章,只教到了 for if else 這些,沒有陣列, 但第二章第一個練習題就卡關了。 http://www.python.math.ncu.edu.tw/exercise/chapter/2 題目:找出三位數的數字和為 10 且數字都不同的所有三位數, 例如:325、910,驗證共有 40 個數。 我只能讓他知道哪些數字加起來是 10,但無法去除重複的, 沒有陣列我要怎麼記住哪些數字有重複到阿?? 話說大家都會把所有練習題給完成嗎?第一章我做了 10 題就受不了了, 都是在要你想辦法畫圖,整個令人很不耐煩,還是說這是數學系的關係? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.35.210.216 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1590057130.A.075.html ※ 編輯: s9209122222 (114.35.210.216 臺灣), 05/21/2020 18:35:54
s9209122222: 有比這個更好用的中文免費教材嗎? 05/21 18:36
cuteSquirrel: 提供給原PO參考: 05/21 18:57
cuteSquirrel: https://www.onlinegdb.com/S1ovARXsI 05/21 18:57
cuteSquirrel: 中文有一個youtube頻道 彭彭python簡介 入門滿適合 05/21 18:58
cuteSquirrel: 英文的話 MIT 和 Michigan 大學都有網路公開課 05/21 18:59
s9209122222: 感謝,那麼這題呢?解不出心裡有個疙瘩在 05/21 19:00
cuteSquirrel: 在上面連結裡,你可以run看看 05/21 19:00
s9209122222: 喔,你貼了,感謝 05/21 19:00
s9209122222: 晚點用電腦看看,手機看不到全畫面 05/21 19:01
s9209122222: 話說練習十題才發現有 pycharm 可以用,之前一直從 t 05/21 19:03
s9209122222: erminal 慢慢執行…… 05/21 19:03
ssdoz2sk: 因為全部都是三位數數字,所以你可以拿3個變數來代表各 05/21 19:31
ssdoz2sk: 個位數的數字,再去做判斷 05/21 19:31
cuteSquirrel: :) 05/21 19:31
aidansky0989: 用kaggle的python教程先過個水,6個小單元 05/21 19:31
cuteSquirrel: 畫圖的適量就好。刁鑽的複雜圖型不是很重要。 05/21 19:36
cuteSquirrel: 幫補kaggle 連結: 05/21 19:38
cuteSquirrel: https://www.kaggle.com/learn/python 05/21 19:38
cuteSquirrel: 像是後有有一題畫大象那個就可略過 05/21 19:50
s9209122222: 這範例有點太進階了啦! 05/21 20:20
s9209122222: 而且好像也有用到陣列,但他那個練習題都還沒提到 05/21 20:22
nevak: 這題不見得要用陣列吧,最簡單的做法就100-999窮舉,把合 05/21 21:18
nevak: 格的印出來,順便加總一下個數最後引出來就好,合格的判定 05/21 21:18
nevak: 應該也只需要除法跟if/else就夠了 05/21 21:18
nevak: 喜歡loop的人也可以三層loop直接把答案都轉出來 05/21 21:19
WestMelon: 最簡單就是跑三個迴圈?判斷三數不相等時相加是否等於1 05/21 21:20
WestMelon: 0 05/21 21:20
yiche: https://onlinegdb.com/HkNfvbNsI 原po參考看看^^ 05/21 21:53
yiche: 不會覺得不耐煩啊 不要小看畫這些莫名的圖形,程式邏輯都在 05/21 22:08
yiche: 裡頭,加油! 05/21 22:08
forkind: 加油,參考解法 https://onlinegdb.com/HyrO0ZEsI 05/21 22:25
s9209122222: 不是 26 樓說的這麼簡單啊,還有三個數不能重複的條 05/21 23:33
s9209122222: 件 05/21 23:33
s9209122222: 28 樓的最看得懂,不過還是有用到陣列的東西,python 05/21 23:57
s9209122222: 好像叫串列? 05/21 23:57
s9209122222: 不過看了一下應該可以用減的得到我要的數字,但 if 05/21 23:59
s9209122222: 內會變很長…… 05/21 23:59
s9209122222: 等等,結果不對呀,有109又有901 05/22 00:00
s9209122222: 還有 910 05/22 00:00
OrzOGC: 這個時候就該去睡覺,明天你就會覺得昨天的我是中邪了嗎? 05/22 00:01
s9209122222: 31 樓的沒東西 05/22 00:04
s9209122222: 二樓的其實也是同結果 05/22 00:05
s9209122222: 還是我會錯意? 05/22 00:05
s9209122222: 看來只要每次三個數字不一樣就好,不用完全不和前面 05/22 00:07
s9209122222: 幾次重複 05/22 00:07
s9209122222: 又要上 12 小時的班了,吃東西睡覺去 05/22 00:08
cuteSquirrel: 每次3個數字不同就好。不用和之前和之後的比較。 05/22 00:09
cuteSquirrel: 原本的題目最後說 "驗證總共有40個數" 05/22 00:11
s9209122222: 原來這麼簡單……,我複雜化題目 05/22 00:12
yi24: 有其他人去寫這題嗎? 為什麼我跑出來的結果是 44 個數? 05/23 10:52
yi24: 我的判斷條件有誤,是 40 個沒錯 05/23 11:15
pmove: 我算40 05/23 12:16
wahahahaaa: 我用hard code寫法 三個迴圈 40個沒錯 05/23 16:59
wahahahaaa: 請教一下f大的解法 我按run怎麼沒有output@@ 05/23 17:04
cuteSquirrel: 按fork this,補一行 print( result ) 就會有了 05/23 17:06
wahahahaaa: 感謝樓上回答 05/23 22:59
cuteSquirrel: : ) 05/23 23:01
s0914714: https://www.onlinegdb.com/r18ZvfDsU 用set偷懶 05/24 05:35
s9209122222: 那不是陣列嗎?那個陣列符號? 05/24 12:59
s9209122222: 話說我照做會失敗,這是我自己做出來的方法 05/24 13:00
s9209122222: https://onlinegdb.com/B14XyYwsI 05/24 13:00
cuteSquirrel: 恭喜 05/24 13:25
cuteSquirrel: 那個是 list comprehension, python實用語法之一 05/24 13:25
cuteSquirrel: comprehension 介紹: https://bit.ly/2LWE9rL 05/24 13:26
s0914714: 沒錯 那是comprehension語法 可以讓程式簡潔一點 05/24 14:27
cocoasheep: 這題的目的是練習用巢狀迴圈 所以用前面大大說的三層 05/30 08:29
cocoasheep: 迴圈就可以解決了 三層分別是百位數、十位數、個位數 05/30 08:29
velaro: 直接轉成set 就能去除重複吧? 05/31 15:09
ro9956882: 不重複反而簡單 i=0~9 , j=i+1~9, k=j+1~9 05/31 21:06
salmon12706: 工研院人工智慧課程推薦https://reurl.cc/4RDRaK 06/29 16:30