05-530-111 computer programming 1
DESCRIPTION
05-530-111 Computer Programming 1. บทที่ 1. ความรู้เบื้องต้นเกี่ยวกับการเขียนโปรแกรม. เนื้อหารายวิชา (Course Description). 05-530-111 Computer Programming 1. - PowerPoint PPT PresentationTRANSCRIPT
05-530-111Computer
Programming 1
05-530-111Computer
Programming 1
ความรู้� �เบื้�องต้�นเกี่��ยวกี่�บื้กี่ารู้เขี�ยนความรู้� �เบื้�องต้�นเกี่��ยวกี่�บื้กี่ารู้เขี�ยนโปรู้แกี่รู้มโปรู้แกี่รู้ม
บทท�� บทท�� 11
เนื้�อหารายวิ�ชา (Course Description)
กี่ารู้เขี�ยนผั�งงาน ภาษาสํ�าหรู้�บื้เขี�ยนโปรู้แกี่รู้ม ปรู้ะเภทขีอม�ลแบื้บื้ต้างๆ คาคงท�� ต้�วแปรู้ น%พจนและต้�วกี่รู้ะท�ากี่ารู้ ค�าสํ��งในกี่ารู้ควบื้ค)มกี่ารู้ท�างาน อารู้เรู้ย โปรู้แกี่รู้มยอยและอารู้กี่%วเมนต้ว%ธี�กี่ารู้น�าขีอม�ลเขีา-ออกี่ อยางงาย กี่ารู้เขี�ยนโปรู้แกี่รู้มเพ�อท�างานกี่�บื้แฟมขีอม�ล รู้�ปแบื้บื้กี่ารู้เขี�ยนโปรู้แกี่รู้มท��ดี� เทคน%คกี่ารู้แกี่ปญหาต้างๆ
05-530-111Computer Programming 1
การวิ�ดผลสั�มฤทธิ์��ในื้การเร�ยนื้ (Grading)
• กี่ารู้สํอบื้กี่ลางภาค 30%• กี่ารู้สํอบื้ปลายภาค 30%• กี่ารู้บื้�าน 10%• กี่ารู้สํอบื้ย/อย 10%• กี่ารู้สํอบื้ปฏิ%บื้�ต้%กี่ารู้ 20%
ผั�งงานท��ดี�ควรู้ม�ค)ณสํมบื้�ต้%ดี�งน��(1) ม�ความถู�กี่ต้�องต้รู้งกี่�บื้ความต้�องกี่ารู้(2) ควรู้ใช้�เวลาในกี่ารู้ปฏิ%บื้�ต้%งานน�อยท��สํ)ดี(3) สํ��น กี่รู้ะช้�บื้ รู้�ดีกี่)ม ม�เฉพาะขี��นต้อนท��จ�าเป5นเท/าน��น(4) ม�ความยดีหย)/น สํามารู้ถูใช้�ไดี�ท� �งในป7จจ)บื้�นและ
อนาคต้(5) ควรู้ใช้�เวลาในกี่ารู้พ�ฒนาน�อยท��สํ)ดี(6) ง/ายต้/อกี่ารู้ท�าความเขี�าใจ และกี่ารู้น�าไปใช้�งาน
การเขี�ยนื้ผ�งงานื้ การเขี�ยนื้ผ�งงานื้ (Flowchart)(Flowchart)การเขี�ยนื้ผ�งงานื้ การเขี�ยนื้ผ�งงานื้ (Flowchart)(Flowchart)
ผั�งงานกี่�บื้ช้�ว%ต้ผั�งงานกี่�บื้ช้�ว%ต้ปรู้ะจ�าว�นปรู้ะจ�าว�น
ต้�วอย/างผั�งต้�วอย/างผั�งงานงาน
ขี��นต้อนสํ/งขี��นต้อนสํ/งจดีหมายจดีหมาย
ต้�วอย/างผั�งงานต้�วอย/างผั�งงานกี่ารู้ถูอนเง%นจากี่ กี่ารู้ถูอนเง%นจากี่
ATMATM
ต้�วอย/างผั�งต้�วอย/างผั�งงานงาน
กี่ารู้ทานยากี่ารู้ทานยา
ผั�งผั�งรู้ะบื้บื้รู้ะบื้บื้
• หมายถู9ง ผั�งงานท��แสํดีงขี��นต้อนกี่ารู้ท�างานขีองรู้ะบื้บื้ ท��งหมดี
• แสํดีงถู9งอ)ปกี่รู้ณ:ในรู้�บื้ขี�อม�ล เอกี่สํารู้เบื้�องต้�น สํ�อ บื้�นท9กี่ขี�อม�ล ว%ธี�กี่ารู้ปรู้ะมวลผัล สํ�ต้รู้ท��ใช้�ในกี่ารู้
ค�านวณ กี่ารู้แสํดีงผัลล�พธี:และอ)ปกี่รู้ณ:ท��ใช้�แสํดีง ผัลล�พธี:ในแต้/ละจ)ดีขีองผั�งงาน
• เป5นแสํดีงกี่ารู้ท�างานท��งรู้ะบื้บื้อย/างกี่ว�าง ๆ ไม/ละเอ�ยดี
ต้�วอย/างผั�งรู้ะบื้บื้ค�านวณบื้�ญช้�เง%นต้�วอย/างผั�งรู้ะบื้บื้ค�านวณบื้�ญช้�เง%นเดีอนเดีอน
ต้�วอย/างผั�งรู้ะบื้บื้กี่ารู้จ/ายต้�วอย/างผั�งรู้ะบื้บื้กี่ารู้จ/ายเง%นเดีอนเง%นเดีอน
ผั�งผั�งโปรู้แกี่รู้มโปรู้แกี่รู้ม• เป5นเครู้�องมอ (Tools) ท��ใช้�อธี%บื้ายหรู้อแสํดีงขี��นต้อน
ขีองค�าสํ��งกี่ารู้ท�างานอย/างละเอ�ยดี• ใช้�สํ�ญล�กี่ษณ:ในกี่ารู้เขี�ยนผั�งงานเช้/นเดี�ยวกี่�บื้กี่ารู้เขี�ยนผั�ง
งานรู้ะบื้บื้• เป5นกี่ารู้วางแผันกี่ารู้เขี�ยนโปรู้แกี่รู้มโดียผั�งงานโปรู้แกี่รู้ม
จะแสํดีงล�าดี�บื้ค�าสํ��งเป5นขี��นต้อนในกี่ารู้ปฏิ%บื้�ต้%งานอย/างละเอ�ยดี
• สํ/วนใหญ/กี่ารู้เขี�ยนผั�งงานจะม�ล�กี่ษณะเป5นโครู้งสํรู้�าง(Structure Flowchart)
ผั�งโปรู้แกี่รู้มโครู้งสํรู้�าง
• 1 กี่ารู้ท�างานแบื้บื้เป5นล�าดี�บื้ (Sequence)• 2 กี่ารู้ท�างานแบื้บื้เลอกี่ท�า (Selection)
– หน9�งทางเลอกี่ (One Alternative)– สํองทางเลอกี่ (Two Alternative)– หลายทางเลอกี่ (Multiple-Alternative)
• 3. กี่ารู้ท�างานแบื้บื้ท�าซ้ำ��าหรู้อวนรู้อบื้ (Loop)– กี่ารู้ท�างานแบื้บื้ท�าซ้ำ��าแบื้บื้เง�อนไขีเป5นจรู้%ง (DO-WHILE)– กี่ารู้ท�างานแบื้บื้ท�าซ้ำ��าจนเง�อนไขีเป5นจรู้%ง (DO-UNTIL หรู้อ
REPEAT-UNTIL)– กี่ารู้ท�างานแบื้บื้ท�าซ้ำ��าต้ามจ�านวนรู้อบื้ท��รู้ะบื้) (FOR Loop)
Flow Chart Flow Chart แบื้บื้แบื้บื้ล�าดี�บื้ล�าดี�บื้
Flowchart Flowchart แบื้บื้แบื้บื้ทางเลอกี่ทางเลอกี่
• แบื้บื้ 1 ทางเลอกี่
ต้�วอย/าง ต้�วอย/าง Flowchart Flowchart แบื้บื้แบื้บื้ทางเลอกี่ทางเลอกี่
Flowchart Flowchart สํองสํอง ทางเลอกี่ ทางเลอกี่
ต้�วอย/างต้�วอย/าง Flowchart Flowchart สํองทางเลอกี่ สํองทางเลอกี่
Flowchart Flowchart หลายทางหลายทาง เลอกี่ เลอกี่
ต้�วอย/างต้�วอย/าง Flowchart Flowchart หลายทางเลอกี่ หลายทางเลอกี่
Flowchart Flowchart แบื้บื้ แบื้บื้switch, case switch, case
ต้�วอย/างต้�วอย/าง Flowchart Flowchart แบื้บื้ แบื้บื้ switch, caseswitch, case
Flowchart Flowchart แบื้บื้วนล�ป แบื้บื้วนล�ป ช้น%ดี ช้น%ดี Do-whileDo-while
Flowchart Flowchart แบื้บื้วนล�ป ช้น%ดี แบื้บื้วนล�ป ช้น%ดี Repeat-UntilRepeat-Until
Flowchart Flowchart แบื้บื้วนล�ป ช้น%ดี แบื้บื้วนล�ป ช้น%ดี -For Loop-For Loop
ปรู้ะโยช้น:ขีองผั�งปรู้ะโยช้น:ขีองผั�งงานงาน
• 1. ล�าดี�บื้ขี��นต้อนกี่ารู้ท�างานขีองโปรู้แกี่รู้ม และ สํามารู้ถูน�าไปเขี�ยนโปรู้แกี่รู้มไดี�โดียไม/สํ�บื้สํน
• 2. ต้รู้วจสํอบื้ความถู�กี่ต้�อง และแกี่�ไขีโปรู้แกี่รู้มไดี� ง/าย เม�อเกี่%ดีขี�อผั%ดีพลาดี
• 3. กี่ารู้ปรู้�บื้ปรู้)ง เปล��ยนแปลง แกี่�ไขี ท�าไดี�อย/าง สํะดีวกี่และรู้วดีเรู้<ว
• 4. ท�าให�ผั��อ�นสํามารู้ถูศึ9กี่ษากี่ารู้ท�างานขีองโปรู้แกี่รู้ม ไดี�อย/างง/าย และรู้วดีเรู้<วมากี่ขี9�น
ว%ธี�กี่ารู้เขี�ยนผั�งงานว%ธี�กี่ารู้เขี�ยนผั�งงานท��ดี�ท��ดี�
• 1. ใช้�สํ�ญล�กี่ษณ:ต้ามท��กี่�าหนดีไว�• 2. ใช้�ล�กี่ศึรู้แสํดีงท%ศึทางกี่ารู้ไหลขีองขี�อม�ลจากี่บื้นลงล/าง หรู้อจากี่
ซ้ำ�ายไปขีวา• 3. ค�าอธี%บื้ายในภาพสํ�ญล�กี่ษณ:ผั�งงานควรู้สํ��นกี่ะท�ดีรู้�ดี และเขี�าใจ
ง/าย• 4. ท)กี่แผันภาพต้�องม�ล�กี่ศึรู้แสํดีงท%ศึทางเขี�า - ออกี่• 5. ไม/ควรู้โยงเสํ�นเช้�อมผั�งงานท��อย�/ไกี่ลมากี่ ๆ ควรู้ใช้�สํ�ญล�กี่ษณ:จ)ดี
เช้�อมต้/อแทน• 6. ผั�งงานควรู้ม�กี่ารู้ทดีสํอบื้ความถู�กี่ต้�องขีองกี่ารู้ท�างานกี่/อนน�าไป
เขี�ยนโปรู้แกี่รู้มจรู้%ง
• กี่ารู้โปรู้แกี่รู้ม (programming) เป5นกี่ารู้แกี่�ป7ญหาโดียใช้�คอมพ%วเต้อรู้:
• กี่ารู้โปรู้แกี่รู้มปรู้ะกี่อบื้ดี�วย 2 สํ/วน ไดี�แกี่/– อ�ลกี่อรู้%ท9ม– กี่ารู้ coding program
ภาษาคอมพิ�วิเตอร$(Computer Language)
• ภาษาเครู้�อง (Machine Language)• ภาษาแอสํเซ้ำ<มบื้ล� (Assembly
Language)• ภาษารู้ะดี�บื้สํ�ง (High-Level Language)
เครู้�องคอมพ%วเต้อรู้:สํามารู้ถูปรู้ะมวลผัลไดี�จากี่ภาษาเครู้�องเท/าน��น!
การแปลภาษาSource Program Executable ProgramCompiler
#include <stdio.h>void main( ) {
printf(“Hello”);getch();
}
Test.c
การแปลภาษา• ม� 2 ช้น%ดี คอ
–Compiler ท�ากี่ารู้อ/านโปรู้แกี่รู้มท��งหมดีในครู้��งเดี�ยว จากี่น��นท�ากี่ารู้แปลเป5น executable program
–Interpreter ท�ากี่ารู้อ/านแล�วแปลท�ละ 1 ค�าสํ��ง(บื้รู้รู้ท�ดี)
แนื้ะนื้(าภาษาซี�• ภาษาโปรู้แกี่รู้ม (Programing Language)
–คอภาษาท��ถู�กี่ค%ดีค�นขี9�นมาใช้�กี่�บื้คอมพ%วเต้อรู้:–ป7จจ)บื้�นม�หลายพ�นภาษา แต้/ภาษาท��เป5นท��รู้� �จ�กี่
และเป5นท��น%ยมใช้�ท��วไปน��นอาจจะม�เพ�ยงหลายสํ%บื้ภาษา
–แต้/ละภาษา สํรู้�างขี9�นดี�วยว�ต้ถู)ปรู้ะสํงค:ท��แต้กี่ต้/างกี่�นและม�จ)ดีเดี/นขีองภาษาท��ต้/างกี่�น
แนื้ะนื้(าภาษาซี� (ต*อ)
แนื้ะนื้(าภาษาซี� (ต*อ)•ภาษาซ้ำ� (C Programming Language)
– เป5นภาษาเช้%งโครู้งสํรู้�างท��ม�กี่ารู้ออกี่แบื้บื้โปรู้แกี่รู้มในล�กี่ษณะโมดี�ลท��ม�จ)ดีเดี/นในเรู้�อง•ปรู้ะสํ%ทธี%ภาพดี�านความเรู้<วขีองกี่ารู้ท�างาน •ความยดีหย)/นสํ�งในกี่ารู้เขี�ยนโปรู้แกี่รู้ม
ควิามเร+วิขีองแต*ละภาษา
ประวิ�ต�ควิามเป,นื้มา• ภาษาซ้ำ�ไดี�รู้�บื้กี่ารู้พ�ฒนาขี9�นโดีย เดีนน%สํ รู้%ทช้�
(Dennis Ritchie) ขีณะท��ท�างานอย�/ท��เบื้ลแล<บื้บื้อรู้าทอรู้� (Bell Laboratories) โดียพ�ฒนาขี9�นจากี่หล�กี่กี่ารู้พ�นฐานขีองภาษาบื้� (B) และบื้�ซ้ำ�พ�แอล (BCPL) ในช้/วงป? ค.ศึ .1971ถู9ง 1973 โดียไดี�เพ%�มช้น%ดีขี�อม�ลและความสํามารู้ถูอ�น ๆ ให�มากี่ขี9�น
ประวิ�ต�ควิามเป,นื้มา (ต*อ)
B
BCPL
C
Dennis Ritchie
ร-ปแบบโปรแกรมภาษาซี�• ในกี่ารู้เขี�ยนภาษาโปรู้แกี่รู้ม ผั��เขี�ยนโปรู้แกี่รู้ม
จะต้�องศึ9กี่ษา รู้�ปแบื้บื้พ�นฐานขีองภาษา และ ไวยากี่รู้ณ: ขีองภาษาน��น รู้�ปแบื้บื้พ�นฐานขีองภาษาจะเขี�ยนโปรู้แกี่รู้มในล�กี่ษณะขีองโมดี�ล คอม�กี่ารู้แบื้/งออกี่เป5นสํ/วนย/อย ๆ ท��เรู้�ยกี่ว/า ฟ7งกี่:ช้�น (Function)
กระบวินื้การท��สั(าค�ญ ในื้การเขี�ยนื้โปรแกรม
กี่รู้ะบื้วนกี่ารู้ ท��สํ�าค�ญ ในกี่ารู้เขี�ยนโปรู้แกี่รู้ม คอ – กี่ารู้รู้�บื้ขี�อม�ล – กี่ารู้ปรู้ะมวลผัลขี�อม�ล – กี่ารู้แสํดีงผัลขี�อม�ล
การร�บขี0อม-ล การประมวิลผลขี0อม-ลการแสัดงผลขี0อม-ล
ต�วิอย*างโปรแกรมภาษาซี�เบ�องต0นื้ #include <stdio.h>
() { /*
*
(“ .”);}
My first program.
สั*วินื้ประกอบขีองโปรแกรมภาษาซี�เบ�องต0นื้
#include <stdio.h> () {
/* *
(“ .”);}
Header
สั*วินื้ประกอบท�� 1 สั*วินื้ห�วิ (Header)
• เป5นสํ/วนท��อย�/ท��ต้อนต้�นขีองโปรู้แกี่รู้ม โดียอย�/นอกี่สํ/วนท��เรู้�ยกี่ว/าฟ7งกี่:ช้�น จะปรู้ะกี่อบื้ดี�วยค�าสํ��งท��เป5นกี่ารู้กี่�าหนดีค/าหรู้อกี่�าหนดีต้�วแปรู้ต้/าง ๆ
• เป5นค�าสํ��งท��ขี9�นต้�นดี�วยสํ�ญล�กี่ษณ: “ # ” • เรู้�ยกี่ว/า ต้�วปรู้ะมวลผัลกี่/อน (Preprocessor) ซ้ำ9�ง
กี่<คอค�าสํ��งท��จะไดี�รู้�บื้กี่ารู้ท�ากี่/อนท��จะม�กี่ารู้คอมไพล:โปรู้แกี่รู้ม
ต�วิประมวิลผล• ต้�วปรู้ะมวลผัลกี่/อนท��สํ�าค�ญขีองภาษาซ้ำ�แบื้/งออกี่เป5น 2
ปรู้ะเภทดี�งน�� # include
•เป5นฟ7งกี่:ช้�นมาต้รู้ฐานท��ผั��ผัล%ต้คอมไพเลอรู้:ไดี�จ�ดีเต้รู้�ยมไว�ให� ซ้ำ9�งผั��เขี�ยนโปรู้แกี่รู้มสํามารู้ถูเรู้�ยกี่ใช้�งานไดี�ท�นท� โดียไม/ต้�องเขี�ยนโปรู้แกี่รู้มแกี่รู้มเอง ต้�วอย/างเช้/น #include <stdio.h>
# define•ใช้�สํ�าหรู้�บื้กี่�าหนดีค/าคงท�� •ต้�วอย/างเช้/น # 1define YES
สั*วินื้ประกอบขีองโปรแกรมภาษาซี�เบ�องต0นื้(ต*อ)
#include <stdio.h> () {
/* *
(“ .”);}
Main Program
สั*วินื้ประกอบท�� 2 ฟั2งก$ช�นื้ (Function)
• สํ/วนขีองฟ7งกี่:ช้�นคอสํ/วนขีองค�าสํ��งท��บื้อกี่ให�คอมพ%วเต้อรู้:ท�างานต้/าง ๆ เช้/น กี่ารู้รู้�บื้ขี�อม�ล กี่ารู้ค�านวณ กี่ารู้แสํดีงผัล เป5นต้�น
• โปรู้แกี่รู้มภาษาซ้ำ�จะปรู้ะกี่อบื้ดี�วยฟ7งกี่:ช้�นย/อยหลาย ๆ ฟ7งกี่:ช้�น แต้/จะม�ฟ7งกี่:ช้�นหล�กี่ฟ7งกี่:ช้�นหน9�งท��ช้�อว/า ฟ7งกี่:ช้�น ( ) เสํมอ โดียท��กี่ารู้ท�างานขีองโปรู้แกี่รู้มจะต้�องเรู้%�มกี่ารู้ท�างานจากี่ฟ7งกี่:ช้�นน��
กฎพิ�นื้ฐานื้ท��สั(าค�ญในื้ภาษาซี�• กี่ารู้พ%มพ:ต้�วอ�กี่ษรู้ต้�วพ%มพ:ใหญ/และต้�วพ%มพ:เล<กี่ใน
ภาษาซ้ำ�น��นในผัลล�พธี:ท��แต้กี่ต้/างกี่�น• ฟ7งกี่:ช้�น ขีองภาษาซ้ำ�จะแบื้/งขีอบื้เขีต้ขีองฟ7งกี่:ช้�นแต้/ละฟ7งกี่:ช้�นดี�วย
เครู้�องหมาย “ { } ”
• ค�าสํ��งต้/างๆ ต้�องเขี�ยนอย�/ในฟ7งกี่:ช้�นเสํมอ• ค�าสํ��งในภาษาซ้ำ�จะต้�องป@ดีท�ายดี�วยเครู้�องหมาย “ ; ” (Semicolon)
สั*วินื้ประกอบขีองโปรแกรมภาษาซี�เบ�องต0นื้(ต*อ)
#include <stdio.h> () {
/* *
(“ .”);}
Statement
Comment
• หากี่ผั��ใช้�ต้�องกี่ารู้ใสํ/ค�า อธี%บื้ายลงในโปรู้แกี่รู้ม กี่<สํามารู้ถูท�าไดี�โดียใช้�สํ%�งท��เรู้�ยกี่ว/า Comment
• ขี�อความใดี ๆ ท��อย�/ในขีอบื้เขีต้ขีองเครู้�องหมายดี�งกี่ล/าวจะไม/ถู�กี่แปลโดียคอมไพเลอรู้: โดียท��วไปจะม�กี่ารู้ใช้ Comment เพ�ออธี%บื้ายว/าโปรู้แกี่รู้มน��นท�างานอะไรู้
• ขีอบื้เขีต้ขีอง Comment จะขี9�นต้�นต้��งแต้/ “ */ ” จนกี่รู้ะท��งถู9ง “ */ ” ในกี่รู้ณ�ท��ม�หลายบื้รู้รู้ท�ดี – สํ�าหรู้�บื้ในกี่รู้ณ�บื้รู้รู้ท�ดีเดี�ยวจะใช้� “ // ” ต้ามดี�วยขี�อความ
สั*วินื้ประกอบขีองโปรแกรมภาษาซี�เบ�องต0นื้(ต*อ)
#include <stdio.h> () {
/* *
(“ .”);}
Comment
การท(างานื้ขีองภาษาซี�#include<stdio.h>void main(){ printf(“Hello world!!”);}
Ccompiler
1010001001110100110011101010101010110010110101101111000100100101111000110010100100100
เร��มต0นื้ท(าการเร�ยงค(าสั��งท��ต0องการแล0วิบ�นื้ท5ก
เป,นื้นื้ามสัก6ล .c
หล�งจากี่ compiler ท�ากี่ารู้แปลภาษาแล�ว
compiler จะสํรู้�างไฟล:ท��เครู้�องคอมพ%วเต้อรู้:
สํามารู้ถูน�าไปปรู้ะมวลผัลไดี�
ต�วิแปร• กี่ารู้ท�างานขีองโปรู้แกี่รู้มขีณะใดีขีณะหน9�ง จะต้�องม�
กี่ารู้เกี่<บื้ขี�อม�ลไว�ในคอมพ%วเต้อรู้
ขี�นื้ตอนื้การท(างานื้ขีองการเก+บค*าต�วิแปร
หนื้*วิยควิามจำ(า
อ6ปกรณ์$แสัดงผล
หนื้*วิยประมวิลผล
ร�บขี0อม-ลจำากอ6ปกรณ์$ร�บขี0อม-ล
แบบจำ(าลองการบวิกเลขีในื้คอมพิ�วิเตอร$
• พ%จารู้ณาจากี่ต้�วอย/างกี่ารู้บื้วกี่เลขีโดียรู้�บื้ขี�อม�ลมาจากี่ผั��ใช้�
0
1
2
3
แบบจำ(าลองการบวิกเลขีในื้คอมพิ�วิเตอร$
• รู้�บื้ขี�อม�ลมาจากี่ผั��ใช้�และน�าไปเกี่<บื้อย�/ในหน/วยความจ�าต้�าแหน/งท�� 0 ม�ค/า 15
0
1
2
3
15
แบบจำ(าลองการบวิกเลขีในื้คอมพิ�วิเตอร$
• รู้�บื้ขี�อม�ลมาจากี่ผั��ใช้�และน�าไปเกี่<บื้อย�/ในหน/วยความจ�าต้�าแหน/งท�� 1 ม�ค/า 30
0
1
2
3
15
30
แบบจำ(าลองการบวิกเลขีในื้คอมพิ�วิเตอร$
• หากี่ต้�องกี่ารู้บื้วกี่น�าค/าท��ง 2 มาบื้วกี่กี่�นและเกี่<บื้ไว�ท��ต้�าแหน/งท�� 2
0
1
2
3
15
30
สํมมต้%ดี�งต้�วอย/าง Add 0 , 1 , 2 คอกี่ารู้เอาค/า ณ ต้�าแหน/งท�� 0 และ 1 มาบื้วกี่กี่�น และน�าไปเกี่<บื้ท��ต้�าแหน/งท�� 2
45
0Add , 1 2,
แบบจำ(าลองการบวิกเลขีในื้คอมพิ�วิเตอร$
• ในความเป5นจรู้%งต้�าแหน/งต้/าง ๆ ไม/ไดี�อ�างดี�วยเลขี 01 หรู้อ 2 แต้/อ�างดี�วยรู้ะบื้บื้กี่ารู้อ�างท��อย�/ซ้ำ9�งเป5นรู้ะบื้บื้ซ้ำ�บื้ซ้ำ�อนกี่ว/า กี่ารู้เขี�ยนในล�กี่ษณะท��เห<นในต้�วอย/าง ( Add 0 , 1 , 2 ) เป5นกี่ารู้เขี�ยนในภาษาคอมพ%วเต้อรู้:ย)คแรู้กี่ เช้/น แอสํเซ้ำมบื้ล� ()
แบบจำ(าลองการบวิกเลขีโดยอ0างช��อต�วิแปร
• เพ�อความสํะดีวกี่ในกี่ารู้อ�างถู9งขี�อม�ล ณ ต้�าแหน/งต้/าง ๆ ในหน/วยความจ�าจ9งไดี�ม�กี่ารู้พ�ฒนากี่�นต้/อมา จนกี่รู้ะท��งเป5นกี่ารู้อ�างในรู้ะบื้บื้ขีองช้�อต้�วแปรู้ () ท��ใช้�ในป7จจ)บื้�น
แบบจำ(าลองการบวิกเลขีโดยอ0างช��อต�วิแปร
• พ%จารู้ณาจากี่ต้�วอย/างต้/อไปท��จะใช้�รู้ะบื้บื้ช้�อต้�วแปรู้ ผั��เขี�ยนโปรู้แกี่รู้มสํรู้�างต้�วแปรู้ขี9�นมาจะเกี่%ดีกี่ารู้จองพ�นท��ในหน/วยความจ�าให�โดียอ�ต้โนม�ต้% ผั��ใช้�ไม/จ�าเป5นต้�องรู้� �ว/าต้�วแปรู้น��นอย�/ท��ต้�าแหน/งใดี
แบบจำ(าลองการบวิกเลขีโดยอ0างช��อต�วิแปร
a
b
c
15
30a
b
c
15
30
45c = a + b;
แบบจำ(าลองการบวิกเลขีโดยอ0างช��อต�วิแปร
• กี่ารู้อ�างถู9งช้�อต้�วแปรู้คอกี่ารู้อ�างถู9งขี�อม�ล ในหน/วยความจ�า เพรู้าะฉะน��นหากี่ผั��ใช้�สํรู้�างต้�วแปรู้ a และ b เพ�อเกี่<บื้ขี�อม�ล
15 และ 20 ต้ามล�าดี�บื้ เม�อต้�องกี่ารู้หาผัลบื้วกี่และน�าค/าไปเกี่<บื้ไว�ท��หน9�ง กี่<สํรู้�างต้�วแปรู้ขี9�นมาเพ�อเกี่<บื้ผัลล�พธี:สํมมต้%ช้�อว/า c กี่ารู้สํ��งให�ท�างานกี่<สํามารู้ถูท�าไดี�โดียใช้�ค�าสํ��ง
c = a + b ซ้ำ9�งอ/านไดี�เขี�าใจไดี�ง/ายกี่ว/าค�าสํ��ง add 0, 1, 2
Example
#include <stdio.h>void main( ) {
/* add a and b assign to c */int a,b,c;a = 5;b = 10;c = a + b;printf(“ Answer = %d ",c);getch();
}