![]() |
羅德興老師的教學歷程檔案 - 113-2 程式語言二(2025) - 單元六 (sorting) |
|
|
單元六 (sorting)# -*- coding: utf-8 -*- """ sort0.ipynb 這支程式 由 學號 xxxx000 羅老師 所撰寫 on 2025/05/04 功能:從 Google 雲端硬碟中 myfile 資料夾讀取 myfile9.txt, (假設內容為:5, 17, 9, 10, 2, 6) 進行氣泡排序後,寫出 test9.csv 到相同資料夾中 """ from google.colab import drive import numpy as np import csv import os # 掛載 Google 雲端硬碟 drive.mount('/content/drive') # 設定 myfile 資料夾的路徑 base_dir = '/content/drive/MyDrive/myfile' # 設定輸入與輸出檔案的完整路徑 input_path = os.path.join(base_dir, 'myfile9.txt') output_path = os.path.join(base_dir, 'test9.csv') # 讀取檔案 with open(input_path, 'r') as file: line = file.readline().strip() elements = line.split(',') # 去除空白並轉為 numpy 陣列 elements = [e.strip() for e in elements] a = np.array(elements) # 排序函式 def bubble_sort(b, n): print("排序中...") for i in range(n - 1): for j in range(n - i - 1): print(f"第 {i} 輪 第 {j} 次 比較\t", end=" ") if int(b[j]) > int(b[j + 1]): b[j], b[j + 1] = b[j + 1], b[j] print_array(b) # 印出陣列 def print_array(arr): print(' '.join(arr)) print("原始陣列:") print_array(a) bubble_sort(a, len(a)) print("排序後的陣列:") print_array(a) # 將排序結果寫入 CSV with open(output_path, 'w', newline='') as csvfile: writer = csv.writer(csvfile) writer.writerow(a) print(f"排序結果已寫入:{output_path}")
|
|
中華科技大學數位化學習歷程 - 意見反應 | ![]() |