วันพุธที่ 29 มิถุนายน พ.ศ. 2554

Wordpress

Wordpress
วันที่ 27 มิถุนายน 2554
ผู้บรรยาย อาจารย์วราวุฒิ  แข่งขัน
              เวิร์ดเพรส (WordPress) คือ โปรแกรมจัดการบริหารข้อมูล หรือ CMS ที่อยู่ในรูปแบบของบล๊อก   (ดาวโหลด WordPress V ล่าสุดได้ที่http://wordpress.org/  อยู่ตรงกลางๆ หน้าหน่อย) ซึ่งช่วยให้มีเว็บไซท์และดูแลข้อมูลภายในเว็บได้ง่าย มีรูปแบบที่ไม่ซับซ้อนมากนักและเรียนรู้วิธีใช้งานได้รวดเร็ว มีโปรแกรมเสริม หรือปลั๊กอิน (Plug-in) ที่ช่วยเพิ่มความสามารถและประสิทธิภาพในการทำงานมากมาย สามารถเปลี่ยนธีม (Theme) หรือหน้าตาของบล๊อกได้และมีธีมให้เลือกใช้มากมายทั้งฟรี และเสียเงิน การทำงานของ WordPress นั้นได้เปลี่ยนการสร้างเว็บไซต์ที่เมื่อก่อนต้องมีความรู้เรื่อง HTML และโครงสร้างต่างๆ ของเว็บ ต้องดีไซด์เอง และอะไร อื่นๆ อีกมากมายครับ แต่ทุกวันนี้เวลาเป็นสิ่งสำคัญที่สุดนะครับ เจ้า WP ตัวนี้ช่วยล่นระยะเวลาในการสร้างเว็บไซต์ซัก 1 เว็บเป็นเรื่องที่ไม่ไกลเกินตัวครับ และตอนนี้ก็กำลังเป็นที่นิยมกันทั่วโลก
Wordpress.com เป็นเว็บโฮสติ้งฟรี                                               
wordpress เป็นที่นิยมเพราะ subport ในการทำ serchging ทุกครั้งที่ทำโปรแกรม sever ต้องเปิด wordpress เสมอ  
scm ดับเบิ้ลคลิกที่ Apache 2.2 เปลี่ยนเป็น Manual กด Apply แล้วกด OK จากนั้นดับเบิ้ลคลิกที่  Mysql เปลี่ยนเป็น Manul  กด Apply แล้วกด OK   ที่ทำแบบนี้เพื่อที่ไม่ให้มันเริ่มต้นตอนเปิดโปรแกรม
http://localhost หรือ http://192.02.13 พิมในแอดเดสเพื่อตรวจสอบว่า Website ใช้ได้หรือไม่ เมื่อกดเปิดหน้า  http://localhost   ได้แล้วให้เลือก php Myadmin Database พิมพ์ Username และPassword   
ขั้นตอนการเตรียมฐานข้อมูล
1.สร้างฐานข้อมูลใหม่ พิมพ์ตั้งชื่อ wordpress font มาตราฐานที่ใช้ utf8_general _ci กดสร้าง
2.การเก็บเว็บไซต์ทั้งหมด โดยเริ่มจากการ Copy โฟลเดอร์ wordpress ไปใส่ที่ไดร์ : C จากนั้น เข้า Appserv เลือก www เลือก wp_config_sample ก็อปปี้ แล้ว paste  ลงในนั้นโดยเปลี่ยนชื่อที่วางโฟลเดอร์ไปเป็น wp_config
เมื่อสามารถสร้างเว็บไซต์ได้แล้วต่อไปเป็นการสร้าง Page  Page ----> Add new ----> พิมตั้งชื่อ หัวข้อ
การใช้งานของwordpress คล้ายๆกับการใช้งานของ Blogger

บทที่ 3 Array

บทที่ 3 Array

Array โครงสร้างข้อมูลแบ่งออกเป็น 2 ประเภท คือ
1.โครงสร้างข้อมูลแบบเชิงเส้น ( Linear Lists )
เช่น อาร์เรย์( Array ), สแต็ก ( Stack ) และ คิว ( Queues )
2.โครงสร้างข้อมูลแบบไม่เป็นเชิงเส้น ( Non-Linear Lists )           
เช่น ทรี ( Trees ) และกราฟ ( Graphs )
โครงสร้างข้อมูลแบบอาร์เรย์
            อาร์เรย์ ( Array ) หรือแถวลำดับ คือการรวมกลุ่มของตัวแปรที่สามารถใช้ตัวแปรชื่อเดียวแทนข้อมูลสมาชิกได้หลายๆตัว ใช้เลขดรรชนี ( index ) หรือ ( Subscript ) เป็นตัวอ้างอิงตำแหน่งสมาชิกบนแถวลำดับ
คุณสมบัติสำคัญของอาร์เรย์

1.อาร์เรย์เป็นตัวแทนของกลุ่มที่มีความสัมพันธ์กัน

2.มีชนิดข้อมูลเหมือนกันทั้งหมด

3.อาร์เรย์มีขนาดคงที่

4.ผู้ใช้สามารถอ้างอิงเพื่อเข้าถึงข้อมูลที่ต้องการได้ทันที

การอ้างอิงตำแหน่งสมาชิกในอาร์เรย์
ต้องเริ่มต้นด้วยชื่ออาร์เรย์และตามด้วยเลขลำดับกำกับไว้ 
ด้วย สามารถเรียกได้หลายชื่อด้วยกัน เช่น เลขลำดับ เรียกอีกชื่อ ซัป
สคริปต์ หรือเลขดรรชนี
 
ขอบเขตของอาร์เรย์ (Bounds)         เลขดรรชนีในอาร์เรย์ประกอบด้วยช่วงขอบเขตของค่าซึ่งประกอบด้วยขอบเขตล่างสุดและขอบเขตบนสุด
การคำนวณหาจำนวนสมาชิก                                            
โดยที่  U  = ขอบเขตบนสุด  , L = ขอบเขตล่างสุด
อาร์เรย์ 1 มิติ  ใช้สูตร         U – L + 1                                  
อาร์เรย์ 2 มิติ  ใช้สูตร  ( U1 – L1 + 1) * ( U2 – L2 + 1)
การจัดเก็บอาร์เรย์ในหน่วยความจำ
-อาร์เรย์จัดเก็บอยู่ในหน่วยความจำคอมพิวเตอร์จะมีลักษณะเป็นลำดับต่อเนื่องกัน
-ใช้เนื้อที่ในการจัดเก็บข้อมูลสมาชิกของแต่ละตัวในขนาดเท่าๆกัน
-สมาชิกทุกตัวในต้องเป็นข้อมูลชนิดเดียวกัน
 
รูปแบบทั่วไปของโครงสร้างข้อมูลอาร์เรย์
                                                         อาร์เรย์ 1 มิติ ใช้สูตร ArrayName [ L:U ]
 a[1:10] = a[10] 
    
อาร์เรย์ 2 มิติ ใช้สูตร ArrayName [ L1:U1,L2:U2 
          
 a[4,5] = a[0:3,0:4] 
อาร์เรย์ 3 มิติ ใช้สูตร ArrayName [ L1:U1,L2:U2 ,L3:U3 
 
a[6,5,4] = a[0:5,0:4,0:3] 
 
การคำนวณหาตำแหน่งแอดเดรสในหน่วยความจำอาร์เรย์ 1 มิติ
ใช้สูตร LOC(a[i]) = B + w(i – L)
โดยที่                                                                                  
LOC(a[i]) คือ ตำแหน่งแอดเดรสที่เก็บ a[i] ในหน่วยความจำ                       
B คือ แอดเดรสเริ่มต้นของ a                                                 
w  คือ ขนาดของข้อมูลในการจัดเก็บ                                    
 i คือ ตำแหน่งของสมาชิกในอาร์เรย์                                     
 L คือ ขอบเขตล่างสุด                                                             
 
ตัวอย่าง
อยากทราบอาร์เรย์ a[10] (ภาษา C ) ถูกจัดเก็บในหน่วยความจพเดรสใด กำหนดให้ : 
 แอดเดรสเริ่มต้น = 1000      w =  1 ไบต์
LOC(a[i]) = B + w(i – L)                  
                  = 1000 + 1(10-0)
                  = 1000 + 10
                  = 1010
อาร์เรย์ 2 มิติ                                                                        การจัดเก็บด้วยการเรียงคอลัมน์เป็นหลัก   
ใช้สูตร      LOC(a[i]) = B + w[C(i – L1) + ( j – L2)] 
 
โดยที่ C  คือตำแหน่งคอลัมน์ของแถวลำดับ ( R*C )            
ตัวอย่าง  ต้องการทราบตำแหน่งที่เก็บข้อมูลอาร์เรย์ K แถวที่ 2 คอลัมน์ 1 กำหนด B = 500, w = 4 ( ภาษา C )
LOC(K[i,j]     = B + w[C(i – L1) + ( j – L2)] 
LOC(K[2,1])  = 500 + 4[3(2– 0) + ( 1 – 0)]
                        = 500 + 4[6 +1]
                        = 500 +28
                        = 528
อาร์เรย์ 3 มิติ                                                                            
การจัดเก็บด้วยการเรียงแถวเป็นหลัก       ใช้สูตร
      LOC(s[i,j,k])  = B + [ w * R * C( i - L1)                  
                                     + [w * C( j – L2 )] + [w(k-L3)]
ตัวอย่าง      
ต้องการทราบตำแหน่งที่เก็บข้อมูลอาร์เรย์ S ชั้นที่ 0 แถวที่ 3 คอลัมน์ 4 กำหนดให้ B = 500, w =4 (ภาษา C S[3][4][5] )
LOC(s[i,j,k])  = B + [ w * R * C( i - L1)                  
                               + [w * C( j – L2 )] + [w(k-L3)]
LOC(s[0,3,4])  = 500 + [ 4 * 4 * 5( 0 - 0)                  
                                     + [4 * 5( 3– 0 )] + [4(4-0)]
                           = 500 + 0 + 60 + 16
                          = 576
อาร์เรย์ 3 มิติ 
-การนำเอาอาร์เรย์ 2 มิติ มาเรียงซ้อนกันหลายๆ ชั้น
-มีแถว (row) และคอลัมน์ (column) และความลึก(deap)
                                      
การจัดเก็บด้วยการเรียงคอลัมน์เป็นหลัก      
 
ใช้สูตร
LOC( S[i,j,k]) = B + [w * K * R * C(j – L2) ]
                                + [ w * K * R(i – L1 )]  + [k – L3]
การคำนวณหาตำแหน่งแอดแดรสในหน่วยความจำของอาร์เรย์ 3 มิติ
สามารสจัดเก็บได้ 2 วิธี
1. การจัดเก็บด้วยการเรียงแถวเป็นหลัก (Row Major Order)
2. การจัดเก็บด้วยการเรียงคอลัมน์เป็นหลัก (Column Major Order)
        

                                                                                                                          

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

บทที่ 2 ภาษา c (Review C Language)

บทที่2 ภาษา C (Review C Language)

Contents 

คำสั่งพื้นฐานต่างๆ เช่น printf,scanf

  • เช่น printf( “abc” );
        printf( “%s”, ”abc” ); 
  • เช่น scanf( “%d”,&x);
Format Code ใช้ในการแสดงผลที่นิยมใช้ ได้แก่ 
       %d   ใช้กับข้อมูลแบบ integer
       %c    ใช้กับข้อมูลแบบ character
       %f     ใช้กับข้อมูลแบบ floating
       %s    ใช้กับข้อมูลแบบ string

Operator
เครื่องหมายดำเนินการ (Operator) แบ่งออกเป็น 3 ชนิด คือนิพจน์ (Expression)
  • Arithmetic Operators ได้แก่  +, - , *, /, % , -- , ++
  • Relational and Equality Operators ได้แก่ < , > , <= , >= , == , !=
  •    - Logical Operators ได้แก่ ! , && , ||
 คือการนำตัวแปรค่าคงที่มาสัมพันธ์กันโดยใช้เครื่องหมายอย่างใดอย่างหนึ่ง
นิพจน์จะทำงานจากซ้ายไปขวาามลำดับการทำงานของเครื่องหมาย

  1. วงเล็บ
  2. !, ++, --
  3. *, /, %
  4. +, -
  5. <, <=, >, >=
  6. ==, !=
  7. &&
  8. ||
selection/Condition
  • if statement
  • if - else statement
  • if - else statement (Nested if)
  • switch statement
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);
Function
ข้อดี
  • เขียนโค้ดครั้งเดียว แต่สามารถเรียกใช้ได้หลายครั้ง
  • สามารถนำหลับมาใช้ใหม่ในโปรแกรมอื่นได้
  • ถ้าต้องการเปลี่ยนแปลงแก้ไขเพียงที่เดียว
  • ทำให้โปรแกรมมีความเป็นโครงสร้าง 
  • สามารถแบ่งเป็นโมดูลย่อยๆได้
Function (Cont.)
ฟังก์ชันแบ่งเป็น 2 ประเภท คือ

  1. Library Function
  • Format :
           #include<file-name>
  •  Example
           #include<stdio.h>   #include<conio.h >   etc. 
Example Library Function
strcpy() - อยู่ในแฟ้มข้อมูล string.h
  • ทำหน้าที่: คัดลอกข้อมูลจาก string หนึ่งไปยังอีก string หนึ่ง
  • Format:
          strcpy(str1, str2);

Library Function

วิธีเรียกใช้งาน  Library Function
  • เรียกชื่อของฟังก์ชันที่ต้องการใช้งาน
  • เอาค่าที่จะส่งไปทำงานในฟังก์ชัน ใส่ลงในวงเล็บตามหลังชื่อฟังก์ชันนั้น
    User Defined Function 
     
       -คือ ฟังก์ชันที่ผู้เขียนโปรแกรมสามารถเขียนฟังค์ชันขึ้นใช้เอง โดยฟังก์ชันนี้อาจจะรวมอยู่กับโปรแกรมหลักเป็นแฟ้มเดียวกัน หรือยกฟังก์ชันเหล่านี้ไว้คนละแฟ้มข้อมูลก็ได้
       -การสร้างฟังก์ชัน ประกอบด้วย
    • Function Definition
    • Function Prototype
    • Invocation
     Function Definition
    • Function Definition หรือนิยามฟังก์ชัน คือ รายละเอียดในการทำงานของฟังก์ชัน
    • Format :
              /*…………..*/  clip_image001 heading comment
              data-type function-name(type argument )   
             {      
                      declaration;      
                      statement;    
                      return(value);
              }
    Function Prototype 
    •  เป็นตัวบอกให้ Compiler ทราบว่าการประกาศฟังก์ชันขึ้นและฟังก์ชันนั้นมีค่าที่ส่งกลับเป็นอะไร มีการรับพารามิเตอร์อะไรบ้าง มีประโยชน์ในการตรวจสอบข้อผิดพลาดระหว่างการเรียกใช้ฟังก์ชัน 
    Example:
               void print_banner(void);
               void print_banner(int  amount);
    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;
    }

ตัวอย่าง Library Function s

trcpy () –อยู่ในแฟ้มข้อมูล string.h 
  • ทำหน้าที่ : คัดลอกข้อมูลจาก string หนึ่งไปยัง string หนึ่ง
  •   Format : 
           strcpy (str1, str2);

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

บทที่1 ความรู้พื้นฐานเกี่ยวกับการออกแบบโปรแกรม
มีขั้นตอนดังนี้
(1)ขั้นตอนการพัฒนาโปรแกรม (Steps in Program Development)
1. กำหนดปัญหา(Define the Program)
  -Input
  -Output
  -Processing
2. ร่างรายละเอียดแนวทางการแก้ไขปัญหา(Outline the Solution) 
-แตกงานให้เป็นชิ้นงานย่อยๆ หรือเป็นขั้นเป็นตอน(หลังจากการกำหนดปัญหา)
-การร่างรายละเอียดแนวทางการการแก้ไขปัญหาต่างๆ ประกอบด้วย
  • ขั้นตอนการประมวลผลส่วนหลัก
  • ส่วนหลักของงานที่ได้มีการแตกย่อย
  • ส่วนความสัมพันธ์กับผู้ใช้งาน
  • โครงสร้างที่ใช้ควบคุม เช่น การวนซ้ำ หรือการกำหนดทางเลือก
  • ตัวแปรและโครงสร้างของเรคอร์ด
  • ตรรกะโปรแกรม (Logic)
3.การพัฒนาอัลกอริทึม (Develop and Algorithm)
    -ขั้นตอนที่ใช้อธิบายลำดับการทำงาน และหากได้ปฏิบัติตามขั้นตอนของอัลกอริทึมที่ออกมา
    -ซูโดโค้ด (Pseudo Code) เป็นตัวแทนอัลกอริทึมเพื่อใช้แก้ปัญหาทางคอมพิวเตอร์

4.ตรวจสอบความถูกต้องของอัลกอริทึม (Test the Algorithm for Correctness)
    -เป็นขั้นตอนที่สำคัญที่สุด
    -ตรวจสอบทั้งตรรกะของอัลกอริทึม และการนำข้อมูลทดสอบเข้าไปประมวลผลในแต่ละขั้นตอน

5.เขียนโปรแกรม (Programming)
    -นำอัลกอริทึมที่ได้รับการออกแบบอย่างสมบูรณ์มาพัฒนาด้วยการเขียนโปรแกรม(ชุดคำสั่ง)
    -เลือกใช้ภาษาระดับสูง (High Language) เพื่อเขียนโปรแกรม เช่น C, PASCAL เป็นต้น

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

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

(2.)วิธีการออกแบบโปรแกรม (Program Design Methodology)
     

  • วิธีการออกแบบโปรแกรม (Program Design Methodology)



  •     - แนวความคิดและมีกระบวนการ (Processes)หรือ ฟังก์ชัน(Function)

  • เอกสารภายใน คือชุดคำสั่งในโปรแกรม



  •     - แนวความคิดและเหตุการณ์หรือโต้ตอบจากภยนอกเป็นสำคัญ ที่ส่งผลต่อโปรแกรมในด้านของการเปลี่ยนแปลงในแต่ละสถานะ

  • การออกแบบโปรแกรมแบบ 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.การใช้งานคอมพิวเตอร์ขั้นพื้นฐาน 6 ประการของคอมพิวเตอร์ (Six Basic Computer Operations) 1.รับข้อมูลได้ (input device) 


  • อุปกรณ์รับข้อมูล เช่น เทอร์มินัล คีย์บอร์ด หรือรับข้อมูลจากการอ่านไฟล์ข้อมูลบนสื่อจัดเก็บข้อมูล

    เช่น ดิสก์ หรือเทป




  • ในการอ่านข้อมูลจะใช้ read และ get เพื่อใช้ในการเขียนซูโดโค้ด




  •  read ใช้เมื่อมีการรับหรืออ่านเรคคอร์ดจากไฟล์ข้อมูล




  •  get ใช้สำหรับรบข้อมูลจากแป้นคีย์บอร์ด
    2. แสดงผลลัพธ์ได้ (output device) การแสดงผลลัพธ์จะใช้




  • 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”

    3 สามารถแสดงผลลัพธ์ได้ (Cont.)


    • คำสั่ง prompt ที่ใช้สำหรับแสดงข้อความก่อนที่จะใช้คำสั่ง get,เพื่อจะได้สามารถสือสารโต้ตอบกับยูสเซอร์ได้อย่างสมบูรณ์ยิ่งขึ้น
    • คำกริยาที่ใช้ในการคำนวณจะใช้ compute และ calculate

      สัญลักษณ์ที่ใช้ในการคำนวณ
      + ใช้แทนการบวก (Add)
      - ใช้แทนการลบ (subtract)
      * ใช้แทนการคูณ (multiply)
      / ใช้แทนการหาร (divide)
      () ใช้แทนเครื่องหมายวงเล็บเปิด/ปิด

      divide totalMarks by studentCount
      salesTax costPrice*0.10
      computeC=(F-32)*5/9


      4 กำหนดค่าตัวแปรได้ (storage) สามารถทำได้ 3 รูปแบบ ดังนี้ 
    • ใช้คำกริยา initialize หรือคำว่า set เพือกำหนดค่าเริ่มต้นให้กับตัวแปร
    • ใช้สัญลักษณ์เครื่องหมาย = หรือเครื่องหมาย ←เพื่อกำหนดค่าให้กับตัวแปร
    • ใช้คำกริยา store ในการจัดเก็บข้อมูลให้กับตัวแปร

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

         if employeeStatus is partTime then
         add to partTimeCount
    else
         add to fullTimeCount
    end if

    6. ทำซ้ำได้ (repeation or loop)
    ใช้คำ dowhile และ enddo หรือ repeat.until

    dowhile file_flag<>”eof”
    read student record
    print studentName,address to report
    add 1 to studentTotal
    enddo

    eof และ End of File
    7. The Three Basic Control Structures
       
    -แบบเรียงลำดับ(Sequence) ทำงานตามชุดคำสั่งแบบลำดับ จากบนลงไปล่าง
    -แบบเลือกการทำงาน(Selection) เปรียบเทียบเงื่อนไขโดยใช้คำสั่ง
    -แบบทำงานซ้ำ(Repetition)
    dowhile จะทำงานซ้ำไปเรื่อยๆ เมื่อตรงกับเงื่อนไข
    จนกระทั่งเงื่อนไขเป็นเท็จ ก็จะหลุดออกจากลูป
    dowhile condition p is true
    statement block
    enddo
    ส่วน repeat …. until จะทำการ execute statement
    ก่อนเช็คเงื่อนไข
    repeat
    statement
    statement
    until condition is true









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

    วิชาเตรียมฝึก สัปดาห์ที่2 วันที่ 20 มิถุนายน 2554
     เรื่องเกราะ 5 ชั้นและคุณธรรม4 ประการ
    ผู้บรรยาย  พระอาจารย์ ศรศิริ ติสรโณ  (วัดสันติวัน)
    ศีล5 "เบญจศีล"
    1.ปานาติปาตา เวรมณี   คือ การเว้นจากการทำชีวิตสัตว์ให้ตกล่วงไป
    2.อทินนาทานา เวรมณี  คือ เว้นจากการถือเอาสิ่งของที่เจ้าของไม่ได้ให้ด้วยอาการแห่งขโมย
    3.กาเมสุมิจฉาจรา เวรมณี  คือ เว้นจากการประพฤติผิดในกาม
    4.มุสาวาทา เวรมณี คือ เว้นจากการพูดเท็จ
    5. สุราเมรยะมัชชปมาทัฏฐานา เวรมณี คือ เว้นจากการดื่มน้ำเมา
    ทำไมต้องรักษาศีล?
    ศีลข้อที่1 เพราะใครๆก็รักชีวิตตัวเอง
    ศีลข้อที่2 เพราะใครๆก็อยู่ได้ด้วยสมบัติของตัวเอง
    ศีลข้อที่3 เพราะใครๆก็รักพวกพ้องพี่น้องของเขา
    ศีลข้อที่4 เพราะใครๆก็รักความจริงใจด้วยกันทั้งนั้น
    ศีลข้อที่5 เพราะว่าเมื่อดื่มเข้าไปแล้ว ก็จะทำลายสติของเราเมื่อสติเราขาดหายไป ศีลข้ออื่นๆก็จะขาดไปหมด
    วิบากกรรม
    ศีลข้อ1 การฆ่าสัตว์-อายุสั้น
    ศีลข้อที่2 ลักทรัพย์-ทรัพย์สมบัติพินาส
    ศีลข้อที่3 ประพฤติผิดในกาม-ครอบครัวแตกแยก
    ศีลข้อที่4 โกหก-โรคภายในช่องปาก
    ศีลข้อที่5 ดื่มน้ำเมา-โง่เขลา,ปัญญาอ่อน
    คุณธรรม 4 ประการ
    "ฆารวาสธรรม"
    1.สัจจะ - นิสัยความรับผิดชอบ
    2. ทมะ - นิสัยการรักฝึกฝนตนเอง
    3. ขันติ - นิสัยอดทน
    4. จาคะ - นิสัยเสียสละ

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

    blogger

    เริ่มเรียนวิชาโครงสร้างเวลา 13.00 น. อาจารย์เอสั่งงานให้สมัคร gmail และ blogger  โดยให้ส่งชื่อ URL ของแต่ละคน และให้แต่ละคนสร้างบทความที่เรียนในวันนี้