การเขียนโปรแกรมในบทความนี้จะนำเสนอ การสร้างฟังก์ชันสำหรับโหลดไฟล์ input เพื่อสร้างเมตริกซ์ ซึ่งจะนำความรู้เกี่ยวกับการเขียนโปรแกรมการอ่านไฟล์ชนิด text file ที่ได้กล่าวถึงไปแล้วมาประยุกต์กับการสร้าง Dynamics Array แบบ 2 มิติ เพื่อสร้างเมตริกซ์ไว้สำหรับใช้งานต่างๆต่อไป ลักษณะการติดต่อกับผู้ใช้จะเป็นการอ่านข้อมูลจาก text file ซึ่งเราได้กำหนดรูปแบบของการบันทึกข้อมูลไว้เรียบร้อยแล้วนั่นเอง โดยเราจะเรียก text file นั้นว่า input file สมมุติให้นามสกุลไฟล์เป็น .txt โดยเราสามารถใช้โปรแกรม Notepad สำหรับการบันทึกข้อมูล เรามากำหนดรูปแบบของ input file กันก่อนครับ
ในบรรทัดแรก จะเป็นการบันทึกจำนวนแถวและหลักของเมตริกซ์ในบรรทัดถัดไปจะเป็นสมาชิกในเมตริกซ์ในตำแหน่งต่างๆ ดัง ตย
3,4
1, 3, 5, 6,
3, 4, 5, 7,
5, 6, 7, 8,
การทำงานของโปรแกรมจะเริ่มจาก
1. รับตำแหน่งและชื่อ input file ที่จะเข้าไปอ่าน
2. อ่านข้อมูลขนาดของเมตริกซ์ แถวxหลัก
3. สร้าง Dynamic Array ตามขนาดของเมตริกซ์
4. อ่านข้อมูล Aij จาก input file ครั้งละ 1 ตัว จนหมด
5. พิมพ์เมตริกซ์ที่อ่านได้จาก input file บนหน้าจอ
ฟังก์ชันอ่านข้อมูลจาก input file มีรูปแบบดังนี้
ReadInput(จำนวนแถว , จำนวนหลัก ,input file name) โดยจะคืนค่าเป็น Dynamics Array แบบ 2 มิติ
ฟังก์ชั่น printMatrix
เรามาดู main Program สำหรับเรียกใช้ฟังก์ชันทั้งสองกันครับ
เมื่อคอมไพล์โปรแกรมนี้จะปรากฎหน้าต่างโปรแกรม
ในบรรทัด Enter path of input file : ให้ท่าน input ชื่อ input file ที่ต้องการอ่านลงไป ตัวอย่างเช่น c:\\aa.txt แล้ว Enter หากไฟล์นั้นมีอยู่จริงและมีข้อมูลที่ถูกต้องโปรแกรมจะแสดงขนาดของเมริกซ์และสมาชิกของเมตริกซ์ให้ทราบดังแสดงในภาพ
ภาพหลังการอ่านข้อมูลจาก text file
จากตัวอย่างการอ่านข้อมูลจาก text file ดังกล่าว หากเราต้องการดำเนินการระหว่างเมตริกซ์เช่น การบวก ลบ การคูณ การ transpose และให้บันทึกผลการดำเนินการลง text file เพื่อนำไปใช้งานต่อก็สามารถทำได้โดยง่ายแล้ว เดี๋ยวมาเขียนโปรแกรมกันต่อในบทความต่อไปครับ
No comments :
Post a Comment