วันจันทร์ที่ 19 กันยายน พ.ศ. 2554

การรับข้อมูลเข้า (Read, ReadLn Statement)

การรับข้อมูลเข้า (Read, ReadLn Statement)

หลักการรับข้อมูล

                เพื่อให้โปรแกรมใช้งานได้อย่างกว้างขวางและสะดวกในโปรแกรมส่วนใหญ่จึงไม่กำหนดค่าของ ตัวแปรไว้ในโปรแกรม แต่จะใช้วิธีการรับค่าเข้าไปตอนโปรแกรมทำงาน
                คอมพิวเตอร์จะรับข้อมูลเข้ามาในหน่วยความจำโดยผ่านทางอุปกรณ์อินพุต (Input devices) เช่น คีย์บอร์ด (keyboard) ดิสก์ไดร์ฟ (disk drive) เมาส์ (mouse) ซึ่งปาสคาลจะรับข้อมูลด้วยคำสั่ง Read และ ReadLn (Read-Line)

รูปแบบของ Read และ ReadLn


Read(INPUT, Var1, Var2,…..,VarN)

ReadLn(INPUT, Var1, Var2,…..,VarN)

                คำสั่ง Read และ ReadLn มีรูปแบบดังนี้

                จากรูปแบบข้างต้นมีความหมายดังต่อไปนี้
1.              Input หมายถึง ตัวแปรที่เป็นชื่ออุปกรณ์อินพุตของคอมพิวเตอร์ ซึ่งอาจจะเป็นคีย์บอร์ด ดิสก์ เมาส์ หรืออื่น ๆ ถ้าส่วนนี้ไม่ระบุตัวแปรเอาไว้ แสดงว่าว่างให้รับข้อมูลจากคีย์บอร์ด
2.              Var1,…VarN คือตัวแปรสำหรับเก็บข้อมูลแต่ละรายการที่รับเข้ามา ตั้งแต่รายการที่ 1 ถึงรายการที่ N แต่ละรายการจะคั่นด้วยเครื่องหมาย , เวลาป้อนข้อมูลจะต้องคั่นแต่ละรายการด้วยเครื่องหมายวรรค หรือกดคีย์ Enter ข้อมูลที่รับเข้ามาจะถูกนำไปเก็บในตัวแปรแต่ละตัวเรียงตามลำดับจากซ้ายไปขวา
3.              ตัวแปรแต่ละตัวจะรับข้อมูลได้เฉพาะที่เป็นชนิดเดียวกันถ้าป้อนข้อมูลผิดชนิดเช่น
Var         Year  : integer;
ถ้าเราป้อนข้อมูลเป็น 12.50 จะเกิดความผิดพลาดประเภท Run time Error ขึ้นซึ่งจะมีผลให้โปรแกรมหยุดการทำงานทันที
                4.    สำหรับจอภาพ ReadLn เมื่อรับข้อมูลครบตามจำนวนตัวแปรที่มีใน (  ) แล้วเคอร์เซอร์จะเลื่อนลงมาอยู่ที่ที่คอลัมน์ที่ 1 ของแถวล่างที่อยู่ถัดลงมา ส่วน Read เคอร์เซอร์จะอยู่ตอนท้ายของแถวเดิม
ตัวอย่างที่ 1   คำสั่ง Read(Name,Age)
ป้อนข้อมูล Bamrung 50 กดคีย์ Enter
แสดงที่จอ Bamrung 50  o  (ตำแหน่งเคอร์เซอร์)
ตัวอย่างที่ 2 คำสั่ง ReadLn(Name,Age)
               ป้อนข้อมูล Bamrung 50 กดคีย์ Enter
               แสดงที่จอ Bamrung 50   
o (ตำแหน่งเคอร์เซอร์)
5.  สำหรับ ReadLn ที่ไม่มี (  ) ต่อท้าย หมายถึงการหยุดรอรับการกดคีย์ Enter เมื่อคีย์ Enter ถูกกด โปรแกรมจะทำตามคำสั่งที่อยู่ต่อมา
ตัวอย่าง     คำสั่ง Write ('Press Enter'); ReadLn;
               แสดงที่จอ Press Enter o
               กดคีย์ Enter
               แสดงที่จอ   o (ตำแหน่งเคอร์เซอร์)
คำสั่งตามตัวอย่างนี้    นิยมใช้ในกรณีที่ต้องการให้โปรแกรมหยุดการทำงานชั่วคราว และเมื่อกดแป้น Enter โปรแกรมจะทำงานต่อไป






ตัวอย่างคำสั่ง Read และ ReadLn


     Program HiName;
     Var
                     Name : String[50];
     Begin
                        Write('Input your Name ');
                        ReadLn(Name);
                        WriteLn('Hi',Name');
     End.

ตัวอย่าง โปรแกรม แสดงการรับข้อมูลสตริงที่เป็นชื่อคน  เมื่อป้อนข้อมูลแล้วคอมพิวเตอร์จะแสดงข้อความ Hi (ชื่อ)
โปรแกรมแสดงผลดังนี้
Input your Name
                พิมพ์ชื่อ CHAIYA  กดคีย์ Enter
                ที่หน่วยความจำ Name มีข้อมูลดังนี้     Name
                                                                                            CHAIYA 
ที่จอภาพจะเป็นดังนี้
                Hi CHAIYA

ไม่มีความคิดเห็น:

แสดงความคิดเห็น