วันพฤหัสบดีที่ 30 มิถุนายน พ.ศ. 2554

WordPress

         WordPress คือโปรแกรม สำเร็จรูปตัวหนึ่ง ที่เอาไว้สำหรับสร้างบล็อก หรือ เว็บไซต์ สามารถใช้งานได้ฟรี ถูกจัดอยู่ในประเภท CMS (Contents Management System) ซึ่งหมายถึง โปรแกรมสำเร็จรูปที่มีไว้สำหรับสร้างและบริหารจัดการเนื้อหาและข้อมูลบนเว็บไซต์

         WordPress ได้รับการพัฒนาและเขียนชุดคำสั่งมาจากภาษา PHP (เป็นภาษาโปรแกรมมิ่งตัวหนึ่ง) ทำงานบนฐานข้อมูล MYSQL ซึ่งเป็นโปรแกรมสำหรับจัดการฐานข้อมูลมีหน้าที่เก็บ เรียกดู แก้ไข เพิ่มและลบข้อมูล

         WordPress ได้รับความนิยนอย่างรวดเร็ว เพราะใช้ง่าย ไม่จำเป็นต้องมีความรู้ในเรื่องโปรแกรมมิ่ง มีรูปแบบที่สวยงาม อีกทั้งยังมีผู้พัฒนารูปแบบการแสดงผล และโปรแกรมเสริมให้เลือกใช้ฟรีอย่างมากมาย

วันศุกร์ที่ 24 มิถุนายน พ.ศ. 2554

อาร์เรย์ (Array)

 - โครงสร้างข้อมูลแบ่งออกเป็น 2 ประเภทใหญ่ๆ คือ

      - โครงสร้างข้อมูลแบบเชิงเส้น (Linear Lists) มีรูปแบบเป็นรายการต่อเนื่อง ข้อมูลที่จัดเก็บจะมีลักษณะเป็นแถวลำดับต่อเนื่อง เช่น อาร์เรย์(Array) สแต็ก(Stacks) และคิว(Queues) เป็นต้น
      - โครงสร้างข้อมูลแบบไม่เป็นเชิงเส้น (Non-Linear Lists) โครงสร้างข้อมูลชนิดนี้จะต้องข้ามกับแบบแรก เช่น ทรี(Trees) และกราฟ(Graphs) เป็นต้น  

-โครงสร้างข้อมูลแบบอาร์เรย์(Array)
        - อาร์เรย์ คือ การรวมกลุ่มของตัวแปรที่สามารถใช้ตัวแปรชื่อเดียวแทนข้อมูลสมาชิกได้หลายๆ ตัวด้วยการใช้ดรรชนี(Index) หรือซับสคริปต์(Subscript) เป็นตัวอ้างอิงตำแหน่ง

- คุณสมบัติสำคัญของอาร์เรย์

      - อาร์เรย์เป็นตัวแทนของกลุ่มที่มีความสัมพันธ์กันเช่น 12 เดือน ซึ่งประกอบด้วยเดือนมกราคมถึงเดือนธันวาคม ราคาหุ้นในรอบ 30 วัน เป็นต้น
      -  มีชนิดข้อมูลเหมือนกันทั้งหมด เช่น ชนิดข้อมูลของตัวแปร
      -  อาร์เรย์มีขนาดคงที่
      -  ผู้ใช้สามารถอ้างอิงเพื่อเข้าถึงข้อมูลที่ต้องการได้ทันที

- การอ้างอิงตำแหน่งสมาชิกในอาร์เรย์

     - ต้องเริ่มต้นด้วยชื่ออาร์เรย์และตามด้วยเลขลำดับกำกับไว้ด้วย
     - เลขลำดับ สามารถเรียกได้หลายชื่อ เช่น ซัขสคริปต์ หรือเลขดัชนี
     - เลขดัชนีอยู่ภายในเครื่อง ( ) หรือ [ ] ก็ได้ ขึ้นอยู่กับภาษาคอมพิวเตอร์แต่ละภาษา

- ขอบเขตของอาร์เรย์ (Bounds)
     - เลขดัชนี ในอาร์เรย์ประกอบด้วยช่วงขอบเขตของค่า ซึ่งประกแบด้วยขอบเขตล่างสุด และขอบเขตบนสุด
- การคำนวณจำนวนสามาชิกของอาร์เรย์ 1 มิติ

     - จำนวนสมาชิก  = U + L + 1

- การคำนวณจำนวนสามาชิกของอาร์เรย์ 2 มิติ

     - จำนวนสมาชิก = (U1 – L1 + 1) x (U2 – L2 + 1)

- การคำนวณจำนวนสามาชิกของอาร์เรย์ 3 มิติ

     - จำนวนสมาชิก = (U1 – L1 + 1) x (U2 – L2 + 1) x (U3 – L3 + 1)

 -การจัดเก็บอาร์เรย์ในหน่วยความจำ

     - อาร์เลย์จัดเก็บอยู่ในหน่วยความจำคอมพิวเตอร์จะมีลักษณะเป็นลำดับต่อเนื่องกัน
     - ใช้เนื้อที่ในการจัดเก็บข้อมูลสมาชิกของแต่ลัตัวในขนาดเท่าๆกัน
     - สมาชิกในอาร์เลย์ทุกตัวต้องเป็นข้อมูลชนิดเดียวกัน

- อาร์เรย์ 1 มิติ  รูปแบบโครงสร้างข้อมูลอาร์เรย์ 1 มิติ คือ

     - ArrayName [ L : U ]  

-สูตรการคำนวณเพื่อค้นหาตำแหน่งแอดแดรสในหน่วยความจำของอาร์เรย์ 1 มิติ 

     - LOC(a[ i ])  = B + W(i + L)

 - อาร์เรย์ 2 มิติ รูปแบบโครงสร้างข้อมูลอาร์เรย์ 2 มิติ คือ 

     - ArrayName [ L1 : U1, L2 : U2 ] 

- สูตรการคำนวณเพื่อค้นหาตำแหน่งแอดแดรสในหน่วยความจำของอาร์เรย์ 2 มิติ
 

     - รูปแบบการเรียงแถวเป็นหลัก

     -  LOC(K[ i,j ] ) = B + W[C(i – L1) + (j – L2) ]

โดยที่ R คือจำนวนคอลัมน์ของแถวลำดับ (R x C)

     - รูปแบบการเรียงคอลัมน์เป็นหลัก

     - LOC(K[ i,j ] ) = B + W[R(j – L2)]+ (i – L1) ]

โดยที่ R คือจำนวนแถวของแถวลำดับ (R x C)

- อาร์เรย์ 3 มิติ รูปแบบโครงสร้างข้อมูลอาร์เรย์ 3 มิติ คือ 

     - ArrayName [ L1 : U1, L2 : U2, L3 : U3 ]  

- สูตรการคำนวณเพื่อค้นหาตำแหน่งแอดแดรสในหน่วยความจำของอาร์เรย์ 3 มิติ  

      - รูปแบบการเรียงแถวเป็นหลัก

      - LOC(S[ i,j,k ]  = B + [W x R x C(i – L1)]
                            + [W x C(j – L2)]
                            + [W(k - L3)] 

     - รูปแบบการเรียงคอลัมน์เป็นหลัก

     - LOC(S[ i,j,k ]  = B + [W x K x R x C(j – L2)]
                            + [W x K x R(i– L1)]
                            + [k - L3]  

 

วันอังคารที่ 21 มิถุนายน พ.ศ. 2554

ความรู้พื้นฐานเกี่ยวกับการออกแบบโปรแกรม

 บทที่ 1


1.Steps in program development
  กำหนดปัญหา
   - ร่างรายระเอียดการแก้ไขปัญหา
   - พัฒนาอัลกอลิทึ่ม
   - ตรวจสอบความถูกต้องของอัลกอลิทึ่ม
   - เขียนโปรแกรม
   - ทดสอบโปรแกรม
   - จัดทำเอกสารและบำรุงรักษาโปรแกรม

กำหนดปัญหาประกอบไปด้วย
   - Input
   - Output
   - Processing

Outline the solution
   - แตกงานให้เป็นชิ้นงานย่อยๆหรือเป็นขั้นเป็นตอน (หลังการกำหนดปัญหา)
   - การร่างรายละเอียดแนวทางการแก้ไขปัญหาต่างๆประกอบด้วย
      - ขั้นตอนการประมวลผลส่วนหลัก
      - ส่วนหลักของงานที่ได้มีการแตแย่อย
      - ส่วนความสัมพันธ์กับผู้ใช้งาน
      - โครงสร้างที่ใช้ควบคุม เช่น การวนซ้ำ หรือการกำหนดทางเลือก
      - ตัวแปรและโครงสร้างของเรคอร์ด
      - ตรรกะโปรแกรม

Develop and Algorithm
   - ขั้นตอนที่ใช้อธิบายลำดับการทำงาน และหากได้ปฏิบัติตามขั้นตอนของอัลกอริทึ่มที่ออกมา
   - ซูโดโค้ดเป็นตัวแทนอัลกอริทึ่มเพื่อใช้แก้ปัญหาทางคอมพิวเตอร์

Test the algorithm for Correctness
   - ตรวจสอบทั้งตรรกะของอัลกอลิทึ่ม ตัวแปรหลัก และการนำข้อมูลทดสอบเข้าไปประมวลผลในแต่ละขั้นตอน

Programming
   - นำอัลกอลิทึ่มที่ได้รับการออกแบบอย่างสมบูรณ์มาพัฒนาด้วยการเขียนโปรแกรม


Testing
   - นำข้อมูลป้อนเข้าไปเพื่อทดสอบบนเครื่องกับโปรแกรมที่ได้เขียนขึ้นว่าถูกต้องหรือไม่
   - การตรวจสอบ
      - รูปแบบชุดคำสั่ง
      - โปรแกรม
   - ข้อมูลทดสอบต้องมีความแตกต่างกันออกไปตามแต่ละสถาณการณ์และสภาพแวดล้อม

Document and Maintain the Program
   - กาารจัดทำเอกสารประกอบโปรแกรมจะต้องจัดทำตั้งแต่ขั้นตอนการกำหนดปัญหาจนถึงขั้นตอนสุดท้าย คือ การทดสอบผลลัพธ์
   - เอกสารประกอบโปรแกรมจะประกอบไปด้วย
      - เอกสานภายนอก เช่น ผังโครงสร้าง
      - เอกสารภายใน คือ ชุดคำสั่งในโปรแกรม
   - การบำรุงรักษาโปรแกรมจะเกี่ยวข้องกับงานดูแลและปรับปรุงโปรแกรม

2.Program design Methodology
   - การออกแบบโปรแกรมแบบ Procedure-Driven
        - แนวความคิด>>มีกระบวนการ(Processes)หรือฟังก์ชัน(Function)
   - การออกแบบโปรแกรมแบบ Event-Driven
       - แนวความคิด>>เหตุการณ์หรือโต้ตอบจากภยนอกเป็นสำคัญ ที่ส่งผลต่อ
โปรแกรมในด้านของการเปลี่ยนแปลงในแต่ละสถานะ
   - การออกแบบโปรแกรมแบบ Data-Driven
       - แนวความคิด>>ข้อมูลในโปรแกรมมมากกว่ากระบวนการ โดยเริ่มต้นจากการวิเคราะห์ข้อมูล
และความสัมพันธ์ระหว่างข้อมูล มีการกำหนดโครงสร้างข้อมูลเบื้องต้นและเมื่อโครงสร้างข้อมูล
ได้ถูกกำหนดขึ้น ความต้องการในผลลัพธ์ของข้อมูลก็จะถูกพิจารณาในลำดับถัดไปว่า
มีกระบวนการใดที่ทำการแปลงข้อมูลนำเข้าเพื่อไปสู่ผลลัพธ์หรือเอาต์พุตที่ต้องการ

3. Procedural และ Object-Oriented
    - การเขียนโปรแกรมแบบบนลงล่าง(Top-Down Development)
   - การออกแบบโปรแกรมในลักษณะโมดูล (Modular Design 
   - การโปรแกรมเชิงวัตถุ (Object-Oriented Programming)


4.Objective of Structured Program  Design Techniques
  -  ต้องการให้โปรแกรมมีคุณภาพและคาดหมายพฤติกรรมการทำงานของโปรแกรมได้ว่าจะเกิดผลลัพธ์อะไรขึ้นในเงื่อนไขกรณีต่างๆ 
   - โปรแกรมสามารถที่จะแก้ไข ปรับปรุง หรือดัดแปลงได้ง่ายในอนาคต 
   -  ทำให้ขั้นตอนของการเขียนโปรแกรมเป็นไปอย่างมีระบบ มีความสะดวกและง่ายขึ้น
   -  ลดเวลาในการพัฒนาโปรแกรม


5.Introduction to Algorithm and Pseude Code
    -  อัลกอริทึม (Algorithm) คือ กลุ่มของขั้นตอนหรือกฎเกณฑ์ที่จะนำพาไปสู่การแก้ไขปัญหาได้ หรือขั้นตอนวิธีซึ่งจะใช้อธิบายว่า งานนั้นทำงานอย่างไร เมื่อได้ปฏิบัติตามขั้นตอนจนครบก็จะได้ผลลัพธ์ที่ถูกต้องตามต้องการ
   - คุณสมบัติของอัลกอริทึมที่ดี
       -ไม่กำกวม อ่านแล้วเข้าใจง่าย
       - ต้องมีความถูกต้องในผลลัพธ์ที่ใช้แก้ไขปัญหาในกรณีต่างๆ
       - กระบวนการหรือขั้นตอนที่ระบุไว้ในอัลกอริทึมต้องมีความเรียบง่ายเพียงพอต่อการดำเนินงานเพื่อประมวลผลในคอมพิวเตอร์ได้
       -ต้องมีจุดสิ้นสุด
     ซูโดโค้ด(Pseudo Code) สามารถนำมาใช้แทนอัลกอริทึมได้ โปรแกรมเมอร์สามารถนำอัลกอริทึมที่นำเสนอ ในรูปแบบซูโดโค้ดไปเขียนเป็นชุดคำสั่งภาษาโปรแกรมได้ทันที
หลักการเขียนซูโดโค้ด  
    - ถ้อยคำที่ใช้เขียน ใช้ภาษาอังกฤษที่เข้าใจง่าย 
    - ในหนึ่งบรรทัด ให้มีเพียงหนึ่งประโยคคำสั่ง
    - ใช้ย่อหน้าให้เป็นประโยชน์ ในการแสดงการควบคุมอย่างเป็นสัดส่วน  
    - แต่ละประโยคคำสั่งให้เขียนจากบนลงล่าง และมีทางออกทางเดียว 
    - กลุ่มของประโยคคำสั่งอาจรวมเป็นหมวดหมู่แล้วเรียกใช้เป็นโมดูล 

6.Six Basic Computer Operations 
    - รับข้อมูลได้ (input device) 
  -อุปกรณ์รับข้อมูล เช่น เทอร์มินัล คีย์บอร์ด หรือรับข้อมูลจากการอ่านไฟล์ข้อมูลบนสื่อจัดเก็บข้อมูล  เช่น ดิสก์ หรือเทป 
        -ในการอ่านข้อมูลจะใช้ read และ get เพื่อใช้ในการเขียนซูโดโค้ด 
            -read ใช้เมื่อมีการรับหรืออ่านเรคคอร์ดจากไฟล์ข้อมูล
            -get ใช้สำหรับรบข้อมูลจากแป้นคีย์บอร์ด
  ตัวอย่าง 
  read studentName
  get systemDate
  read number1,number2
  get taxCode

   - คอมพิวเตอร์สามารถแสดงผลลัพธ์ได้
      -print ใช้สำหรับการส่งผลลัพธ์ออกทางแป้นพิมพ์ 
      -write ใช้สำหรับการส่งออกเอาต์พุตเพื่อเก็บบันทึกลงในไฟล
      -put,output หรือ display ใช้สำหรับการส่งเอาต์พุตออกไปแสดงผลทางจอภาพ

  ตัวอย่าง
  print “Program Completed”
  write customer record to master file
  put name,address and postcode
  output totalTax
  display “End of data”

   - คอมพิวเตอร์สามารถแสดงผลลัพธ์ได้(Cont)
        -คำสั่ง prompt ที่ใช้สำหรับแสดงข้อความก่อนที่จะใช้คำสั่ง get,เพื่อจะได้สามารถสือสารโต้ตอบกับยูสเซอร์ได้อย่างสมบูรณ์ยิ่งขึ้น 
      -คำกริยาที่ใช้ในการคำนวณจะใช้ compute และ calculate 
  
สัญลักษณ์ที่ใช้ในการคำนวณ
                                                            +   ใช้แทนการบวก (Add)
                                                            -    ใช้แทนการลบ (subtract)
                                                           *     ใช้แทนการคูณ (multiply)
                                                            /     ใช้แทนการหาร (divide)
                                                           ()     ใช้แทนเครื่องหมายวงเล็บเปิด/ปิด
    ตัวอย่าง
   divide totalMarks by studentCount
   salesTax costPrice*0.10
   computeC=(F-32)*5/9
   - คอมพิวเตอร์สามารถกำหนดค่าตัวแปรได้สามารถทำได้ 3 รูปแบบ ดังนี้
       - ใช้คำกริยา initialize หรือคำว่า set เพือกำหนดค่าเริ่มต้นให้กับตัวแปร
       - ใช้สัญลักษณ์เครื่องหมาย = หรือเครื่องหมาย ←เพื่อกำหนดค่าให้กับตัวแปร 
       - ใช้คำกริยา store ในการจัดเก็บข้อมูลให้กับตัวแปร


 ตัวอย่าง
  initialize totalPrice to zero
  set studentCount to o
  totalPrice = costPrice+salesTax
  totalPrice ← costPrice+salesTax
  store customerId lastCustomerID

   - คอมสามารถเปรียบเทียบ หรือเลือกทำงานได้
        - ใช้คำ if…then…else และจบด้วย end if เสมอ

  ตัวอย่าง
  if employeeStatus is partTime then
   add to partTimeCount
  else
   add to fullTimeCount
  end if

    - คอมพิวเตอร์สามารถทำงานซ้ำๆได้
       -ใช้คำ dowhile…enddo หรือ repeat..until

  ตัวอย่าง
 dowhile file_flag<>”eof”
  read student record
  print studentName,address to report
  add 1 to studentTotal
 enddo

 7. The Three Basic Control Structures  

     - Repetition  Format
                            dowhile 
                  dowhile condition p is ture                       
                       statement block
                  enddo

   - Repetition Format (Cont)
                            repeat….until  

                            repeatstatement  
                                statement 
                                statement
                                     :
                                     : 
                            until condition is true

----------------------------------------------------------------------------

 บทที่ 2

1.Revew C Language

   - คำสั่งพื้นฐานต่างๆ  
        เช่น printf( “abc” ); 
               printf( “%s”, ”abc” );
        เช่น scanf( “%d”,&x); 

   - Format Code ใช้ในการแสดงผลที่นิยมใช้ ได้แก่
       %d   ใช้กับข้อมูลแบบ integer
       %c    ใช้กับข้อมูลแบบ character
       %f     ใช้กับข้อมูลแบบ floating
       %s    ใช้กับข้อมูลแบบ string

2.Operator

แบ่งออกเป็น 3 ชนิด คือ
   - Arithmetic Operators ได้แก่  +, - , *, /, % , -- , ++
   - Relational and Equality Operators ได้แก่ < , > , <= , >= , == , !=
   - Logical Operators ได้แก่ ! , && , ||

3.selection/Condition

   - if statement
   - if - else statement
   - if - else statement (Nested if)
   - switch statement

4.Repetition/Loop

   -while statement

Format : 
    while (expression) {
                  statement-1;
                  statement-2;
                       ……
                  statement-n;
     }


   -for statement

Format :
  for (expression -1; expression-2; expression-3 )
{
                statement -1 ;
                statement -2 ;
                     …..
                statement -n ;
  }

   -do-while statement

Format :
         do {
                                  statement -1 ;
                                  statement -2 ;
                                        …..
                                 statement -n ;
            } while (
expression); 


5.Function

ข้อดี  
    -เขียนโค้ดครั้งเดียว แต่สามารถเรียกใช้ได้หลายครั้ง
    -สามารถนำหลับมาใช้ใหม่ในโปรแกรมอื่นได้
    -ถ้าต้องการเปลี่ยนแปลงแก้ไขเพียงที่เดียว
    -ทำให้โปรแกรมมีความเป็นโครงสร้าง  
    -สามารถแบ่งเป็นโมดูลย่อยๆได้

ฟังก์ชันแบ่งเป็น 2 ประเภท คือ
 
   - Library Function

  Format : 
  #include<file-name>

  ตัวอย่าง
  #include<stdio.h>
  #include<conio.h >
  etc. 

วิธีเรียกใช้งาน Library Function
    -เรียกชื่อของฟังก์ชันที่ต้องการใช้งาน
    -เอาค่าที่จะส่งไปทำงานในฟังก์ชัน ใส่ลงในวงเล็บตามหลังชื่อฟังก์ชันนั้น


  ตัวอย่าง Library Function
  strcpy () –อยู่ในแฟ้มข้อมูล string.h
  ทำหน้าที่ : คัดลอกข้อมูลจาก string หนึ่งไปยัง string หนึ่ง


  Format : 
  strcpy (str1, str2);


6.User Defined Function

   - คือ ฟังก์ชันที่ผู้เขียนโปรแกรมสามารถเขียนฟังค์ชันขึ้นใช้เอง โดยฟังก์ชันนี้อาจจะรวมอยู่กับโปรแกรมหลักเป็นแฟ้มเดียวกัน หรือยกฟังก์ชันเหล่านี้ไว้คนละแฟ้มข้อมูลก็ได้
   - การสร้างฟังก์ชัน ประกอบด้วย
      - Function Definition
      - Function Prototype
      - Invocation

   - Function Definition หรือนิยามฟังก์ชัน คือ รายละเอียดในการทำงานของฟังก์ชัน

   Format :
clip_image001/*…………..*/  >> heading comment
  data-type function-name(type argument )
   {
      declaration;
      statement;
    return(value);
}


    - Function Prototype
       - เป็นตัวบอกให้ Compiler ทราบว่าการประกาศฟังก์ชันขึ้นและฟังก์ชันนั้นมีค่าที่ส่งกลับเป็นอะไร มีการรับพารามิเตอร์อะไรบ้าง มีประโยชน์ในการตรวจสอบข้อผิดพลาดระหว่างการเรียกใช้ฟังก์ชัน
    - Invocation คือการเรียกใช้ฟังก์ชัน

   ลักษณะของฟังก์ชัน

    - ฟังก์ชันที่ไม่มีการส่งค่ากลับ การเรียกใช้ทำได้โดยอ้างถึงชื่อฟังก์ชัน
           ...........
  Print_banner () ;

   - ฟังก์ชันที่มีการส่งค่ากลับ การเรียกใช้ทำได้เหมือนแบบแรก แต่ต้องมีตัวแปรมารับค่าที่จะต้องส่งกลับด้วย
int main(void) {
 int k, j;
   j = prompt ()
   k = prompt ();
printf(“j = %d and k = %d”, j, k);

   - ฟังก์ชันที่มีการรับค่า argument
การเรียกใช้ฟังก์ชันทำได้โดยอ้างถึงชื่อของฟังก์ชันพร้อมทั้งส่งค่าของตัวแปร(parameter)ไปด้วย โดยจะ
ต้องมีชนิดสอดคล้องกับ argument ของฟังก์ชัน ที่เรียกใช้

   - การผ่านค่า argument ให้ฟังก์ชัน ทำได้ 2 แบบ คือ
       -  Pass by Value คือ การส่งค่าไปยังฟังก์ชันที่ถูกเรียกใช้โดยส่งค่าของตัวแปรหรือค่าที่ส่งไปโดยค่าคงที่ผ่านให้กับค่าฟังก์ชันจะถูกคัดลอกส่งให้กับ ฟังก์ชันและจะถูกเลี่ยนแปลงเฉพาะภายในฟังก์ชัน โดยค่าของ argumentในโปรแกรมที่เรียกใช้จะไม่เปลี่ยนแปลง

ตัวอย่าง :
 
void swap(int num1, int num2) {
        int tmp;
tmp = num1;
num1 = num2;
num2 = tmp;
print(“A is %d B is %d\n”, num1, num2);
}

    - Pass by Reference คือ การส่งค่าไปยังฟังก์ชันที่ถูกเรียกใช้โดยส่งเป็นตำแหน่งที่อยู่ของตัวแปรไป
ซึ่งหากภายในฟังก์ชันมีการเปลี่ยนแปลงค่าของ argument ที่ส่งไป ก็จะมีผลทำให้ค่าของ argument นั้นใน
โปรแกรมที่เรียกใช้เปลี่ยนไปด้วย

ตัวอย่าง :

void swap(int * num1, int * num2) {
       int tmp;
tmp = *num1;
*num1 =* num2;
*num2 = tmp;
}
 








วันจันทร์ที่ 20 มิถุนายน พ.ศ. 2554

การฟังบรรยายธรรม โดยพระอาจารย์ศรศิริ ติสรโณ

     วันนี้พระอาจารย์ศรศิริ  ติสรโณ  มาบรรยายเกี่ยวกับเกาะ 5 ชั้น และคุณธรรม 4 ประการ เป็นเกาะที่ใช้ในการดำเนินชีวิต ต้องมีสติปัญญาในการแก้ไขปัญหาและต้องรู้จักสามัคคีกัน

     " สุขา สังฆะษะ สามัคคี "  ความสามัคคีย่อมทำให้สังคมมีสุข คนเกิดสุข

     พุทธพจน์ของพระพุทธเจ้ากล่าวว่า ศีลเป็นกำลังไม่มีที่เปรียบ ศีลเป็นเครื่องประดับอย่างประเสริฐสุข และศีลเป็นเกาะอย่างอัศจรรย์

     ศีล เป็นพื้นฐานของชีวิต
     ศีล 5 เบจศีล คือ ความปกติของมนุษย์  ถ้ามนุษย์ใช้ชีวิตแบบปกติแสดงว่ามนุษย์ผู้นั้นมีศีล
     1. ปาณาติปาตา เวรมณี  เว้นจากการชีวิตสัตว์ให้ตกล่วงไป
     2. อทินณาฑานา เวรมณี  เว้นจากการถือเอาสิ่งของที่เจ้าของไม่ได้ให้ด้วยอาการแห่งขโมย
     3. กาเมศุวิฉาจารา เวรมณี  เว้นจากการประพฤติผิดในกาม
     4. มุสาวาทา เวรมณี  เว้นจากการพูดเท็จ
     5. สุราเมรยมัชชปมาทัฏฐานา เวรมณี  เว้นจากการเสพสิ่งมึนเมา

     ทำไมต้องรักษาศีล
ศีลข้อที่  1  เพราะใครๆก็รักชีวิตตัวเอง
ศีลข้อที่  2  เพราะใครๆก็อยู่เป็นสุขได้ด้วยสมบัติของเรา
ศีลข้อที่  3  เพราะใครๆก็รักพี่รักน้องรักพวกพ้องของเรา
ศีลข้อที่  4  เพราะใครๆก็รักความจริงใจด้วยกันทั้งนั้น
ศีลข้อที่  5  เพราะเมื่อดื่มเข้าไปแล้วจะทำลายสติของเรา เมื่อสติของเราขาดไปแล้ว ศีลข้ออื่นๆก็พร้อมที่จะขาดไปด้วย

     วิบากกรรมของศีลข้อที่  1  อายุสั้น อายุไม่ยืน ตายเร็ว
     วิบากกรรมของศีลข้อที่  2  มีทรัพย์สิน ทรัพย์สินจะพังพินาศ
     วิบากกรรมของศีลข้อที่  3  มักจะมีปัญหาครอบครัว ถ้าเกิดเป็นผู้ชาย มักจะเป็นกระเทย ถ้าเกิดเป็นผู้หญิง มักจะถูกกดขี่ทางเพศ
     วิบากกรรมของศีลข้อที่  4  มักจะเป็นมะเร็งที่ปาก หรือมีกลิ่นปากที่รุนแรง
     วิบากกรรมของศีลข้อที่  5  เกิดมาปัญาอ่อน โง่เขลา

     วิธีสร้างเกาะภายในตนเอง
     การตั้งเจตนางดเว้น จากการประพฤติผิดทางกายและวาจา
     1. งดเว้นโดยไม่ตั้งใจไว้ก่อน
     2. งดเว้นโดยตั้งใจและปฏิญาณไว้ก่อน
     3. งดเว้นด้วยตัดขาดไว้

     ธรรมที่เกื้อกูลต่อการรักษาศีล " หิริโอตตัปปะ "
     " หิริ "  ความระอายต่อบาป
     " โอตตัปปะ "  ความเกรงกลัวต่อบาป
     " หิริโอตตัปปะ "  ความเกรงกลัวต่อบาป

     คุณธรรม 4 ประการ ฆารวาสธรรม
     1. สัจจะ  นิสัยความรับผิดชอบ
     2. ทมะ    นิสัยรักการฝึกฝนตนเอง
     3. ขันติ    นิสัยอดทน
     4. จาคะ   นิสัยเสียสละ