Docstoc

Pascal Programming Language _________________

Document Sample
Pascal Programming Language _________________ Powered By Docstoc
					Pascal Programming Language
 โปรแกรมภาษาปาสคาล

          โดย
                 ิ
    อ.วิชาญ หงษ์บน
คุณล ักษณะของโปรแกรมภาษาปาสคาล

   เป็ นโปรแกรมประเภท
           ์
    เท็กซโหมด
        ้            ่
    มีทัง Version ทีรันบน
    ดอส และบน
    Windows
                 ่ ้
    โปรแกรมทีใชเรียน รัน
               ื่
    บน Dos ชอ Turbo
    Pascal 7.0
       เตรียมตัวก่อนบันทึก
 ก่อนบันทึก ควรสร ้าง Folder จัดเก็บข ้อมูล
     ี
  เสยก่อน
 คลิกขวา Start > Explorer

 คลิกเลือก Drive D:

 คลิกเมนู File > New > Folder

        ื่                 ี้
 พิมพ์ชอ Folder ... กรณีนให ้พิมพ์รหัส
                ึ
  ประจาตัวนักศกษา
      ้        ้
    ขันตอนการใชโปรแกรม
 คลิกเมนู Start > Dos Program > Turbo
  Pascal 7.0
                         ่
 กดปุ่ ม Alt + Enter เพือขยายหน ้าจอให ้
  เต็ม
         ่
      เริมต ้นสร ้างโปรแกรม
 คลิกเมนู File > New
                                      ี
 จะปรากฏหน ้าต่างโปรแกรมเป็ นหน ้าจอสฟ้า

                          ่       ื่
 คลิกเมนู File > Save เพือบันทึกชอ
  โปรแกรม
          การบันทึก (Save)
      ่   ่ ี่                     ื่
    เมืออยูทหน ้าจอบันทึก ให ้พิมพ์ชอไฟล์เป็ น
    ภาษาอังกฤษและกาหนดนามสกุลของไฟล์ด ้วย
                ้ ื่
    รูปแบบการตังชอไฟล์

                   ื่
        D:\432001\ชอไฟล์.pas เชน่
        D:\432001\Example01.pas
       ่     ื่
    เมือพิมพ์ชอไฟล์เสร็จแล ้วกดปุ่ ม Enter
    ั      ่
    สงเกตทีกลางหน ้าจอโปรแกรมจะปรากฏชอไฟล์    ื่
       ่ ั
    ทีบนทึกไว ้
                        ้
    ในการบันทึกข ้อมูลครังต่อไปให ้กดปุ่ ม F2
            ่     ้
    ปั ญหาทีเกิดขึนเสมอในการ
              บันทึก

           D:/432\Example 01

                   ่
  ไม่อ ้างถึงแหล่งทีเก็บข ้อมูล
 พิมพ์การอ ้างถึงแหล่งการเก็บข ้อมูลผิด

     ้ ่
 ใชเครืองหมายในการอ ้างถึงผิด

          ื่
 พิมพ์ชอไฟล์แบบเว ้นวรรค
                     ้
  โครงสร ้างโปรแกรมพืนฐาน
          ื่
Program ชอโปรแกรม ;                      หัวโปรแกรม
Uses Crt;                                     ้    ั่
                                     เรียกใชฟั งก์ชน
Begin                                 ่
                                 เริมต ้นโปรแกรม
  Clrscr;             เคลียร์ข ้อความบนจอภาพ
                                  ั่
                           คาสงโปรแกรมอืน ๆ      ่
  Readln;                        Break โปรแกรม
End.                                     จบโปรแกรม
ปิ ดท้ายโปรแกรมด้วยเซมิโคลอน



      Program exam01 ;
      Uses Crt;
      Begin
        Clrscr;

        Readln;
      End.
                 End ต ัวสุดท้ายต้องจบด้วยจุด
ตรวจสอบ (Compile) และดูผลงาน (Run)


   Compile (คอมไพล์) คือ การตรวจสอบ
        ั่            ้              ู
    คาสงของโปรแกรมทังหมดว่าพิมพ์ถกต ้อง
    ตามกฎเกณฑ์ของภาษาหรือไม่ ถ ้าไม่
    ถูกต ้องโปรแกรมจะแจ ้งข ้อผิดพลาดให ้
    ทราบ

   คลิกปุ่ ม Alt + C > เลือกเมนู Compile
             ิ
ตัวอย่างกรณีพมพ์โปรแกรมผิด
Program exam01
Uses Crt;                ลบ
                       ่
                   เครืองหมา
Begin               ย ; ออก
  Clscr;              แล้ว
                    compile


  Readln;           ลบต ัว r
                   ออกแล้ว
End.               Compile
การแสดงผลโปรแกรม (Run)
   หลังจาก Compile ผ่านเรียบร ้อยแล ้ว ให ้
    แสดงผลการทางานของโปรแกรม โดย

 กดปุ่ ม Art + R > เลือก Run
   ั
 สงเกตุผลงาน

                   ่
 กดปุ่ ม Enter เพือกลับเข ้าหน ้าจอโปรแกรม
               ้ ื่
        กฎการตังชอไฟล์
   ้
  ขึนต ้นด ้วยพยัญชนะ
            ้ ั        ิ         ่
 ห ้ามใชสญลักษณ์พเศษ เชน + - * # @

                  ่        ื่      ่
 ห ้ามเว ้นชองว่างระหว่างชอ เชน exam 01

             ้
 ห ้ามใชคาสงวน (Reserve Word) เชน   ่
  begin, end , program, var ฯลฯ เพราะจะ
  ไปซ้ากับคาสง      ั่
      ื่       ั้             ื่
 ชอควรสน กะทัดรัด และสอความหมาย
   ั่
คาสงแสดงข ้อความ Write
รูปแบบ                 ่        ่
         ข ้อความจะเปลียนไปตามทีต ้องการ



    Write(‘ข ้อความ’) ;

   Write(‘Welcome’) ;
             ่
          เพิมเติมข ้อความ

    Write(‘Welcome’) ;

                     ื่   ึ
  Write(‘My name is ชอนักศกษา’) ;
Alt + C
Alt + R


                               ื่   ึ
            WelcomeMy name is ชอนักศกษา


                         ่ ิ                ่
               ข ้อความทีพมพ์จะติดกัน และอยูบรรทัด
                                          เดียวกัน
       ั่
    คาสงแสดงข ้อความ Writeln

WriteLn(‘Welcome’) ;


Write   Ln (‘My name is ชอนักศกษา’) ;
                         ื่   ึ
 Alt + C
 Alt + R
             Welcome
                         ื่   ึ
             My name is ชอนักศกษา
                          ่
          การจัดข ้อความกึงกลาง

Writeln(‘              Welcome’) ;


Writeln (‘My name is ชอนักศกษา’) ;
                      ื่   ึ

Alt + C
Alt + R
                    Welcome
                          ื่   ึ
              My name is ชอนักศกษา
                      ตัวอย่าง
Alt + C
Alt + R


                         Welcome
                            ื่    ึ
                My name is ชอนั กศกษา
                    I am 15 year old
           I study at รร. อรรถวิทย์พณิชยการ
          ------------------------------------------
          Please enter to exit now -*- >
              ี ั
     การกาหนดสตวอักษร
รูปแบบ                  รหัสส ี คือ เลขจานวนเต็ม 1- 125




                          ี
         Textcolor (รหัสส) ;
         Writeln( ‘ข ้อความ’ );


         Textcolor (5) ;
         Writeln( ‘Welcome’ );
          ี ั
 การกาหนดสตวอักษรกะพริบ
รูปแบบ                  รหัสส ี คือ เลขจานวนเต็ม 1- 125




                          ี
         Textcolor (รหัสส+127) ;
         Writeln( ‘ข ้อความ’ );


         Textcolor (5+127) ;
         Writeln( ‘Welcome’ );
  แบบทดสอบ > New > Exam02
Alt + C
Alt + R

          ATTAWIT COMMERCIAL COLLEGE
                Computer Department
                          PWS 2
          ------------------------------------------
          Enter to exit >
     ไปได ้ดั่งใจ Gotoxy
รูปแบบ                     ตาแหน่ง คือ เลขจานวนเต็ม




                             ้
     Gotoxy (ต.แนวนอน,ต.แนวตัง) ;
     Writeln( ‘ข ้อความ’ );


     Gotoxy (10,15) ;
     Writeln( ‘PWS 2’ );
                   ั่
        ให ้แทรกคาสงดังนี้
Gotoxy (15,5) ;
Writeln( ‘Number’ );
Gotoxy (15,15) ;
Writeln( ‘Name’ );
Gotoxy (15,25) ;
Writeln( ‘Price’ );
Gotoxy (15,35) ;
Writeln( ‘Amount’ );
              แบบทดสอบ
กิจกรรม
 ฝึ กเขียนโปรแกรม Exam21
   หน ้า 27 ให ้บันทึกเป็ น
   Exam3.pas
 แบบฝึ กหัดข ้อ 2 หน ้า 33
  – ข ้อ 2.1 บันทึกเป็ น Exam4.pas
  – ข ้อ 2.4 บันทึกเป็ น Exam5.pas



             สามารถตกแต่งโปรแกรมได้ตามความต้องการ
       การรับค่าตัวแปร

ตัวแปร (Variable) คือ ชอทีสมมติ
                       ื่ ่
  ้     ่  ้                    ้
ขึนมาเพือใชในการจัดเก็บข ้อมูลนัน ๆ ไว ้ใน
ระบบคอมพิวเตอร์


       ้ ื่
กฎการตังชอตัวแปร จะมีลักษณะ
               ้ ื่
เดียวกับกฎการตังชอไฟล์
รูปแบบการประกาศตัวแปร

Var
       ื่
      ชอตัวแปร : ชนิดข ้อมูล ;


Var
      price : Integer ;
Program exam06 ;        Alt + C

Uses Crt;
Var
    Price : Integer ;

Begin
Crlscr;

Readln;
End.
                       ้
       ชนิดของข ้อมูลพืนฐาน
      ่
    กลุมตัวเลข
    – เลขจานวนเต็ม       Integer
           ่ ุ
    – เลขทีจดทศนิยม      Real


      ่
    กลุมตัวอักษร
    – พยัญชนะตัวเดียว    Char
    – พยัญชนะหลายตัว     String
                ่
             กลุมตัวเลข
   เลขจานวนเต็ม เชน่
       ข ้อมูล  ื่
               ชอตัวแปร     ตัวอย่างข ้อมูล
              ิ
    – ราคาสนค ้า price      20, 50, 60, 5
    – คะแนนสอบ score        0, -10, 25, 35
    – เงินเดือน   salary    1000, 25000
                ิ
    – จานวนสนค ้า amount    120, 500
    – อัตราค่าแรง Rate      180,190,250
    – ค่าล่วงเวลา OT        50,300
    – เลขจานวนเต็ม number   20,150,300
                    ่
                 กลุมตัวเลข
          ่ ี
    เลขทีมทศนิยม เชน่
       ข ้อมูล  ื่
               ชอตัวแปร          ตัวอย่างข ้อมูล
              ิ
    – ราคาสนค ้า      price      20.50, 50.25
    – เงินเดือน       salary     1000.50, 2500.75
    – ภาษี            Vat        0.07, 0.10
    – ค่าเฉลีย  ่     Average    29.25,77.88
    – ดอกเบีย     ้   Interest   0.10, 0.25
               ่
            กลุมตัวอักษร
                     ่
    พยัญชนะตัวเดียว เชน
       ข ้อมูล   ื่
               ชอตัวแปร   ตัวอย่างข ้อมูล
    – เกรด       Grade    A,B,C,D,F
    – เพศ        Sex      M,F
    – สถานะภาพ   Status   M,S
                    ่
                 กลุมตัวษร
                          ่
    พยัญชนะมากกว่า 1 ตัว เชน
       ข ้อมูล  ื่
               ชอตัวแปร ตัวอย่างข ้อมูล
    – ชอื่        Name       John, Apple
    – เพศ         Sex        Male, Female
    – เบอร์โทร    phone      081-3358765
    ข ้อมูลนี้ คือ พยัญชนะ
                      ่
  มีพยัญชนะผสม เชน กท-005
        ่                    ่
 มีเครืองหมายพิเศษผสม เชน 86/2550

          ่
 เว ้นชองว่างระหว่างข ้อมูล 99 9999

    ้                    ่
 ขันต ้นด ้วยเลข 0 เชน 02-3345967

            ่              ้         ่
 ข ้อมูลทีไม่ต ้องการใชในการคานวณ เชน
              ึ                    ิ
  รหัสนักศกษา 430001 หรือ รหัสสนค ้า ฯ
              แบบทดสอบ
เตรียมประกาศตัวแปร

                 ื่
    ประกาศตัวแปร ชอ id เป็ นแบบ String

                 ื่
    ประกาศตัวแปร ชอ name เป็ นแบบ String

                 ื่
    ประกาศตัวแปร ชอ age เป็ นแบบ Integer

                 ื่
    ประกาศตัวแปร ชอ salary เป็ นแบบ Real
                 ่ ี
การประกาศตัวแปรทีมชนิดเดียวกัน
Var
          Price   :   Integer ;
          id      :   String ;
       name       :   String ;
          age     :   Integer ;
      Salary      :    Real ;



                      Var
                             Price,age : Integer ;
                             id,name     : String ;
                            Salary    : Real ;
                      ์
การรับค่าตัวแปรผ่านคียบอร์ด


               ื่
       Readln(ชอตัวแปร) ;

    ้    ่ ั     ั่         ่
จะใชควบคูกบคาสง Write เพือแจ ้งให ้ผู ้คีย ์
ทราบว่ากาลังจะรับค่าตัวแปรอะไร
Write(‘Input your Id = ‘);
Readln(Id);

Write(‘What is your name = ‘);
Readln(name);

Write(‘Age = ‘); Readln(age);
               ่
การกาหนดค่าคงทีให ้กับตัวแปร
  ่
เชน                                           ้
               Assignment คือ เก็บค่าทางด ้านซายให ้กับ
               ทางด ้านขวา

  Price := 200.50 ; ทดลองคอมไพล์

              ้     ้          ี่
  Error ชนิดนีเกิดขึนจากกรณีทตัวแปร
  Price ประกาศไว ้เป็ นแบบ Integer แต่
                        ุ         ่ ู
  เวลารับค่าจริงกับมีจดทศนิยม ทีถกต ้อง
  ตัวแประ Price ควรประกาศเป็ น…. หรือ
                ่     ี
  รับค่าตัวแปรทีไม่มทศนิยม
Price := 200 ;
                    ิ
จงรับค่าตัวแปรจานวนสนค ้า

Write(‘Input Amount = ‘);
Readln(Amount);


                               ็
                  Amount เปนต ัว
                            ั้
                  แปร ด ังนนจะต้อง
                 ประกาศ จึงสามารถ
                 compile โปรแกรม
                          ได้
     ้
การใชตัวแปรเก็บผลลัพธ์จากการคานวณ

  ่               ิ             ิ
เชน ยอดรวม = ราคาสนค ้า x จานวนสนค ้า


      ตัวแปร          ตัวแปร         *   ตัวแปร

     Total :=          price * amount ;

                Total เป็ นตัวแปร
                เก็บค่าผลลัพธ์ท ี่
                       ้
                 เกิดขึนจากการ
                     คานวณ
     การแสดงค่าของตัวแปร
                                      ื่
Write(‘ข ้อความบอกว่าคือค่าอะไร =‘ , ชอตัวแปร) ;

  ่
เชน ต ้องการแสดงค่าของตัวแปร Total
Writeln(‘Total =‘ , total) ;

                         ื่           ่
                        ชอต ัวแปรตามทีประกาศ

               ข้อความบอกว่าคือค่าอะไร
     ้  ั่     ่
    ใชคาสงคานวณสวนลด 10%                           7% เท่าก ับ 7/100 หรือ
                                                   0.07

        ่
       สวนลด = ยอดรวม คูณ 10%

Disc = total * 0.1 ;
Writeln(‘Discount = ‘, Disc);

                          ี่    ้
                 ผลล ัพธ์ทเกิดขึนมีทศนิยมมาก จึง
                 ต้องกาหนดจานวนจุดทศนิยม


Writeln(‘Discount = ‘, Disc:8:2);
      ้          ี่
    ใชได้ในกรณีทต ัวแปรนนเปน
                          ั้ ็              ็
                                          เปนการกาหนดทศนิยม 2 ตาแหน่ง
    ประเภทมีทศนิยมเท่าน ัน
                   ่
   คานวณยอดหลักหักสวนลด
                     ่
 ยอดรวม =ยอดรวม หัก สวนลด

Total = total – disc ;

Writeln(‘Total = ‘,total:8:2);
     ้  ั่
    ใชคาสงคานวณภาษี 7%        7% เท่าก ับ 7/100 หรือ
                              0.07

     ภาษี = ยอดรวม คูณ 7%

Vat = total * 0.07 ;

Writeln(‘Vat = ‘, vat:8:2);
          คานวณยอดสุทธิ
 ยอดสุทธิ =ยอดรวม บวก ภาษี

Net = total + vat ;

Writeln(‘Net = ‘, net:8:2);
             แบบทบทวน
            ึ
    ให ้นักศกษาเตรียมโครงสร ้างโปรแกรม และ
                         ั่
    เขียนโปรแกรมตามคาสงทีละประโยคคาสง    ั่
           ่
    ตามทีอาจารย์กาหนด
1.   เตรียมโครงสร ้างโปรแกรม
2.        ั่
     คาสงแสดงข ้อความว่า ยินดีต ้อนรับ
3.           ั่      ่
     คาสงแสดงเครืองหมาย hyphen
     พอประมาณเกือบเต็มบรรทัด
4.              ั่ ้
     คาสงขึนบรรทัดใหม่ 2 บรรทัด
5.                          ึ
     ประกาศตัวแปร รหัสนักศกษา (id)
     ขนาด 5 ตัวอักษร
1.                      ื่     ึ
     ประกาศตัวแปรชอนักศกษา(name) ขนาด
     30 ตัวอักษร
2.        ั่
     คาสงรับค่าตัวแปรอายุ (age) ของ
     นักศกษา          ึ
3.           ั่            ่
     คาสงรับค่าตัวแปรสวนสูง (high)
4.              ั่
     คาสงรับค่าตัวแปรเงินเดือน (salary) เป็ น
                             ี     ่
     เลขจานวนเต็ม ไม่มทศนิยม มีคาสูงสุดไม่
     เกิน 20,000 บาท
5.                 ั่
     คาสงคานวณเงินโบนัสของพนักงาน
     เท่ากับ 20% ของเงินเดือน
6.   แสดงค่าของตัวแปรเงินโบนัสของพนักงาน
     กาหนดจานวนทศนิยม 3 ตาแหน่ง
            แบบทบทวน
1.   เตรียมโครงสร ้างโปรแกรม
2.        ั่            ่
     คาสงแสดงเครืองหมาย hyphen
     พอประมาณเกือบเต็มบรรทัด
3.           ั่             ้ ื่
     คาสงแสดงข ้อความว่า ตังชอบริษัท
4.              ั่        ่
     คาสงแสดงเครืองหมาย hyphen
     พอประมาณเกือบเต็มบรรทัด
5.                 ั่ ้
     คาสงขึนบรรทัดใหม่ 1 บรรทัด
             แบบทบทวน
1.   กาหนดค่าตัวแปรคงที่
2.   Stock เท่ากับ 2,000
3.        ั่                 ิ    ่ ื้
     คาสงรับค่าตัวแปรจานวนสนค ้าทีซอ
                       ิ
     เข ้ามาเก็บในคลังสนค ้า
4.           ั่
     คาสงคานวณค่า Stock สุทธิ
5.              ั่             ิ   ่
     คาสงรับค่าตัวแปรจานวนสนค ้าทีขาย
     ไป
6.                 ั่
     คาสงคานวณค่า Stock สุทธิ
             แบบทบทวน
1.        ั่           ิ    ่
     คาสงคานวณจานวนสนค ้าทีต ้อง
      ั่ ื้
     สงซอ เท่ากับ 10% ของจานวน
        ิ
     สนค ้าคงเหลือ
2.           ั่          ิ    ่ ั่ ื้
     คาสงแสดงค่าจานวนสนค ้าทีสงซอ
            แบบฝึ กห ้ด
1.   จงเขียนโปรแกรมรับค่าตัวแปร รหัส
                  ื่
     บัตรประชาชน ชอบัญช ี จานวนเงินที่
                      ้ ่
     ฝาก คานวณดอกเบียทีได ้รับ คิดให ้
     6% ของยอดเงินฝาก
              แบบฝึ กห ้ด
1.   จงเขียนโปรแกรมหาค่ารายได ้สะสม
     ของเงินเดือนพนักงานจานวน 6 เดือน
2.        ั่
     คาสงรับค่ารายจ่ายของพนักงาน
                                      ั
     ได ้แก่ ค่าน้ า ค่าไฟฟ้ า ค่าโทรศพท์ ค่า
       ่                 ้
     เชาห ้อง พร ้อมทังหาค่ารายจ่ายสะสม
3.           ั่
     คาสงคานวณเงินคงเหลือ เท่ากับ
     รายได ้สะสม หัก รายจ่ายสะสม

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:100
posted:10/28/2011
language:Thai
pages:53