[問題] 二維陣列(done) 稅前1000P

作者: lovesaber (幻想神)   2022-06-24 17:47:18
開發平台(Platform): (Ex: Win10, Linux, ...)
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
C++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
none
問題(Question):
一個19*19的二維陣列 左上座標0,0 右下座標18,18
用前置處理器定義 ROW, COL, LENGTH,當成二維陣列與一維陣列宣告大小使用
陣列名稱為一個英文字母+6個數字
用亂數1到400將陣列整個填滿
再將所有元素印出來 每個數據用一個逗號及空白隔開
將這個二維陣列用指標取值(例如*(ptr+i))的方法
倒入一維陣列A_1D[LENGTH],列印出
A_1D[a](where a=24*10 + 末碼)
並列印出相對應的二維陣列值A123456[x][y],驗證
它們是相等的, ex A_1D[12] = A123456[0][12]
再將一維陣列A1D[LENGTH]做泡沫排序,陣列名稱單號由大至小,雙號由小至大
把它列印出來
餵入的資料(Input):
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔)
https://i.imgur.com/Xc0TVQa.png
https://i.imgur.com/9P9h8HJ.png
補充說明(Supplement):
亂數填入+列印那邊就卡住不會做了
更不用提泡沫排序
有大神可以解決嗎?
作者: qscgy4 (有點厲害)   2022-06-24 18:04:00
直接宣告一維陣列當二維幹不好嗎?
作者: LPH66 (-6.2598534e+18f)   2022-06-24 19:07:00
學程式最重要的一個技巧叫做「分而治之」把大問題破開成為小問題, 再逐一解決各個小問題你把你不會的大問題給分解, 做這個大問題應該要什麼步驟再去思考你破開的這些步驟哪些你會做, 不會的繼續用同一招再破開, 依此類推你現在有的問題都還是很大的大問題 (對, 題目描述都還很大)破開的步驟甚至可以是如果要你自己來做的話會怎麼做的步驟(你自己都不知道怎麼做的事要怎麼教電腦?)
作者: wulouise (在線上!=在電腦前)   2022-06-25 08:04:00
感覺題目沒寫完 或是不完整...到底要給幾個矩陣矩陣可以直接宣告二維 拿的時候其實也可以用一維的拿法亂數你就查一下rand跟<random> header怎麼用bubble sort沒什麼好說 會google找得到很多範例列印我建議你看看C++{fmt}很方便
作者: gusion   2022-06-25 09:00:00
看起來是一個二維陣列和一個一維陣列,然後在二維陣列隨機填入1~400的值(不知是否可重複)之後將二維陣列內容每一列接在一起複製到一維陣列,然後檢查內容是否符合預期最後根據變數名稱決定對一維陣列泡沫排序大到小或小到大,然後印出結果最後依據變數名稱的要求有點怪,runtime應該是無法知道變數名稱的
作者: LPH66 (-6.2598534e+18f)   2022-06-25 11:44:00
這種題目描述就是典型的程式學習書籍裡教了一些東西之後出一個包大全的所謂「綜合應用題」要你全部使用一遍那所以新手看到哇這麼大一個問題就手足無措了不是說不好, 但如果能在教的時候把分析問題這件事多強調點(這一點我是很少看到有書會做的就是了...)新手的學習曲線就會更好一點
作者: newking761 (J三小)   2022-06-27 21:42:00
如果不會拆問題,那不要玩C++…..

Links booklink

Contact Us: admin [ a t ] ucptt.com