วันอาทิตย์ที่ 12 สิงหาคม พ.ศ. 2555

Code ตัวอย่างโปรแกรม และหน้าตาโปรแกรมภาษาซี

Code ตัวอย่างโปรแกรม และหน้าตาโปรแกรมภาษาซี
ตัวอย่างที่ 1 แสดงตัวอย่างโปรแกรมภาษาซีเบื้องต้น
#include <stdio.h>
void main( ) {
/* Display message to standard output */
printf(“My first program.”);

ตัวอย่างที่ 2 แสดงตัวอย่างโปรแกรมภาษาซีเบื้องต้น
#include <stdio.h> void main( ) { /* Display message to standard output */ printf
(“My first program.”); }

ตัวอย่างที่ 3 แสดงตัวอย่างการใช้ค่าของตัวแปรชนิด char
#include <stdio.h>
void main( ) {
int no;
char ch;
ch = ‘J’;
printf(“char : %c, dec : %d, oct : %o, hex : %x”, ch, ch, ch, ch);
no = ch;
printf(“\nno : %d, ch : %c”, no, ch);
no = 68;
ch = no;
printf(“\nno : %d, ch : %c”, no, ch);
}
ผลการทำงานของโปรแกรม
char : J, dec : 74, oct : 112, hex : 4a
no : 74, ch : J
no : 68, ch : D

ตัวอย่างที่ 4 แสดงตัวอย่างการรับข้อมูลเพื่อนำมาแสดงผล
#include <stdio.h>
void main( ) {
char name[100];
printf("What is your name ?\n");
scanf("%s", name);
printf("Very glad to know you, ");
printf("%s.",name);
}
ผลลัพธ์ของการทำงาน
What is your name ?
Willy
Very glad to know you, Willy.

ตัวอย่างที่ 5 แสดงการกำหนดค่าจำนวนจริงให้กับตัวแปรจำนวนเต็ม
#include <stdio.h>
void main( ) {
int x;
x = 14.8328;
printf(“x value is %d”, x);
}
ผลการทำงานของโปรแกรม
x value is 14

ตัวอย่างที่ 6 แสดงการใช้ตัวดำเนินการเปลี่ยนชนิดข้อมูล
#include <stdio.h>
void main( ) {
int x;
x = 2.5 * 2;
printf(“x value is %d”, x);
x = (int)2.5 * 2;
printf(“\nx value is %d”, x);
x = (int)(2.5 * 2);
printf(“\nx value is %d”, x);
}
ผลการทำงานของโปรแกรม
x value is 5
x value is 4
x value is 5

ตัวอย่างที่ 7 แสดงของการเปรียบเทียบด้วยตัวกาํเนินการความสัมพันธ์
#include <stdio.h>
void main( ) {
int x, y
printf(“Enter X : “);
scanf(“%d”, &x);
printf(“Enter Y : “);
scanf(“%d”, &y);
printf(“X > Y is %d”, x>y);
}

ผลการทำงานของโปรแกรม
Enter X : 32
Enter Y : 24
X > Y is 1

โปรแกรมแบบวนซ้ำ (คำสั่งประเภท For , while,do while)

โปรแกรมแบบวนซ้ำ (คำสั่งประเภท For , while,do while)
คำสั่งวนลูป
ความหมายของลูป(loop)ลูป(loop)ในที่นี้มีความหมายว่า การวนซ้ำซึ่งการวนซ้ำในทางภาษาคอมพิวเตอร์ คือ การทำคำสั่งหรือชุดคำสั่งนั้นซ้ำกันหลายๆครั้ง


ลูปทั้งสองแบบนั้นจะต่างกันตรงที่จำนวนการทำคำสั่งหรือชุดคำสั่งนั้นจะไม่เท่ากัน คือเมื่อดูจากรูปที่ 7-2 จะเห็นได้ว่าลูปแบบ pretest นั้นโอกาสการทำคำสั่งหรือชุดคำสั่งที่น้อยที่สุดจะเท่ากับ 0 คือ เมื่อทำการตรวจสอบเงื่อนไขครั้งแรกแล้วเป็นเท็จก็จะออกจากลูป แต่ลูปแบบ post-test นั้นโอกาสที่น้อยที่สุดจะเท่ากับ 0 คือ เมื่อเข้าจะทำคำสั่งหรือชุดคำสั่งก่อน 1 ครั้งและเมื่อตรวจสอบเงื่อนไขครั้งแรกแล้วจะเป็นเท็จ ก็จะออกจากลูป
การกำหนดและปรับปรุง
ในการใช้ลูป จะมีการกระทำที่สำคัญอยู่ 2 อย่าง ที่จะขาดไม่ได้เลยซึ่งถ้าขาดไปจะทำให้ลูปนั้นไม่ทำงาน หรือลูปทำงานแบบไม่มีวันจบ
 1.การกำหนดค่า ก่อนที่เริ่มใช้ลูปจะต้องมีการกำหนดค่าที่นะใช้เป็นตัวควบคุมลูปก่อนซึ่งตัวควบคุมนี้จะทำหน้าที่ในการตรวจอบว่าลูปนั้นได้ทำงานจนจบ
 2.การปรับปรุง หลังจากที่ทำคำสั่งหรือชุดคำสั่งไปแล้วไม่มีการปับปรุงค่าของตัวควบคุมลูปก็จะทำให้ลูปนั้นกลายเป็นลูปไม่มีวันจบได้เพราะฉะนั้นจะต้องทำการปรับปรุงค่าของตัวควบคุมลูปทุกครั้งเพื่อจะได้นำค่าของตัวควบคุมไปตรวจสอบกับเงื่อนไขเพื่อจบการทำงานของลูป
คำสั่ง While จะใช้เงื่อนไขเป็นตัวควบคุมลูป ซึ่งลูป while นี้จะเป็นลูปแบบ pretest loop ซึ่งจะทำการตรวจสอบเงื่อนไขก่อนที่จะเข้าไปทำคำสั่งในลูป ผังการทำงานและชุดคำสั่งเบื้องต้นของ while
คำสั่ง For นั้นจะเป็นลูปแบบ pretest loop ที่ใช้นิพจน์ 3 นิพจน์ นิพจน์แรกเป็นการกำหนดค่า นิพจน์ที่ 2 เป็นเงื่อนไขในการตรวจสอบตัวควบคุมลูป และส่วนที่ 3 เป็นการปรับปรุงค่าของตัวควบคุมลูป



 คำสั่ง do…while  ว่าลูปแบบนี้จะมีคำสั่งก่อนทีจะไปทำการตรวจสอบตัวควบคุมลูป ซึ่งผังการทำงานและชุดคำสั่งเบื้องต้น
ซึ่งในตัวของคำสั่ง do….while นั้นจะมีคำสั่งได้เพียงคำสั่งเดียว ซึ่งถ้าต้องการเขียนเป็นชุดคำสั่งจะต้องเขียนชุดคำสั่งแบบ Compound Statement



การเลือกทำงานตามเงื่อนไข (คำสั่ง IF ELSE SWITCH)

การเลือกทำงานตามเงื่อนไข (คำสั่ง IF ELSE SWITCH)
1.คำสั่ง 2 ทางเลือก
       คำสั่ง 2 ทางเลือกเป็นพื้นฐานของคำสั่งเงื่อนไขในภาษาคอมพิวเตอร์นั้น คำสั่งประเภทนี้จะต้องมีเงื่อนไขการตัดสินใจ เพื่อใช้หาคำตอบว่าจะไปทางไหน ถ้าเงื่อนไขเป็นจริงก็จะไปทำคำสั่งทางหนึ่ง  แต่ถ้าเงื่อนไขเป็นเท็จก็จะไปทำคำสั่งอีกทางหนึ่ง ผังการทำงานของคำสั่ง 2 ทางเลือก

 If…else คำสั่ง if…else นี้ จะต้องใช้เงื่อนไขเพื่อใช้เลือกว่าจะทำคำสั่งไหน ตามรูปทีแสดง ผังการทำงานของคำ         สั่ง if…else ถ้าเงื่อนไขเป็นจริงก็จะไปทำคำสั่งที่ 1 แต่เงื่อนไขเป็นเท็จก็จะไปทำคำสั่งที่ 2 ซึ่งไม่มีโอกาสที่จะทำทั้งสองคำสั่งได้เลย
   2. If
If คำสั่ง if ก็คือ คำสั่ง if…else แต่ที่ไม่มี else เพราะคำสั่งทางเป็นเท็จไม่มี หรือจากรูปที่ ไม่มีคำสั่งที่ 2 นั่งเอง ซึ่งก็คือจะต้องเป็นจริงเท่านั้นจึงจะทำคำสั่งได้  เห็นการเปลี่ยนจากคำสั่ง if…else เป็นคำสั่ง if
3.คำสั่งหลายทางเลือก 
            นอกจากคำสั่ง 2 ทางเลือกแล้ว ภาษา C  ยังมีคำสั่งหลายทางเลือกให้ใช้ด้วยเพื่อความสะดวกรวดเร็วในการเขียนและการทำความเข้าใจ เพราะไม่ต้องมานั่งเขียนโปรแกรมที่ยาว
Switch
Switch เป็นคำสั่งที่แปลงมาจากคำสั่ง Nested if คำสั่งนี้จะมีตัวแปรหนึ่งตัวที่ใช้หาว่าจะไปทำที่คำสั่งไหนหรือ case ไหน  แสดงผังการทำงานคำสั่ง switch ผู้ใช้สามารถสร้าง case ให้มีจำนวนตามต้องการได้ และชุดคำสั่งของคำสั่ง switch 


ประเภทของข้อมูลภาษาซี

ประเภทของข้อมูลภาษาซี
1. Simple data type เป็นชนิดข้อมูลที่ใช้แสดงค่าของสิ่งใดสิ่งหนึ่งเพียงรายการเดียว เช่น
ค่าความสูง นํ้าหนัก จํานวนนักเรียน อุณหภูมิ ระดับคะแนน เป็นต้น

2. Structure เป็นข้อมูลชนิดใช้แสดงค่าของสิ่งใดสิ่งหนึ่งหลายรายการ เช่น ความสูงของนัก
เรียนใน ชั้น ม. 6, รายชื่อนักเรียนใน 1 กลุ่ม ต้องกําหนดเป็นข้อมูล
ชนิดโครงสร้างแบบ อาร์เรย์ (array) แบบโครงสร้าง(structure) หรือแบบยูเนียน(union) เป็นต้น
ข้อมูล Simple data type รายละเอียดชนิดของมูลและช่วงของข้อมูลประเภท Simple data type

โครงสร้างของภาษาซี

โครงสร้างของภาษาซี

ภาษา C เป็นภาษาคอมพิวเตอร์ที่ถูกค้นคิดขึ้นโดย Denis Ritchie ในปี ค.ศ. 1970
โดยใช้ระบบปฏิบัติการของยูนิกซ์ (UNIX) นับจากนั้นมาก็ได้รับความนิยมเพิ่มขั้นจนถึงปัจจุบัน ภาษา C สามารถติดต่อในระดับฮาร์ดแวร์ได้ดีกว่าภาษาระดับสูงอื่น ๆ ไม่ว่าจะเป็นภาษาเบสิกฟอร์แทน ขณะเดียวกันก็มีคุณสมบัติของภาษาระดับสูงอยู่ด้วย ด้วยเหตุผลดังกล่าวจึงจัดได้ว่าภาษา C เป็นภาษาระดับกลาง (Middle –lever language)
                ภาษา C เป็นภาษาคอมพิวเตอร์ชนิดคอมไพล์ (compiled Language) ซึ่งมีคอมไพลเลอร์ (Compiler) ทำหน้าที่ในการคอมไพล์ (Compile) หรือแปลงคำสั่งทั้งหมดในโปรแกรมให้เป็นภาษาเครื่อง (Machine Language) เพื่อให้เครื่องคอมพิวเตอร์นำคำสั่งเหล่านั้นไปทำงานต่อไป
โครงสร้างของภาษา C
                ทุกโปรแกรมของภาษา C มีโครงสร้างเป็นลักษณะดังรูป
เฮดเดอร์ไฟล์ (Header Files)
                เป็นส่วนที่เก็บไลบรารี่มาตรฐานของภาษา C ซึ่งจะถูกดึงเข้ามารวมกับโปรแกรมในขณะที่กำลังทำการคอมไพล์ โดยใช้คำสั่ง
                #include<ชื่อเฮดเดอร์ไฟล์> หรือ
                #include  “ชื่อเฮดเดอร์ไฟล์” 
                เฮดเดอร์ไฟล์นี้จะมีส่วนขยายเป็น .h เสมอ และเฮดเดอร์ไฟล์เป็นส่วนที่จำเป็นต้องมีอย่างน้อย 1 เฮดเดอร์ไฟล์ ก็คือ เฮดเดอร์ไฟล์ stdio.h ซึ่งจะเป็นที่เก็บไลบรารี่มาตรฐานที่จัดการเกี่ยวกับอินพุตและเอาท์พุต
ส่วนตัวแปรแบบ Global (Global Variables)
                เป็นส่วนที่ใช้ประกาศตัวแปรหรือค่าต่าง ๆ ที่ให้ใช้ได้ทั้งโปรแกรม ซึ่งใช้ได้ทั้งโปรแกรม  ซึ่งในส่วนไม่จำเป็นต้องมีก็ได้
ฟังก์ชัน (Functions)
                เป็นส่วนที่เก็บคำสั่งต่าง ๆ ไว้ ซึ่งในภาษา C จะบังคับให้มีฟังก์ชันอย่างน้อย 1 ฟังก์ชั่นนั่นคือ ฟังก์ชั่น Main() และในโปรแกรม 1 โปรแกรมสามารถมีฟังก์ชันได้มากกว่า 1 ฟังก์ชั่น

ส่วนตัวแปรแบบ Local (Local Variables)
                เป็นส่วนที่ใช้สำหรับประกาศตัวแปรที่จะใช้ในเฉพาะฟังก์ชันของตนเอง ฟังก์ชั่นอื่นไม่สามารถเข้าถึงหรือใช้ได้ ซึ่งจะต้องทำการประกาศตัวแปรก่อนการใช้งานเสมอ  และจะต้องประกาศไว้ในส่วนนี้เท่านั้น 
ตัวแปรโปรแกรม (Statements)
                เป็นส่วนที่อยู่ถัดลงมาจากส่วนตัวแปรภายใน ซึ่งประกอบไปด้วยคำสั่งต่าง ๆ ของภาษา C และคำสั่งต่าง ๆ จะใช้เครื่องหมาย ; เพื่อเป็นการบอกให้รู้ว่าจบคำสั่งหนึ่ง ๆ แล้ว ส่วนใหญ่ คำสั่งต่าง ๆ ของภาษา C เขียนด้วยตัวพิมพ์เล็ก เนื่องจากภาษา C จะแยกความแตกต่างชองตัวพิมพ์เล็กและพิมพ์ใหญ่หรือ Case Sensitive นั่นเอง ยกตัวอย่างใช้ Test, test หรือจะถือว่าเป็นตัวแปรคนละตัวกัน นอกจากนี้ภาษา C ยังไม่สนใจกับการขึ้นบรรทัดใหม่ เพราะฉะนั้นผู้ใช้สามารถพิมพ์คำสั่งหลายคำสั่งในบรรทัดเดียวกันได้ โดยไม่เครื่องหมาย ; เป็นตัวจบคำสั่ง

ค่าส่งกลับ (Return Value)
                คือ ค่าที่ส่งกลับเมื่อฟังก์ชันนั้นๆทำงานเสร็จ    ซึ่งเรื่องนี้ผู้เขียนจะยกไปกล่าวในเรื่องฟังก์ชั่นอย่างละเอียดอีกทีหนึ่ง

หมายเหตุ (Comment) / Remark 
                ส่วนที่ไม่ต้องประมวลผลมักใช้ในการอธิบายการทำงานของโปรแกรม  ซึ่งจะใช้เครื่องหมาย /*และ */ ปิดหัวและปิดท้ายของข้อความที่ต้องการ

การตั้งชื่อ 
            การตั้งชื่อ (Identifier) ให้กับตัวแปร ฟังก์ชันหรืออื่น ๆ มีกฎเกณฑ์ในการตั้งชื่อ ดังนี้
            1.  ตัวแรกของชื่อจะต้องขึ้นต้องด้วยตัวอักษรหรือเครื่องหมาย _ เท่านั้น
            2.  ตัวอักษรตั้งแต่ตัวที่ 2 สามารถเป็นตัวเลข หรือเครื่องหมาย_ก็ได้
            3.  จะต้องไม่มีการเว้นวรรคภายในชื่อ แต่สามารถใช้เครื่อง_คั่นได้
            4.  สามารถตั้งชื่อได้ยาไม่จำกัด แต่จะใช้ตัวอักษรแค่ 31 ตัวแรกในการอ้างอิง 
            5.  ชื่อที่ตั้งด้วยตัวอักษรพิมพ์ใหญ่และพิมพ์เล็ก จะถือว่าเป็นคนละตัวกัน 
            6.  ห้ามตั้งชื่อซ้ำกับคำสงวนของภาษา C

ชนิดข้อมูล
                        ในการเขียนโปรแกรมภาษา C นั้น ผู้ใช้จะต้องกำหนดชนิดให้กับตัวแปรนั้นก่อนที่จะนำไปใช้งาน โดยผู้ใช้จะต้องรู้ว่าในภาษา C นั้นมีชนิดข้อมูลอะไรบ้าง เพื่อจะเลือกใช้ได้อย่างถูก
ต้องและเหมาะสม ในภาษา C จะมี 4 ชนิดข้อมูลมาตรฐาน ดังนี้
ชนิดข้อมูลแบบไม่มีค่า หรือ Void Type (Void)
                        ข้อมูลชนิดนี้ จะไม่มีค่าและจะไม่ใช้ในการกำหนดชนิดตัวแปร แต่ส่วนใหญ่จะใช้เกี่ยวกับฟังก์ชั่น ซึ่งจะขอยกไปอธิบายในเรื่องฟังก์ชั่น
ชนิดข้อมูลมูลแบบจำนวนเต็ม หรือ Integer Type (int)
                        เป็นชนิดข้อมูลที่เป็นตัวเลขจำนวนเต็ม ไม่มีทศนิยม ซึ่งภาษา C จะแบ่งข้อมูลชนิดนี้ออกได้เป็น 3 ระดับ คือ short int , int และ long int ซึ่งแต่ละระดับนั้นจะมีขอบเขตการใช้งานที่แตกต่างกัน 
ชนิดข้อมูลแบบอักษร หรือ Character Type (char)
                        ข้อมูลชนิดนี้ก็คือ ตัวอักษรตั้งแต่ A-Z เลข 0-9 และสัญลักษณ์ต่าง ๆ ตามมาตรฐาน ACSII (American Standard Code Information Interchange) ซึ่งเมื่อกำหนดให้กับตัวแปรแล้วตัวแปรนั้นจะรับค่าได้เพียง 1 ตัวอักษรเท่านั้น และสามารถรับข้อมูลจำนวนเต็มตั้งแต่ถึง 127 จะใช้ขนาดหน่วยความจำ 1ไบต์หรือ 8 บิต
ชนิดข้อมูลแบบทศนิยม หรือ Floating Point Type (flat)
                        เป็นข้อมูลชนิดตัวเลขที่มีจุดทศนิยม ซึ่งสามารถแบ่งออกเป็น 3 ระดับ คือ float, double และ long double แต่ละระดับนั้นจะมีขอบเขตที่แตกต่างกันในการใช้งาน ดังแสดงในตารางที่ 2-2
ตัวแปร 
                        ตัวแปร คือ ชื่อที่ใช้อ้างถึงตำแหน่งต่าง ๆ ในหน่วยความจำ ซึ่งใช้เก็บข้อมูลต่าง ๆ ด้วยขนาดตามชนิดข้อมูล

การประกาศตัวแปร 
                        การประกาศตัวแปรในภาษา C นั้นสามรถทำได้ 2 ลักษณะ คือ การประกาศตัวแปรแบบเอกภาพ หรือการประกาศตัวแปรแบบ Global คือ ตัวแปรที่จะสามารถเรียกใช้ได้ทั้งโปรแกรม และแบบที่สองการประกาศตัวแปรแบบภายใน หรือการประกาศตัวแปรแบบ Local ซึ่งตัวแปรแระเภทนี้จะใช้ได้ในเฉพาะฟังก์ชั่นของตัวเองเท่านั้น

การกำหนดค่าให้กับตัวแปร
                    การกำหนดค่าให้กับตัวแปรนั้น จะสามารถกำหนดได้ตั้งแต่ตอนที่ประกาศตัวแปรเลยหรือจะกำหนดให้ภายในโปรแกรมก็ได้ ซึ่งการกำหนดค่าจะใช้เครื่องหมาย = กั้นตรงกลาง
                    int total = 0;
                    ถ้ามีตัวแปรข้อมูลชนิดเดียวกัน ก็สามารถทำแบบนี้ได้
                    int total =0,sum
                    หรือ 
                    int total =0,sum=0;
                    ถ้าเป็นการกำหนดภายในโปรแกรม ซึ่งตัวแปรนั้นได้ประกาศไว้แล้วสามารถทำแบบนี้
                    total = 50;
                    หรือ 
                    total = total+sum
                    หรือกำหนดค่าจาการพิมพ์ข้อมูลเข้าทางคีย์บอร์ด
                    scanf(“%d”,&total);





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


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



 statements ในภาษา c คือ คำสั่งต่าง ไ ที่ประกอบขึ้นจนเป็นตัวโปรแกรม ซึ่งในภาษา c นั้นได้แบ่งออกเป็น 6 แบบ คือ Expression Statement และ Compound Statement ณ.ที่นี้จะมีด้วยกัน 2 แบบ

Expression Statement   หรือเรียกอีกอย่างหนึ่งว่า Single Statement ซึ่ง Statement  แบบนั้นจะต้องมีเครื่องหมาย; หลังจาก statement เมื่อภาษา C พบเครื่องหมาย ; จะทำให้มันรู้ว่าจบชุดคำสั่งแล้ว แล้วจึงข้ามไปทำ Statement ชุดต่อไป
            a = 2;
            หรือ
printf(“x contains %d, y contains %d\n”,x,y);
Compound Statement คือ ชุดคำสั่งที่มีคำสั่งต่าง ๆ รวมอยู่ด้านใน Block ซึ่งจะใช้เครื่องหมาย {เป็นการเปิดชุดคำสั่ง และใช้} เป็นตัวปิดชุดคำสั่ง ตัวอย่างที่เห็นได้ชัดเจนสำหรับ Statement แบบนี้ คือ ตัวฟังก์ชั่น Main โดยทั่ว ๆ ไปในภาษา C Compound Statement จะเป็นตัวฟังชั่น




ประวัติภาษาซี

ประวัติภาษาซี

ภาษา C++ พัฒนาขึ้นโดย Dr. Bjarne Stroustrup (คนในรูป) ซึ่งเป็นนักวิจัยอยู่ทีห้องปฏิบัติการ Bell Labs ประเทศสหรัฐอเมริกาในระหว่างปี พ.ศ.             2525-2528       ภาษา C++ เกิดจากแนวคิดในการเพิ่มประสิทธิ ภาพภาษา C  ก่อนปี พ.ศ. 2526 Dr. Bjarne Stroustrup ได้เพิ่มคุณสมบัติให้กับภาษา C ซึ่งเขาเรียกภาษา C ที่ปรับปรุงใหม่ว่า “C with classes” นอกจากนี้เขายังได้รวมเอาแนวคิดเกี่ยวกับ classes ในภาษา Simula กับคุณสมบัติเชิงวัตถุผสมผสานกับจุดแข็งของภาษา C เป็นภาษา C++ ชื่อ C++ ใช้ครั้งแรกเมื่อปี พ.ศ. 2526 ภาษา C++ ถูกออกแบบมาสำหรับการทำงานภายใต้สิ่งแวดล้อมระบบปฏิบัติการ UNIX  ด้วยภาษา C++ ผู้เขียนโปรแกรมสามารถเขียนโปรแกรมได้อย่างมีประสิทธิภาพมากขึ้น นอกจากนี้การเขียนโปรแกรมเพื่อให้สามารถนำกลับมาใช้ได้ใหม่ (reusability) ก็สามารถทำได้ง่ายขึ้น

Dr. Bjarne Stroustrup ได้ศึกษาและวิจัยระดับปริญญาเอกที่ห้องปฏิบัติการ Computing Laboratory ที่มหาวิทยาลัย Cambridge ประเทศอังกฤษ ก่อนที่จะมาร่วมกับห้องปฏิบัติการ Bell Labs ในเวลานี้ห้องปฏิบัติการ Bell Labs ไม่ได้ใช้ชื่อนี้อีกต่อไปแล้ว เพราะส่วนหนึ่งของห้องปฏิบัติการได้เปลี่ยนไปเป็น AT&T Labs และอีกส่วนหนึ่งก็เปลี่ยนไปเป็นห้องปฏิบัติการ Lucent Bell Labs



ก่อนที่จะมีภาษา C++ ภาษา C เป็นภาษาคอมพิวเตอ ร์ ที่พัฒนาขึ้นจากห้องปฏิบัติการ  Bell Labs ในช่วงปี พ.ศ.             2512-2516       ในช่วงเดียวกันนั้น ระบบปฏิบัติการ UNIX ก็ถูกพัฒนาขึ้นที่ห้องปฏิบัติการ Bell Labs ภาษา C เริ่มแรกพัฒนาขึ้นมาเพื่อทำงานกับระบบปฏิบัติการ UNIX บนเครื่องคอมพิวเตอร์ขนาดเล็กชื่อ PDP-11 โดยนักวิจัยของห้องปฏิบัติการ Bell Labs ชื่อ Dennis Ritchie ในตอนเริ่มต้น เขาได้ขยายความสามารถของภาษา B โดยการเพิ่ม “TYPE” เข้าไปในปี พ.ศ. 2514 และเรียกภาษาที่ปรับปรุงใหม่นี้ว่าภาษา NB (ย่อมาจาก New B) ที่เขาได้แนวคิดอย่างนี้ขึ้นมาเพราะ Dennis Ritchie ได้แรงบันดาลใจมาจากภาษา Algol68 เขาได้ปรับโครงสร้างภาษาและเขียนคอมไพเลอร์ใหม่และตั้งชื่อภาษาใหม่ของเขาว่าภาษา “C” ในปี พ.ศ. 2515  90% ของระบบปฏิบัติการ UNIX เขียนด้วยภาษา C

หลังจากกำเนิดภาษา C คนในวงการคอมพิวเตอร์ต่างก็ตื่นตัวและประทับใจในความสามารถของภาษา C กันมาก ทำให้เกิดการพัฒนาและปรับปรุงภาษา C ออกมาหลายต่อหลายเวอร์ชั่น องค์กร ANSI จึงได้จัดตั้งคณะกรรมการเพื่อกำหนดมาตรฐานภาษา C ขึ้นในปี พ.ศ. 2532เพื่อทำการกำหนดมาตรฐานสำหรับภาษา C โดยเฉพาะ จนใช้กันถึงปัจจุบันนี้

ภาษา C เป็นภาษาที่ portable คือไม่ขึ้นอยู่กับฮาร์ดแวร์หรือระบบปฏิบัติการใดโดยเฉพาะ เป็นภาษาที่ผสมผสานส่วนสำคัญที่จำเป็นจากภาษาระดับสูง (high-level languages) กับฟังก์ชั่นระดับ low-level ของภาษาแอสเซมบลี (assembly language) จนบางครั้งมีคนจัดภาษา C ว่าเป็นภาษาคอมพิวเตอร์ในระดับ middle-level โปรแกรมที่เขียนด้วยภาษา C สามารถปรับการใช้จากคอมพิวเตอร์เครื่องหนึ่งไปใช้กับอีกเครื่องหนึ่งได้โดยง่าย

กล่าวโดยสรุป ภาษา C เป็นภาษาที่พัฒนาต่อเนื่องมาจากภาษา B ซึ่งพัฒนาโดย Ken Thompson เมื่อปี พ. ศ. 2513 เพื่อใช้กับระบบปฏิบัติการใหม่ตอนนั้นคือ UNIX ภาษา B ก็ได้รับการพัฒนาต่อมาจากภาษา BCPL ที่ออกแบบพัฒนาโดย Martin Richards ซึ่งเป็นนักศึกษาของมหาวิทยาลัย Cambridge ประเทศอังกฤษ เมื่อตอนไปเป็นนักศึกษาแลกเปลี่ยน (Exchange Student) ที่สถาบันเทคโนโลยีแห่งรัฐแมสซาจูเซท (MIT) ประเทศสหรัฐอเมริกา

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

ขั้นตอนการพัฒนาโปรแกรม

ขั้นตอนการพัฒนาโปรแกรม
ขั้นตอนการพัฒนาโปรแกรม

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

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

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


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

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

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




ตัวอย่างการเขียนรหัสเทียมและผังงาน

ตัวอย่างการเขียนรหัสเทียมและผังงาน
รหัสเทียม
ผังงาน

ผังงาน Flowchart

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

2. ประเภทของผังงาน
ผังงาน แบ่งออกเป็น 2 ประเภทคือ ผังงานระบบ (System flowchart) และ ผังงานโปรแกรม (Program flowchart)

2.1 ผังงานระบบ (System flowchart)
หมายถึง ผังงานที่แสดงขั้นตอนการทำงานของระบบทั้งหมด แสดงถึงอุปกรณ์ในรับข้อมูล เอกสารเบื้องต้น สื่อบันทึกข้อมูล วิธีการประมวลผล สูตรที่ใช้ในการคำนวณ การแสดงผลลัพธ์และอุปกรณ์ที่ใช้แสดงผลลัพธ์ในแต่ละจุดของผังงาน เป็นแสดงการทำงานทั้งระบบอย่างกว้าง ๆ ไม่ละเอียด จึงไม่สามารถเขียนโปรแกรมจากผังงานระบบได้










2.2 ผังงานโปรแกรม (Program flowchart)
หมายถึง ผังงานที่แสดงขั้นตอนของคำสั่งการทำงานอย่างละเอียด โดยใช้สัญลักษณ์ในการเขียนผังงานเช่นเดียวกับการเขียนผังงานระบบ เป็นการวางแผนการเขียนโปรแกรมโดยผังงานโปรแกรมจะแสดงลำดับคำสั่งเป็นขั้นตอนในการปฏิบัติงานอย่างละเอียด การเขียนผังงานโปรแกรมก่อน จึงเขียนโปรแกรมตามผังงาน จะช่วยลดข้อผิดพลาดในการเขียนโปรแกรมลง ทำให้การเขียนโปรแกรมทำได้ง่ายและถูกต้องกว่าการเขียนโปรแกรมโดยไม่มีผังงาน





3. สัญลักษณ์ในการเขียนผังงาน
เป็นสัญลักษณ์ตามมาตรฐานของ ANSI (the ANSI flowchart symbols)
ยังมีสัญลักษณ์ของผังงานอีกหลายแบบที่ช่วยในการเขียนโปรแกรมให้สะดวกขึ้น โดยเฉพาะอย่างยิ่งในระบบคอมพิวเตอร์ที่มีการเชื่อมระบบคอมพิวเตอร์เป็นเครือข่าย

4 การจัดลำดับผังงาน
การเขียนโปรแกรมอย่างมีโครงสร้าง (Structured Programming) ช่วยให้การลำดับขั้นตอนการเขียนคำสั่งการทำงานถูกต้อง ไม่สับสน รูปแบบของผังงานเพื่อใช้ในการเขียนโปรแกรมอย่างมีโครงสร้างมี 4 แบบ คือ
       4.1 แบบตามลำดับ (Sequence structure)
       รูปแบบคือ การทำงานแต่ละคำสั่งจากคำสั่งหนึ่งไปยังอีกคำสั่งหนึ่งตามลำดับ
 









4.2 แบบทางเลือก (Selection structure)
     รูปแบบคือ เลือกทำตามคำสั่งตามเงื่อนไขที่กำหนด มี 2 แบบ คือ
          1) IF <เงื่อนไข> THEN <ทำคำสั่ง>
          2) If <เงื่อนไข> THEN <ทำคำสั่งที่ 1> ELSE <ทำคำสั่งที่ 2>
     รูปแบบ 1) IF <เงื่อนไข> THEN <ทำคำสั่ง>
 
 
 
 รูปแบบ 2) IF <เงื่อนไข> THEN <ทำคำสั่งที่ 1> ELSE <ทำคำสั่งที่ 2>
 



4.3 แบบวนรอบ (Loop structure)
    รูปแบบ การทำคำสั่งเดิมซ้ำการหลายรอบตามเงื่อนไขที่กำหนด มี 2 แบบคือ
    1) แบบ DOWHILE หมายถึง ทำคำสั่งซ้ำ ๆ กันในขณะที่เงื่อนไขเป็นจริง
    2) แบบ DOUNTIL หมายถึง ทำคำสั่งซ้ำ ๆ กันจนกระทั่งเงื่อนไขเป็นจริง

1) แบบ DOWHILE เป็นการทำงานซ้ำ ๆ กันภายใต้เงื่อนไขที่เป็นจริง จนกว่าเงื่อนไขจะเป็นเท็จ จึงจะหยุดทำงาน และออกไปทำคำสั่งต่อไป
   
2) แบบ DOUNTIL เป็นการทำงานซ้ำ ๆ กันภายใต้เงื่อนไขที่เป็นเท็จ จนกว่าเงื่อนไขที่กำหนดไว้จะเป็นจริง จึงจะหยุดและออกไปทำคำสั่งอื่นต่อไป
 
4.4 แบบ Case (Case structure)
    รูปแบบ ทางเลือกหลายทาง การใช้โครงสร้างแบบ CASE ในการเขียนผังงาน จะทำให้ดูง่ายกว่าการใช้แบบ Selection Structure


รหัสเทียม หรือซูโดโค้ด (Pseudo Code)

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

ความแตกต่างของ Algorithm และ Pseudo Code คือ การแสดงความคิดที่ได้จากการจินตนาการถึงขั้นตอน ซึ่งขั้นตอนที่อยู่ในความคิดก็คือ Algorithm ที่ผ่านการแยก และจัดลำดับแล้ว เมื่อนำเสนอก็อาจใช้ภาษาง่าย ๆ แต่หากนำเสนอด้วยการเขียนเป็นภาษาที่สื่อให้ทุกคนเข้าใจตรงกันได้ง่ายก็คือ Pseudo Code นั้นเอง สำหรับหนังสือหลายเล่มแสดง Algorithm ด้วย Pseudo Code ก็ยังเรียกว่า Algorithm ได้เช่นกัน

อัลกอริทึม (Algorithm)

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

ที่มาของคำว่าอัลกอริทึม (Algorithm) คือ คำที่ตั้งให้เป็นเกียรติแก่ อแลน เดอะ กอริทึม ทิวริง (Alan The Gorithm Turing) ผู้ค้นพบว่าการพิสูจน์ทางคณิตศาสตร์หรือปัญหาทางตรรกะ สามารถหาคำตอบได้ด้วยชุดของขั้นตอนวิธีที่ถูกต้อง

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

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

โครงสร้างข้อมูล (Data Structure)



โครงสร้างข้อมูล (Data Structure) คืออะไร
คือ รูปแบบของการจัดระเบียบของข้อมูล ซึ่งมีอยู่หลายรูปแบบ เช่น เขตข้อมูล(Field), แถวลำดับ(Array), ระเบียน(Record), ต้นไม้(Tree), ลิงค์ลิสต์(Link List) เป็นต้น
คือ รูปแบบวิธีการจัดระเบียบของข้อมูลที่ได้จากการดำเนินการทางคณิตศาสตร์(Operations) เพื่อให้สามารถจัดการกับข้อมูลที่ใช้กับระบบคอมพิวเตอร์ได้
คือ การรวบรวมข้อมูลเป็นกลุ่มอย่างมีรูปแบบ เพื่อให้การนำข้อมูลกลับมาใช้ หรือประมวลผลอย่างมีประสิทธิภาพ ด้วยขั้นตอนวิธีที่หลากหลาย แล้วนำเสนอได้อย่างถูกต้องรวดเร็วตามลักษณะงานที่ต้องการ
คือ การนำกลุ่มของข้อมูลขนาดใหญ่มาจัดรูปแบบ เพื่อให้เครื่องประมวลผลและแสดงผลอย่างมีขั้นตอน โดยเริ่มจากการรวบรวม เพิ่ม ลบ หรือเข้าถึงข้อมูลแต่ละรายการ


- บิท (Bit) คือ ข้อมูลที่มีขนาดเล็กที่สุด เป็นข้อมูลที่เครื่องคอมพิวเตอร์เข้าใจ และใช้งานได้ ได้แก่ 0 หรือ 1 
- ไบท์ (Byte) หรือ อักขระ (Character) คือ ตัวเลข หรือ ตัวอักษร หรือ สัญลักษณ์พิเศษ จำนวน 1 ตัว
- ฟิลด์ (Field) หรือ เขตข้อมูล คือ ไบท์ หรือ อักขระตั้งแต่ 1 ตัวขึ้นไปรวมกันเป็นฟิลด์ เช่น เลขประจำตัว หรือ ชื่อพนักงาน
- เรคคอร์ด (Record) หรือระเบียน คือ ฟิลด์ตั้งแต่ 1 ฟิลด์ขึ้นไป ที่มีความสัมพันธ์เกี่ยวข้องกันมารวมกัน
- ไฟล์ (File) หรือ แฟ้มข้อมูล คือ หลายเรคคอร์ดมารวมกัน เช่น ข้อมูลที่อยู่นักเรียนมารวมกัน
- ฐานข้อมูล (Database) คือ หลายไฟล์ข้อมูลมารวมกัน เช่น ไฟล์ข้อมูลนักเรียนมารวมกันในงานทะเบียน แล้วรวมกับไฟล์การเงิน


วันอังคารที่ 7 สิงหาคม พ.ศ. 2555

โปรแกรมตัดเกรด

#include<stdio.h>
 main(){
 int x=0;
 printf("TITINUN NUNTAPRAMOTE M.5-13 NO.13\n");
printf("// Input Score : ");
 scanf("%d",&x);
 printf("\n");
 while(x>100){
 printf("\nInput must < 100\n// Input Score : ");
 scanf("%d",&x);
 printf("\n");
 }
 if(x>=80)
 printf("Grade A");
 else if(x>=70)
 printf("Grade B");
 else if(x>=60)
 printf("Grade C");
 else if(x>=50)
 printf("Grade D");
 else
 printf("Grade 0");

getch();
 }