Make your own free website on Tripod.com
 

 

การเขียนโปรแกรมภาษา PASCAL

            
               1. เลขจำนวนเต็ม (Integer)
          - ความกว้างเขต : 20 ตำแหน่งตัวอักษร
          - พิมพ์ตัวเลขพร้อมทั้งมีเครื่องหมายลบถ้ามีค่าน้อยกว่าศูนย์ และ เขียนชิดขวา โดยมีช่อง  ว่างอยู่ด้าน ซ้ายของเขต

ตัวอย่าง 19    สถานะโปรแกรม มูลค่าที่พิมพ์   
     Age :      27         bbbbbbbbbbbbbbbbbb 27
LowTemp:      -185             bbbbbbbbbbbbbbbb -185 
b = ช่องว่าง   
2. เลขทศนิยม (Real)
ความกว้างของเขตขนาด 22 ตัวอักษร       พิมพ์เลขฐานสิบในรูปแบบเชิงวิทยาศาสตร์ (Scientific notation) ซึ่งประกอบด้วย เลข ชี้กำลัง โดยเขียนตัวเลขเหล่านี้ชิดขวา
ตัวอย่าง 20   สถานะโปรแกรม มูลค่าที่พิมพ์
     Salary : 1250.75 -1.25075000000000E+003
  LowAverage: -56.2  -5.62000000000000E+001
  NearZero :  0.0003
 -3.00000000000000E-004
 
3. ตัวอักขระ(Char)
     - ความกว้างของเขล    1  ตัวอักษร
     - พิมพ์ตัวอักขระ        1  ตัวโดยไม่มีเครื่องหมายคำพูด
ตัวอย่าง 21    สถานะโปรแกรม มูลค่าที่พิมพ์   
Size:         'M'         M
Grade:        'B'            B
Symbol:       '+'                 +

4. ค่าทางตรรกวิทยา (Boolean)
     - ความกว้างของเขต  :  4  หรือ  5 ตัวอักขระ
     - พิมพ์ "true" หรือ "false"
 
ตัวอย่าง 22       สถานะโปรแกรม มูลค่าที่พิมพ์   
  IsHot:          TRUE    true
RaceStarted:    FALSE     false

5. สายของอักขระในเครื่องหมายคำพูด
     - ความกว้างของเขต : จำนวนตัวอักขระในสายอักขระ
     - พิมพ์ตัวอักขระทั้งหมดระหว่างเครื่องหมายคำพูด
 การพิมพ์โดยปริยายนี้จะแสดงข้อมูลนำออกได้สวยงามในกรณีพิมพ์กลุ่มของประเภทข้อมูลชนิดเดียวกัน เช่น เลขจำนวนเต็ม หรือ เลขทศนิยม   
ตัวอย่าง 23 การพิมพ์เลขจำนวนเต็ม
     Writeln   (12, -277, 3);
     Writeln   (23456, 103333, -5678);   

ข้อมูลส่งออก ดังนี้ :
          12                  -277                3
       23456               1033333            -5678   
การนำข้อมูลต่างประเภทกันมาเขียนในรูปแบบปริยายนั้นทำให้การแสดงผลไม่เป็นระบบ   
ตัวอย่าง 24 :
     Writeln   ('Temperature', 212, 'F. is', 100.00, 'degrees C.');
     การเขียนแบบปริยายนี้ให้ผลลัพธ์ที่มีรูปแบบซึ่งอ่านแล้วเข้าใจยาก ข้อมูลที่ส่งออกคือ:
Temperature  212F. is  1.000000000000E+002degrees C.<EOLN>
 
2. ข้อกำหนดความกว้างเขต (Field Width Specification)
ความกว้างของเขต คือ เลขจำนวนเต็มที่ใช้กับข้อความ Writeln หรือ ข้อความ Write เพื่อกำหนดความกว้างเขต
     รูปแบบ :
     Writeln (<ตัวแปร หรือ สายอักขระ> : <ข้อกำหนดความกว้างเขต>ยิ้มเท่ห์
 
ตัวอย่าง 25
     Writeln ('TABLE OF PRICES ' : 20)
กำหนดให้สายอัขระนี้มีความกว้างเขต 20 อักขระ โดยการพิมพ์อักขระนั้นจะเขียนชิดขวา ข้อมูลนำออกจึงมี ดังนี้
        TABLE OF PRICES.<EOLN>
     กฏการเขียนความกว้างเขต TABLE OF PRICES<EOLN>
     1. เมื่อกำหนดความกว้างเขต จะเบียนผลลัพธ์ชิดขวา
     2.ถ้ากำหนดความกว้างเขตขนาดเล็กกว่ามูลค่าที่จะพิมพ์เขตจะได้รับการขยายให้ใหญ่พอที่จะรับ        ตัวอักขระที่จำเป็นต้องพิมพ์
 
การกำหนดความกว้างเขตของเลขจำนวนจริง
มีรูปแบบ ดังนี้
          <นิพจน์> : <ความกว้างของเขต> : <ขนาดของเลขหลังทศนิยม>   

ตัวอย่าง 26 การเขียนข้อมูลนำออกของเลขจำนวนจริง
     Writeln ('The temperature ', 212:1, ' F. is ', 100.0:1:2, ' degrees      C.')

     ข้อมูลนำออกคือ
     The temperature 212 F. is 100.00 degrees C.<EOLN>
 
ตัวอย่าง 27 แสดงการใช้ข้อความสั่ง WRITE และ การแสดงข้อมูลนำออกจากข้อความสั่งนั้น      ชื่อตัวแปร มูลค่า  ชนิดข้อมูล 
Age:   22 Integer
BirthDay:     12 Integer
BirthMonth:       11 Integer
BirthYear:         1966  Integer
Salary:               785.90     Real
FinalGrade:                  'C'   Char
Married:            TRUE   Boolean


ข้อความสั่ง WRITE แสดงข้อมูลนำออก    (สำหรับEOLN>นั้นไม่ปรากฏในผลลัพธ์)
writeln (Age:4, BirthYear:5)                   221966<EOLN>
writeln ('Grade = ':15, FinalGrade:4)                Grade.=   C<EOLN>
writeln (Salary:8:2)                           785.90<EOLN>
writeln (Married:10)                               true<EOLN>
writeln (Age:1, Salary:1:2)                  22 785.90<EOLN>
writeln ('Age is ', Age:1, 'years.')         Age is  22 years.<EOLN>
write ('Age is ');
write (Age:1);
writeln (' years. ')                         Age is  22 years.<EOLN>
writeln (Month Day Year');
writeln;
write (BirthMoth:5);
write (BirthDay:5);
write (BirthYear:5);                         Month  Day  Year<EOLN>
                                             <EOLN>
                                                11   12 1966<EOLN>
write ('*':Age);                                                *


TOP