วันพุธที่ 30 กรกฎาคม พ.ศ. 2557

ผังงานโปรแกรม
    เป็นผังงานละดับละเอียด จะแสดงการทำงานของแต่ละคำสั่งโดยละเอียด  ผังงานจะเป็นเอกสารกำกับโปรแกรม เพือ่ใช้ประโยนช์ในขั้นตอนซ่อมบำรุงโปรแกรมในภายหน้า  จึงถือได้ว่าผังงานมีความจำเป็น และโดยเหมาะกับผู้เริ่มต้นที่จะฝึกฝนการเขียนโปรเเกรม
  สัญลักษณ์ผังงาน
   สัญลักษณ์ที่ใช้เขียนผังงานเป็นสัญลักษณ์มาตรฐาน   กำหนดขึ้นตามมาตรฐานแอนซี  เพื่อความสะดวกในการสื่อสารความหมายให้เข้าใจตรงกันและเป็นสากล ดังตารางต่อไปนี้





อ้างอิง
      รศ.ธีรวัฒน์ ประกอบผล  การวิเคราะห์และออกแบบระบบ
                             

วันอังคารที่ 29 กรกฎาคม พ.ศ. 2557

ชนิดของข้อมูล

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

           - ข้อมูลชนิดตัวเลข หมายถึง ข้อมูลที่เป็นชุดของตัวเลขซึ่งประกอบด้วย  ตัวเลขจำนวนเต็ม  ตัวเลขที่มีจุดทศนิยม  รวมทั้งตัวเลขที่มีค่าเป็นบวกหรือลบด้วย ตัวอย่างเช่น  8,   32.00,  0.64,  -255.1,  +32767  เป็นต้น
ตัวอย่างของชนิดของข้อมูล
       ชนิดข้อมูล                 ชนิด                     คำอธิบาย 
          ตัวเลข            Boolean                               ตรรกะ มีค่าจริงกับเท็จ
                              Integer                     เลขจำนวนเต็ม
                             Long integer                  เลขจำนวนเต็มใช้บิตสองเท่า
                             Float,Real                 เลขทศนิยม
                             Complex number             จำนวนจินตภาพ
           
* โดยส่วนใหญ่ แล้วเราในรายวิชานี้ เราจะใช้บ่อยที่สุด คือ Integer, Float,Real 
    - ชนิดข้อมูลแบบอักขระ  คือชนิดข้อมูลที่เป็นอักขระเพียงหนึ่งตัวเท่านั้น  โดยที่ตัวอักขระนี้จะอยู่ในเครื่องหมาย Apostrophes ('')   อาจจะเป็นตัวอักษรภาษาอังกฤษตัวเล็กและใหญ่ สัญลักษณ์พิเศษต่าง ๆ   หรือตัวเลข แต่ถ้าเป็นข้อมูลตัวเลขจะไม่สามารถที่จะนำตัวเลขนั้นไปคำนวณเหมือนกับตัวแปรชนิดเลขจำนวนเต็มหรือจำนวนจริงได้ ตัวอย่างข้อมูลชนิดอักขระเช่น   'A',  'Z',  'a',   'z',  '1',  '9',  '#',  '%'   เป็นต้น
ตัวอย่างของชนิดของข้อมูล
       ชนิดข้อมูล                 ชนิด                     คำอธิบาย 
  ข้อมูลแบบเรียงลำดับ        String                        สายอักขระ โดยมีช่องว่าง คือ" "
                                     Unicode                     สายอักขระยูนิโคด
                                     Char                          ข้อความ  โดยมีช่องว่าง คือ "
                                     ListType                     รายการ
                                     TupleType                  ทูเพิล
                                     XRangeType               เอกซ์แรนจ์ คืนค่าจาก xrange()
                                     BufferType                 บัฟเฟอร์ คืนค่าจาก buffer()
โดยส่วนใหญ่ แล้วเราในรายวิชานี้ เราจะใช้บ่อยที่สุด คือ  String,Char 

การคำนวณ (Computing)  การคำนวณของการประมวลผลจะต้องมีการกำหนดขั้นตอนในการคำนวณก่อนหลัง ขั้นตอนนี้ต้องกำหนดให้ชัดเจน  เพื่อสะดวกในการเปลี่ยนเป็นชุดคำสั่งของภาษาคอมพิวเตอร์ได้อย่างถูกต้อง

    สัญลักษณ์ที่ใช้ในการคำนวณ
                 ตัวกระทำ                      สัญลักษณ์
                 การบวก                             +
                 การลบ                              -
                 การคูณ                             *
                 การหาร                           /,\,%
                 การยกกำลัง                      ** หรือ ^
ลำดับความสำคัญของเครื่องหมาย
1.    ( )  มีความสำคัญมากที่สุด
2.    ** , ^  
3.    * , /,\,%
4.    + , - มีความสำคัญน้อยที่สุด
 ถ้านิพจน์หนึ่งมีตัวกระทำที่มีลำดับความสำคัญเท่ากันให้ทำจากซ้ายไปขวา
** หมายเหตุ \ หมายถึง การหารเอาส่วน(จะได้เป็นทศนิยม) % หมายถึง การหารเอาเศษ (เรียกอีกอย่างว่า Mod )
ตัวอย่างเช่น  1*3/3*20%5
                 3/3
                   1*20
                     20%5
                        = 0
นอกจากจะมีการคำนวณ แบบข้างต้นไปแล้ว ยังมีการคำนวณแบบประพจณ์  ซึ่งการคำนวณแบบประพจณ์ของคอมพิวเตอร์จะมีลักษณะคล้ายกับการคำนวณแบบทางคณิตศาสตร์ แต่จะใช้ทฤษฏีน้อยกว่า
ดังตาราง

                 A       B        A && B          A ll B

                 T       T           T               T
                 T       F           F               T                           
                 F       T           F               T
                 F       F           F               F
*โดยมีวิธีการจำง่ายๆ คือ  T && T = T  , F ll F = F  ( && หมายถึง และ,llหมายถึง หรือ)

ตัวอย่างเช่น   กำหนดให้  a = 10 ,b = 20,c = 15
              ( a > b ) && ( b < c ) = F
                   F            F
              (a >= b ) ll ( b < c) = F
                    F            F
              (a < b) && ( b > c) = T
                 T           T



อ้างอิง
       อาจารย์ตวงสิทธิ์  สนขำ  หลักการและการออกแบบโปรแกรม
               หลักการออกแบบและพัฒนาโปรแกรม
  ขั้นตอนการพัฒนาโปรแกรม
        โปรแกรมคอมพิวเตอร์  หมายถึง ชุดคำสั่งที่จัดทำพัฒนาขึ้นมา  เพื่อใช้ในระบบการทำงานลักษณะประยุกต์ใช้ประโยชน์จากคอมพิวเตอร์  ในการเขียนโปรแกรมคอมพิวเตอร์นี้โดยทั่งไปแล้วแต่ละภาษาจะมีหลักเกณฑ์ในการเขียนและออกแบบโปรมแกรมที่เหมือนกัน ซึ่งสามารถแล่งขั้นตอนการเขียนโปรแกรมได้เป็น 5 ขั้นตอน
        โดยทั่วไปนิยมแบ่งวิธิการวิเคราะห์งานเป็น 5 หัวข้อ ได้แก่
1.  สิ่งที่โจทย์ต้องการ      เป็นการบอกให้ทราบว่างานที่ต้องการให้ทำมีอะไรบ้าง
2.  รูปแบบผลลัพธ์         เป็นการศึกษาถึงรูปแบบหรือลักษณะของการแสดงข้อมูล
3.  ข้อมูลนำเข้า           ข้อมูลที่ใช้ประมวลผลมีอะไรบ้าง
4.  ตัวแปรที่ใช้            บอกว่าใช้ตัวแปรอะไรแทนข้อมูลนำเข้า
5.  วิธีการประมวลผล       เป็นขั้นตอนของคำสั่งหรือวิธีการที่ใช้ในโปรแกรม  ซึ่งขั้นตอนต่างๆ                            จะต้องเรียงลำดับก่อนหลัง ไม่สามารถสลับตำแหน่งกันได้ เพราะจะ                            ทำให้ระบบไม่สามารถทำกรประมวลผลได้
ตัวอย่างเช่น
   โจทย์  การตัดเกรดวิชาการออกแบบโปรแกรมคอมพิวเตอร์  ของนักศึกษา 10 คนคะแนนเต็ม 100 คะแนน โดยมีเงื่อนไขในการตัดเกรดดังนี้ คะแนน  80 - 100 เกรด A ,คะแนน 75-79 เกรด B+, คะแนน 70-74 เกรด B , คะแนน 65-69 เกรด C+,คะแนน 60-64 เกรด C , คะแนน 55-59 เกรด D+,คะแนน 50-54 เกรด D , คะแนน 0-49  เกรด E  จงคำนวณหาเกรดของนักศึกษาแต่ละคน
  1.สิ่งที่ต้องการ
   - คำนวณหาเกรดของนักศึกษาแต่ละคน
  2.รูปแบบผลลัพธ์
   - เกรดนักศึกษาแต่ละคน
  3. ข้อมูลนำเข้า
   -  หมายเลขประจำตัว
   -  ชื่อ-นามสกุล
   -  คะแนนรวมของนักศึกษาแต่ละคนประกอบด้วย  คะแนนการบ้าน คะแนนจจิตพิสัย คะแนน           กลางภาค  คะแนนปลายภาค
  4.ตัวแปรที่ใช้
  - ค่า CODE แทนรหัสประจำตัวของนักศึกษา
  - ค่า Name  แทนชื่อนักศึกษา
  - ค่า Surname  แทนนามสกุลนักศึกษา
  - ค่า Total  คะแนนรวม
  - ค่า Mid แทนคะแนนกลางภาค
  - ค่า Final แทนคะแนนปลายภาค
  - ค่า JIT แทนคะแนนจิตพิสัย
  - ค่า Homework แทนคะแนนการบ้าน
  5.วิธีการประมวลผล
     1.เริ่มต้น
     2.ประกาศตัวแปร ID,Name,Surname,Score,Grade
     3.อ่านข้อมูลของ ID,Name,Surname,Score,Grade
     4.ทำการเปรียบเทียบค่าของ Score ดังนี้ ( if-then elseif )
      - ถ้า Score >= 80 และ Score <=100 ให้ GRAD = 'A'ไปทำงานข้อ 4
      - ถ้า Score >= 75 และ Score <=79 ให้ GRAD = 'B+'ไปทำงานข้อ 4
      - ถ้า Score >= 70 และ Score <=74 ให้ GRAD = 'B' ไปทำงานข้อ 4
      - ถ้า Score >= 65 และ Score <=69 ให้ GRAD = 'C+'ไปทำงานข้อ 4
      - ถ้า Score >= 60 และ Score <=64 ให้ GRAD = 'C' ไปทำงานข้อ 4
      - ถ้า Score >= 55 และ Score <=59 ให้ GRAD = 'D+'ไปทำงานข้อ 4
      - ถ้า Score >= 50 และ Score <=54 ให้ GRAD = 'D' ไปทำงานข้อ 4
      - ถ้า Score >= 0  และ Score <=49 ให้ GRAD = 'E' ไปทำงานข้อ 4
     5.พิมพ์ผลลัพธ์ GRAD ที่ได้จากการประมาลผล ทีละรายการ
     6.กลับไปทำข้อ 3.  เพื่ออ่านข้อมูลคนต่อไปจนกรัทั่งหมดทุกคน  ไปทำงานข้อ 6.
     7.จบการทำงาน

อ้างอิง
       อาจารย์ตวงสิทธิ์  สนขำ  หลักการและการออกแบบโปรแกรม