Lesson1
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Lesson1

on

  • 1,059 views

C Lesson 1

C Lesson 1

Statistics

Views

Total Views
1,059
Views on SlideShare
947
Embed Views
112

Actions

Likes
0
Downloads
13
Comments
0

3 Embeds 112

http://localhost 94
http://krutonbpl.wordpress.com 11
http://krusoso.wordpress.com 7

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Lesson1 Document Transcript

  • 1. ! บทที่ 1 แนะนําภาษา C++ เบองตน ้ื ♦!ประวตภาษา C , C++ ั ิ ค.ศ. 1970 มีการพัฒนาภาษา B โดย Ken Thompson ซึ่งทางานบนเครือง DEC PDP-7 ซึ่ง ํ ่ทางานบนเครืองไมโครคอมพิวเตอรไมได และยังมีขอจํากัดในการใชงานอยู (ภาษา B สืบทอดมาจาก ํ ่ภาษา BCPL ซงเขยนโดย Marth Richards) ่ึ ี ค.ศ. 1972 Dennis M. Ritchie และ Ken Thompson ไดสรางภาษา C เพื่อเพิ่มประสิทธิภาพภาษา B ใหดียิ่งขึ้น ในระยะแรกภาษา C ไมเ ปนทนยมแกนกโปรแกรมเมอรโดยทวไปนก  ่ี ิ  ั  ่ั ั ค.ศ. 1978 Brian W. Kernighan และ Dennis M. Ritchie ไดเ ขยนหนงสอเลมหนงชอวา The C ี ั ื  ่ึ ่ื Programming Language และหนังสือเลมนี้ทาใหบุคคลทั่วไปรูจักและนิยมใชภาษา C ในการเขียน ํโปรแกรมมากขน ้ึ แตเ ดมภาษา C ใช Run บนเครืองคอมพิวเตอร 8 bit ภายใตระบบปฏิบัติการ CP/M ของ IBM ิ ่PC ซึ่งในชวงป ค. ศ. 1981 เปนชวงของการพัฒนาเครืองไมโครคอมพิวเตอร ภาษา C จึงมี ่บทบาทสําคัญในการนํามาใชบนเครอง PC ตังแตนนเปนตนมา และมีการพัฒนาตอมาอีกหลาย ๆ คาย  ่ื ้ ้ัดงนนเพอกาหนดทิศทางการใชภาษา C ใหเปนไปแนวทางเดียวกัน ANSI (American National Standard ั ้ั ่ื ํInstitute) ไดกาหนดขอตกลงทเ่ี รยกวา 3J11 เพื่อสรางภาษา C มาตรฐานขนมา เรียนวา ANSI C ํ  ี  ้ึ ค.ศ. 1983 Bjarne Stroustrup แหงหองปฏบตการเบล (Bell Laboratories) ไดพัฒนาภาษา C++   ิ ั ิขึ้นรายละเอียดและความสามารถของ C++ มีสวนขยายเพิ่มจาก C ที่สาคัญ ๆ ไดแก แนวความคิดของการ ํเขียนโปรแกรมแบบกําหนดวตถเุ ปาหมายหรอแบบ OOP (Object Oriented Programming) ซงเปนแนว ั  ื ่ึ การเขียนโปรแกรมที่เหมาะกับการพัฒนาโปรแกรมขนาดใหญที่มีความสลับซับซอนมาก มีขอมูลที่ใชในโปรแกรมจํานวนมาก จงนยมใชเ ทคนคของการเขยนโปรแกรมแบบ OOP ในการพัฒนาโปรแกรมขนาด ึ ิ ิ ีใหญในปจจบนน้ี  ุ ั♦! อดของภาษา C และ C++ ข ี โปรแกรมเมอรโดยทวไปในปจจบนนยมพัฒนาโปรแกรมดวยภาษา C และ C++ ดวยเหตผล  ่ั  ุ ั ิ   ุดังนี้ 1. โปรแกรมเมอรสามารถสรางโปรแกรมทีควบคุมการทํางานของคอมพิวเตอรและการโตตอบ ่ระหวางผูใชกับคอมพิวเตอรไดอยางเต็มประสิทธิภาพ เชน การเขียนโปรแกรมในลักษณะที่ผูใชควบคุม โปรแกรมในสภาพแวดลอม ที่เปน Event-Driven คือ ผูใชสามารถควบคุมเหตุการณตาง ๆ ของโปรแกรมศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้!
  • 2. ! 2ในขณะทํางานไดไมใชผูใชถูกควบคุมโดยโปรแกรม ลักษณะการทางานแบบ Event-Driven ไดแก ํโปรแกรมททางานในสภาพแวดลอมภายใตระบบปฏิบัติการวินโดวส เปนตน ่ี ํ 2. ภาษา C และ C++ มีประสิทธิภาพของภาษาอยูในระดับที่ใกลเคียงกับภาษา Assembly มากที่สุด แตมความยดหยนในยดตดกบฮารดแวรคอมพวเตอรหรอ Microprocessor รุนใดรุนหนึง ทาใหสามารถ  ี ื ุ ึ ิ ั   ิ  ื   ่ ํนําโปรแกรมที่สรางขึ้นไปทํางานไดกบเครองคอมพวเตอรไดทกรน  ั ่ื ิ   ุ ุ 4. ภาษา C++ สนับสนุนการเขียนโปรแกรมในลักษณะเชิงวัตถุหรือ OOP (Object OrientedProgramming) ซงเปนเทคนคการเขยนโปรแกรมทนยมใชเ ขยนโปรแกรมขนาดใหญทมจํานวนขอมูลใน ่ึ  ิ ี ่ี ิ ี  ่ี ีโปรแกรมมาก 5. โปรแกรมเมอรสวนใหญจะนยมใชภาษา C, C++ พฒนาโปรแกรมประยกตในงานดานตาง ๆ   ิ  ั ุ   เปนจํานวนมากในปจจุบัน เพราะประสิทธิภาพของภาษาที่ไดเปรียบภาษาอื่น ๆ ♦!ขนตอนการพฒนาโปรแกรมดวย C++ ้ั ั  การพฒนาโปรแกรมดวยภาษา C++ มีขั้นตอนในการสรางคลายกับภาษาระดับสูงทั่วไป แตภาษา ั  C++ ไดจดเตรียมเครืองมือในการพัฒนาโปรแกรมในสภาพแวดลอมทีรวมไวดวยกันแบบเบ็ดเสร็จ ที่เรียก ั ่ ่ วา IDE (Integrated Development Environment) คือ ไดนาเครืองมือทีจาเปนทงหมดในการพฒนา  ํ ่ ่ ํ  ้ั ัโปรแกรมมารวมไว ดวยกัน ทั้ง Editor, Compiler, Link Library และ Help เพื่อความสะดวกของผูใชในขณะทาการพฒนาโปรแกรม ํ ั การพฒนาโปรแกรมดวยภาษา C++ มีขั้นตอนตามลําดบ ดังนี้ ั  ั 1. ขนตอนการสราง Source File หรอแฟมตนฉบบเปน Text File โดยการใชสวน Editor ของ ้ั  ื   ั IDE (หรอสรางจาก Editor ของโปรแกรมอืน ๆ ก็ได) เมอสรางเสรจ แลวจึงบันทึก Source File ไว โดย ื  ่ ่ื  ็กําหนดสวนขยายเปน CPP เชน TEST.CPP (C Plus Plus) โดย Source File นจะตองสรางใหถกตองตาม  ้ี    ู โครงสรางและไวยากรณของภาษา C++ ทั้งหมดกอน 2. การคอมไพล (Compile) คือการใชตวโปรแกรมหรือ Compiler ของ C++ ในการแปล Source ัFile ใหเปนไฟลภาษาเครื่องที่เรียกวา Object File หรือ Object Code จะไดไฟลที่มีสวนขยายเปน OBJเพิ่มขึ้นมาอีกหนึ่งไฟล เชน TEST.OBJ  3. การเชอมโยง (Linking) เปนขนตอนการเชอมโยงไฟลประเภท OBJ เขากับแฟมจากคลัง ่ื  ้ั ่ื (Library) ของภาษา C++ จํานวน 1 แฟมหรือมากกวา ซึ่งไฟลใน Library นจดเตรยมไวโดยผสรางภาษา ้ี ั ี  ู C++ ผลก็คือจะไดผลลัพธเปนไฟลที่สามารถนําไปทางาน หรือ Run ไดโดยอสระ หรือทีเ่ รียกวา ํ  ิExecutable File มีสวนขยายเปน EXE เชน TEST.EXE เปนตน  ขันตอนของการสราง Source File , การ Compile และการ Link ทั้งหมดจะดําเนนการไดใน ้ ิ IDE ของ C++ ทจดเตรยมไวใหแลวอยางอตโนมติ ทาใหผูเขียนโปรแกรมสามารถทําสรางโปรแกรมดวย ่ี ั ี     ั ั ํ  ภาษา C++ สะดวกยิ่งขึ้นศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 3. ! 3 ! Source File C++ Library File ! TEST.CPP ! iostream.h, conio.h ! Compile ! Object File ! Executable File Link ! TEST.OBJ ! TEST.EXE ! รูปแสดง ขันตอนการพัฒนาโปรแกรมดวย C++ ้♦!การใช IDE ของ C++ ในการพฒนาโปรแกรมดวยภาษา C++ โดยใช Turbo C++ Version 3.0 มี ซงไดจดเตรยมเครอง ั  ่ึ  ั ี ่ืมือในการพัฒนาโปรแกรมทีเ่ รียกวา IDE มาใหแลว ลักษณะการใชงานใน IDE มีความคลายคลึงกับEditor ของภาษาระดับสูงอื่น ๆ เชน BASIC, PASCAL  การเรยกใช IDE ของ C++ ใหเขาเรียกใชไฟล TC.EXE ดังนี้ ี C:TC>TC แลวกดแปน Enter หรือ C:TCBIN>TC แลวกดแปน Enter (กรณี TC.EXE อยูใน path C:TCBIN) โปรแกรมสภาพแวดลอมของ IDE ดังนี้จอภาพตอไปนี้ ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 4. ! 4 การเปด IDE ของ TURBO C++ version 3.0 ในระบบปฏิบัติการ Windows95 ในลักษณะหนาตางแบบ Graphic ก็สามารถทํางานไดเชนเดียวกัน โดยการเลอกโปรแกรม MS-DOS Prompt จากเมนู ืของ Windows95 เมอเครองหมาย prompt ของ DOS ปรากฏขึ้นแลว ก็ใหเปลี่ยน directory ไปยัง path ่ื ่ืของ Turbo C++ ดังนี้ C:>cdtc [enter] C:TC>TC [enter] เพื่อ run program จะปรากฎ IDE ของ Turbo C++ ดังภาพขางลางในรูปแบบ Graphic windows (ถาไมเปนดังภาพให กดแปน Alt+Enter เพื่อสลับการแสดงผลระหวาง Graphic window กับ IDE แบบเดม ิศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 5. ! 5 ! พิมพ Code ของภาษา C++ ใน ! Editor นี้♦!ตัวอยางวิธการเขียนโปรแกรมและ Compile ดวย C++ ี จากตวอยาง Source File ตอไปน้ี ใหทดลองสรางโปรแกรมภาษา C++ โดยใช IDE ของ ั  Turbo C++ 3.0 ของบรษท Borland International, Inc. (หรออาจใช C++ ของบริษทอืน ๆ ) ิ ั ื ั ่/*Program : First.CPP Written by: Mr.Sirichai Date : 10/1997 */ #include <iostream.h> void main(void) { cout << "My name is Mr.Sirichai Namburi n"; cout << "Office : Computer Department,RIPA"; }ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 6. ! 6 ขนท่ี 1 สราง Source File ใน Editor โดยการ Click Mouse ในหนาตาง Editor แลวพิมพ รหัส ้ั  คําสั่งของภาษา C++ ตามตัวอยางใหถูกตอง ขนท่ี 2 บันทึกแฟม Source File โดยใชคาสั่งเมนู File, Save เลือกหรือพิมพชื่อไดรฟและ ้ั ํไดเรกทอรี่ จากนั้นพิมพชื่อไฟล First.CPP แลว Click ปุมคาสั่ง OK หรือใชฟงกชันคีย F2 เพื่อสั่ง ํบันทึกแฟมก็ได (ถาตองการเขยนเปนภาษา C ใหบันทึกเปนไฟลเปนประเภท C เชน First.C)   ี   ขนท่ี 3 ใชคาสั่งสั่ง Run, Run หรือ Ctrl+F9 เพอทาการ Compile , Link และทดลอง Run ้ั ํ ่ื ํโปรแกรมทีสรางขึนเพือทํางาน จากนั้นกดแปน Alt+F5 เพอดผลการทํางานของโปรแกรมในหนาตาง ่ ้ ่ ่ื ู  ผลลัพธ (User Screen) ผลการทํางานจากโปรแกรม หรอผลการ RUN ไดดงน้ี ื ั My name is Mr.Sirichai Namburi Office : Computer Department,RIPA ขนท่ี 4 กรณีมีขอผิดพลาด IDE ของ C++ จะไมสามารถทําการ Compile ได จะแจงขาวสารขอผด ้ั    ิพลาดไวในกรอบหนาตาง Message จะตองแกไขใหถูกตองกอน แลวจึงดําเนนการในขนท่ี 3 ใหม ิ ้ั♦!ครงสรางของโปรแกรม C++ โ การเขียนโปรแกรมดวย C++ มีโครงสรางของโปรแกรมพืนฐานดังตัวอยาง ้/*Program : First.CPP Written by: Mr.Sirichai 1. หมายเหตุหรือคําอธิบาย (comments) Date : 10/1997 */ #include <iostream.h> 2. Preprocessor, Directive, header file void main() 3. Function main() { cout << "My name is Mr.Sirichai Namburi n"; 4. Statement ของคําสั่งอยูใน block ของ cout << "Office : Computer Department,RIPA"; เครืองหมาย{ …. }แตละ Statement จบดวย ; ่  } สวนประกอบเบื้องตนของ C++ มีดังนี้ 1. Comments or Remark หมายถงสวนทเ่ี ปนการอธบายหรอหมายเหตในโปรแกรม เขียน ึ   ิ ื ุอธิบายไวในเครื่องหมาย /* ………*/ หรอเขยนตามหลงเครองหมาย // ก็ได ในขณะที่แปล Compiler ื ี ั ่ืของ C++ จะไมนาไปแปลดวย แตตองเขยน Comments อยูภายในเครื่องหมายใหถูกตอง โดยที่ /*…..*/ ํ   ีศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 7. ! 7มักใชกับ Comment หลาย ๆ บรรทด สวน // ใชกับการ Comments ตามหลัง Statement เปนสวนใหญ ั  เชน  /*Program : First.CPP Written by: Mr.Sirichai หมายเหตุหรือคําอธิบาย Date : 10/1997 */ หรือ cout << "My name is Mr.Sirichai Namburi n"; // display text to screen 2. #include <iostream.h> บรรทัดทีขนตนดวย # นีจะตองมีเสมอในทุกโปรแกรม เรยกวา ่ ้ึ ้ ี preprocessor เรยกคําวา include ทตามเครองหมาย # นีวา directive และชื่อไฟลที่อยูในเครื่องหมาย ี ่ี ่ื ้<…..> (จะใชเ ครองหมาย “……” แทนก็ได) เรยกวา header file หรือ include file ซึ่งเปนไฟลที่เก็บไว ่ื ี ในคลังคาสั่ง (Library File) ของ C++ ํ ขอสงเกต การเขียน preprocessor directive จะตองเขยนรายการละ 1 บรรทด และไมตอง  ั  ี ั มเี ครองหมาย ; ที่ทายประโยค ่ื #include <iostream.h> หมายถึง การสั่งให Compiler นําสิ่งที่อยูในไฟลที่กําหนดชือมา ่ให คือไฟล iostream.h มารวมกับ source file ขณะทาการ link เพอใหได Executable file นนหมาย ํ ่ื  ่ัความวา ในโปรแกรมทเ่ี ราสรางขน ไดมีการเรียกใชฟงกชันที่ถูกเก็บไวใน Header File นัน  ้ึ ้ 3. void main() เปนการเรยกใชฟงกชนหลักของโปรแกรมคอ ฟงกชัน main() ซึ่งจะตองมีชื่อ  ี   ั ืฟงกชันนี้เสมอ ฟงกชัน main() เปนฟงกชันหลัก จะประกอบไปดวยวงเล็บเปด { เปนการเริมตนภายในมี ่การประกาศตัวแปร มีประโยคคําสั่งของภาษา C++ มีชื่อฟงกชันอื่น ๆ ที่ผูเขียนสรางขึ้นแลวเรียกใชภายในฟงกชัน main() แลวจบฟงกชันดวยวงเล็บปด } คําวา void เปนชอ ประเภทขอมล(data type) ที่ใหคาวาง จะทําใหฟงกชันไมมีการสงคา  ่ื  ูใด ๆ กลับไปยังชื่อฟงกชันที่ถูกเรียกใช ทั้งนี้ เนื่องจากใน C++ เมื่อมีการเรียกใชฟงกชันใดฟงกชันหนึ่งเมื่อฟงกชันทํางานเสรจแลว จะตองสงคาคืนกลับมายังจุดที่เรียกใชชื่อฟงกชันเสมอ เพื่อไมใหสงคืนคาใด ็ ๆ กลับมา จึงใชคาวา void เพื่อกําหนด main() ใหเปนฟงกชันที่ไมตองคืนคากลับมา ณ จุดเรียกใชหรือ ํเปนฟงกชนประเภทไมมคานนเอง    ั  ี  ่ั 4. cout << "My name is Mr.Sirichai Namburi n"; cout << "Office : Computer Department,RIPA"; เปนสวนของประโยคคาสั่งหรือ Statement ในภาษา C++ ซึ่งตองเขียนใหถูกตองตามไวยากรณ   ํของภาษา ทกประโยคตองจบดวยเครอง semicolon (;) เสมอ สําหรบคําวา cout เปน object ซึ่งถูกเก็บไว ุ   ่ื ั ในไฟล iostream.h ดงนนจงตองกาหนดชื่อไฟล iostream.h ไวในสวนของ preprocessor directive ดวย ั ้ั ึ  ํ  ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 8. ! 8 header file ที่สามารถใชรวมกับ #include ใน C++ เพื่อใหสามารถเรียกใชคาสั่งหรือฟงกชันตาง ํๆ ทผใชตองการได ไดแกรายชื่อไฟลในตารางตอไปนี้ โดยกอนที่จะเรียกใช header file ใดนน ผูใชจะ ่ี ู   ้ัตองตรวจสอบกอนวาฟงกชันที่ตองเรียกใชถูกสรางไวใน header file ใด เชน ถามีการเรียกใชฟงกชัน getch() ในโปรแกรม จะตองเขียน preprocessor directive เรียกใช header file ที่ชื่อ conio.h เนืองจาก ่ฟงกชัน getch() ถูกเก็บไวในไฟล conio.h ซึ่งเปนคลังคําสั่ง (Library) ของ C++ มีรูปแบบการเรียกใชดังนี้ #include <conio.h>ตาราง แสดงรายชื่อ Header file ใน C++ และรายละเอียดกลุมฟงกชันที่เรียกใชไดในแตละ herder file Header File Groups of Functions in Header file alloc.h Declares memory management functions (allocation, deallocation, etc.). assert.h Defines the assert debugging macro. Bcd.h Declares the C++ class bcd and the overloaded operators for bcd and bcd math functions. Bios.h Declares various functions used in calling IBM-PC ROM BIOS routines. complex.h Declares the C++ complex math functions. Conio.h Declares various functions used in calling the DOS console I/O routines. ctype.h Contains information used by the character classification and character conversion macros. Dir.h Contains structures, macros, and functions for working with directories and path names. Direct.h Defines structures, macros, and functions for working with directories and path names. Dirent.h Declares functions and structures for POSIX directory operations. Dos.h Defines various constants and gives declarations needed for DOS and 8086-specific calls. Errno.h Defines constant mnemonics for the error codes. Fcntl.h Defines symbolic constants used in connection with the library routine open. Float.h Contains parameters for floating-point routines. fstream.h Declares the C++ stream classes that support file input and output.ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 9. ! 9 Header File Groups of Functions in Header file generic.h Contains macros for generic class declarations. graphics.h Declares prototypes for the graphics functions. io.h Contains structures and declarations for low-level input/output routines. iomanip.h Declares the C++ streams I/O manipulators and contains macros for creating parameterized manipulators. iostream.h Declares the basic C++ (version 2.0) streams (I/O) routines. Limits.h Contains environmental parameters, information about compile-time limitations, and ranges of integral quantities. locale.h Declares functions that provide country- and language-specific information. malloc.h Memory management functions and variables. math.h Declares prototypes for the math functions, defines the macro HUGE_VAL, and declares the exception structure used by matherr. mem.h Declares the memory-manipulation functions. (Many of these are also defined in string.h.) memory.h Memory manipulation functions. new.h Access to operator new and newhandler. process.h Contains structures and declarations for the spawn... and exec... functions. search.h Declares functions for searching and sorting. setjmp.h Defines a type used by longjmp and setjmp. share.h Defines parameters used in functions that use file-sharing. signal.h Defines constants and declarations for signal and raise. stdarg.h Defines macros used for reading the argument list in functions declared to accept a variable number of arguments. stddef.h Defines several common data types and macros. stdio.h Defines types and macros needed for the Standard I/O Package defined in Kernighan and Ritchie and extended under UNIX System V. Defines the standard I/O predefined streams stdin, stdout, stdprn, and stderr, and declares stream-level I/O routines.ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 10. ! 10 Header File Groups of Functions in Header file stdiostr.h Declares the C++ (version 2.0) stream classes for use with stdio FILE structures. stdlib.h Declares several commonly used routines: conversion routines, search/sort routines, and other miscellany. stream.h Declares the C++ (version 1.2) streams (I/O) routines. string.h Declares several string- and memory-manipulation routines. strstrea.h Declares the C++ stream classes for use with byte arrays in memory. syslocking.h Definitions for mode parameter of locking function. sysstat.h Defines symbolic constants used for opening and creating files. systimeb.h Declares the function ftime and the structure timeb that ftime returns. systypes.h Declares the type time_t used with time functions. time.h Defines a structure filled in by the time-conversion routines, and a type used by other time routines; also provides prototypes for these routines. utime.h Declares the functions utime and the structure utimbuf values.h Defines important constants, including machine dependencies; provided for UNIX System V compatibility. varargs.h Defines old style marcos for processing variable argumnet lists. Superceded by stdarg.h! หมายเหตุ ถาตองการทราบวา header file ประกอบดวยฟงกชั่นใดบาง ใหใชคาสัง Help, Index ํ ่! จากเมนูใน IDE ของภาษา C++ เพื่อคนหารายละเอียดและตัวอยางการใชฟงกชัน!♦!อเด็นติฟายเออร (identifier) ใน C++ ไ! ไอเด็นติฟายเออร (identifier) หมายถึง ชื่อที่มีอยูในสวนตาง ๆ ของโครงสรางโปรแกรม C++ ซึ่งไดแก ชอของ เลเบล (label) คอนสแตนต (constant) แวเรียเบิลหรือตัวแปร (variable) ฟงกชัน ่ื(function) และชนิดของขอมูล (data type)! ประเภทของไอเดนตฟายเออร มี 3 ประเภท คือ keyword , standard identifier และ user-defined ็ ิidentifier มีรายละเอียด ดังนี้! 1. Keyword เปนชื่อที่มีความหมายและวิธีการใชแนนอน ไดกาหนดไวในภาษา C++ แลว ํคอมไพเลอรจะไมยอมใหเราใชชื่อนี้ในลักษณะที่แตกตางไปจากที่กาหนดไว ตัวอยางของ keyword เชน ํ void if else int char float case auto returnศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 11. ! 11! 2. Standard Identifier หมายถึง ชื่อที่กําหนดขนในคอมไพเลอร ชื่อเหลานี้มีความหมายและวิธี ้ึใชตามเงื่อนไขที่คอมไพเลอรกาหนดไว แตเราสามารถเปลี่ยนแปลงวิธีการทางานและเงื่อนไขการใชชื่อ ํ ํเหลานได โดยคอมไพเลอรจะยกเลิกเงื่อนไขเดิมและเปลี่ยนมาใชเงื่อนไขที่เรากําหนดขึ้นใหม standard  ้ีidentifier สวนใหญจะเปนชื่อฟงกชันที่มีอยูใน C++ เชน abort, abs, arc, ftime, getch, open, rename เปนตน 3. User-defined identifier หมายถึง ชอทเ่ี รากาหนดความหมายและเงอนไขในการใชขนเองโดย ่ื ํ ่ื  ้ึผูใช แตตั้งกําหนดขึ้นตามกฎเกณฑของ C++ ซึ่งมีรายละเอียดของกฎการตั้งชื่อ ดังนี้ - อักขระตัวแรกตองเปนตัวอักษรหรือ underscore ( _ ) จะเปนตัวเลขไมได ตวอกขระตว ั ั ัตอไปจะเปนตัวอักษร ตัวเลข หรอเครองหมาย _ ก็ได เรียงกันโดยหามมีชองวางภายในชื่อ ื ่ื - ชื่อหามซากับคียเวิรด (Keywords) ของภาษา C++ เชน main void if ํ้  - คอมไพเลอรจะถือวาอักษรพิมพเล็กและพิมพใหญ มีความแตกตางกัน ดังนัน ้Identifier ชื่อFIRST_PROGRAM กับ first_program จะถือวาเปนชื่อตางกันและเปนคนละชื่อกัน - ชื่อมีความยาวไมจํากัด แตจะมีความหมายเฉพาะอักขระ 32 ตวแรกเทานน แตควรตง ั  ้ั  ้ัชื่อใหมีความหมายสอดคลองกับวัตถุประสงคการนําชอนนไปใชภายในโปรแกรม เพื่อความสะดวกใน ่ื ้ั การจดจําในขณะเขยนโปรแกรม ี♦! นิดของขอมูล(Data Type) ช ขอมูลใน C++ แบงชนดขอมลออกเปน 2 ประเภท คือ  ิ  ู  1. Simple data type เปนชนิดขอมูลที่ใชแสดงคาของสิ่งใดสิ่งหนึ่งเพียงรายการเดียว เชน คา ความสูง นําหนก จํานวนนกเรยน อุณหภูมิ ระดับคะแนน เปนตน ้ ั ั ี 2. Structure เปนขอมูลชนิดใชแสดงคาของสิ่งใดสิ่งหนึ่งหลายรายการ เชน ความสูงของนัก เรยนใน ชั้น ม. 6, อุณหภูมของแตละวันในเดือนตุลาคม, รายชือนักเรียนใน 1 กลุม ตองกําหนดเปนขอมล ี ิ ่   ูชนิดโครงสรางแบบ อารเรย (array) แบบโครงสราง(structure) หรอแบบยเู นยน(union) เปนตน ื ี ขอมูล Simple data type รายละเอียดชนิดของมูลและชวงของขอมูลประเภท Simple data typeแสดงไดดงตารางตอไปน้ี ั ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 12. ! 12ตาราง แสดงชือชนิดของขอมูล ชวงของคาขอมูลและขนาดหนวยความจําที่ใช ่ ชนิดขอมูล คาตํ่าสุด คาสูงสุด ใชพื้นที่หนวยความจํา char -128 127 1 byte unsigned char 0 255 1 byte int -32,768 32,767 2 byte unsigned int 0 65,535 2 byte short int -32,768 32,767 2 byte long -2,147,483,648 2,147,483,647 4 byte unsigned long 0 4,294,967,295 4 byte float 3.4x10-38 3.4x10+38 4 byte double 1.7x10-308 1.7x10+308 8 byte long double 3.4x10-4932 3.4x10+4932 10 byte หมายเหตุ ชอชนดของขอมลไดแก char, unsigned char , int , unsigned int, short in, long , ่ื ิ  ู unsigned long , float , double , long double เปน keyword ที่นาไปกําหนดประเภทขอมูลที่จะใชใน  ํโปรแกรม •! ตัวอยางโปรแกรม size_mem.cpp เปนตวอยางโปรแกรมแสดงขนาดของหนวยความจําทขอ  ั   ่ี  มูลแตละชนิดใชพื้นที่หนวยความจา โดยใช คียเ วิรด sizeof ซึ่งใหคาขนาดหนวยความจําทขอ ํ  ่ี  มูลชนิดนั้นใช มีหนวยเปน byte/*Program : size_mem.cpp Process : Display size of memory for each simple data type*/#include <iostream.h>#include <conio.h>void main(){ clrscr(); //clear screen in conio.h cout<< "Size of char = "<<sizeof(char)<< " bytes"<<endl; cout<< "Size of unsigned char = "<<sizeof(unsigned char)<< " bytes"<<endl; cout<< "Size of int = "<<sizeof(int)<< " bytes"<<endl; cout<< "Size of unsigned int = "<<sizeof(unsigned int)<< " bytes"<<endl; cout<< "Size of short int = "<<sizeof(short int)<< " bytes"<<endl; cout<< "Size of long = "<<sizeof(long)<< " bytes"<<endl; cout<< "Size of unsigned long = "<<sizeof(unsigned long)<< " bytes"<<endl; cout<< "Size of float = "<<sizeof(float)<< " bytes"<<endl; cout<< "Size of double = "<<sizeof(double)<< " bytes"<<endl; cout<< "Size of long double = "<<sizeof(long double)<< " bytes"<<endl; getch(); //wait for press any key}ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 13. ! 13♦! ารประกาศตวแปร (Variable Declaration) และการกําหนดคาใหตวแปรใน C++ ก ั   ั ตัวแปร (Variables) ในภาษา C++ หมายถึง ชื่อที่กาหนดขนเพอใชเ กบคาของขอมลหรอคาคงท่ี ํ ้ึ ่ื ็   ู ื ประเภทตาง ๆ ในขณะโปรแกรมทํางาน ซงผเู ขยนโปรแกรมตองตงชอตวแปรตามกฎเกณฑการตงชอ  ่ึ ี  ้ั ่ื ั  ้ั ่ืประเภท user defined identifier การใชตัวแปรในภาษา C++ จะตองมีการประกาศ (Declaration) ชอตวแปรและประเภทของตว ่ื ั ัแปร (Data type) ไวกอน จึงจะสามารถนําตัวแปรไปใชในโปรแกรมได มรปแบบการประกาศตวแปรดง ีู ั ันี้ Data_type variable_name; หรอื ! Data_type variable_name1, variable_name2,varible_name3, … ; โดยที่ Data_type คือ ชอของประเภทขอมลของตวแปร ที่สามารถเก็บคาได เชน int, float ่ื  ู ั  variable_name คือ ชื่อของตัวแปรที่ผูใชกาหนดเอง ถาในประเภทนั้นมีมากกวา 1 ตวให ํ ัใชเ ครองหมาย , แยก และจบประโยคดวยเครื่องหมาย ; (semi-colon) ่ื การประกาศตวแปรเพอใชในโปรแกรมของ C++ มี 2 ลกษณะ คือ ั ่ื  ั 1. definition คือ เปนการประกาศเพื่อกําหนดความหมาย เปนประโยคคาสั่งที่ประกอบดวย ชื่อ  ํประเภทของตวแปร และตัวแปร โดยทั่วไปมักจะประกาศไวตอนตน ๆ ของฟงกชัน หรือโปรแกรม เชน ั  #include <iostream.h> void main() { int number; float sales, purchase; การประกาศตัวแปรในลักษณะ definition char grade; … } 2. การประกาศแบบกําหนดคา ณ ตําแหนงทใช หมายถึง การประกาศตัวแปร ณ ตําแหนงท่ี  ่ี ตองการใชตวแปรในโปรแกรม ก็จะประกาศพรอมกับหนดคาใหกับตัวแปรทันที ดงตวอยางโปรแกรม ั ั ั  ตัวอยางโปรแกรม pos_var.cpp แสดงวิธีการประกาศตัวแปร ณ จุดทีตองการใชในโปรแกรม ่/*Program : pos_var.cpp Process : Show declared varaible at any position in program */#include <iostream.h>#include <conio.h>void main()ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 14. ! 14{ float sale,price; clrscr(); sale=500.25; price=5.25; float total=sale*price; ประกาศตัวแปร total ณ ตําแหนงทตองการใช  ่ี  cout<< "Total Sale = "<<total; getch();} วิธีการกําหนดคาใหแกตวแปรใน C++ ทําได ดังนี้    ั 1. การใชประโยคคําสงเครองหมายเทากบ (=) โดยกําหนดใหชื่อตัวแปรที่จะใชเก็บคาอยูทางซาย ่ั ่ื  ัมือของ เครืองหมาย = ตวแปรหรอคาคงทอยทางดานขวาของเครองหมาย ดังเชนตัวอยางโปรแกรมตอ ่ ั ื  ่ี ู  ่ืไปนี้ •! ตัวอยางโปรแกรม variable.cpp แสดงการกําหนดคาคงทใหกบตวแปรในโปรแกรม โดยใช ่ี  ั ั เครองหมายเทากบ = ่ื  ั/*Program : variable.cpp Process : Display set value of varible */#include <iostream.h>#include <conio.h>void main(){ int number; //declaration variable การประกาศตัวแปรภายในฟงกชน ัmain() float sales,purchase; //declaration variable // set value of variable number = 50; sales = 5000.75; การกาหนดคาคงที่ใหกับตัวแปร ํ purchase = 3500.50; clrscr(); // function clear screen from <conio.h> //show value from variable cout << "Show varlue of variable"<<endl; cout << "number = " << number<<endl; cout << "sales = " << sales<<endl; cout << "purchase = " << purchase; getch(); // function getch() for wait to press anykey from <conio.h>} หมายเหตุ กรณเี ปนตวแปรประเภทตวเลข คาคงทีดานขวามือหามมีเครืองหมายวรรคตอนใด ๆ  ั ั ่ ่ทั้งสิ้น ยกเวนจุดทศนิยม สวนตวแปรประเภท char กําหนดคาคงทในเครองหมาย _ เชน ch = A;  ั  ่ี ่ื  2. การกําหนดคาเรมตนใหแกตวแปร เมื่อมีการประกาศใชตัวแปรในลักษณะ definition มีการ  ่ิ    ักําหนดคาคงที่ใหแกตัวแปรทันทีศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 15. ! 15 •! ตัวอยางโปรแกรม varia2.cpp แสดงการกําหนดคาใหแกตัวแปร number, sales, purchase ดวยเครองหมาย = เมือประกาศตัวแปรในโปรแกรม  ่ื ่/*Program : varia2.cpp Process : Display set value of varible */#include <iostream.h>#include <conio.h>void main(){ int number=500; //declaration and set value variable ประกาศตัวแปร float sales=500.50,purchase=3500.75; //declaration and set value variable พรอมกําหนดคา   clrscr(); // function clear screen from <conio.h> //show value from variable cout << "Show varlue of variable"<<endl; cout << "number = " << number<<endl; cout << "sales = " << sales<<endl; cout << "purchase = " << purchase; getch(); // function getch() for wait to press anykey from <conio.h>} 3. การกําหนดคาตัวแปรโดยการรับคาทางแปนพิมพ โดยการใชฟงกชันในการรับขอมูล (Input)เขาไปเก็บไวในตัวแปร จะกลาวรายละเอียดตอไปในบทที่ 2 ตัวแปรประเภท Global และ Local การประกาศใชตวแปรใน C++ สามารถทําได 2 ลักษณะ คือ ั 1. Global variable คือ ตัวแปรทีกาหนดหรือประกาศไวนอกฟงกชันใด ๆ ทุกฟงกชัน ่ํสามารถนําตัวแปรประเภท Global ไปใชไดทุกฟงกชัน เพราะเปนลักษณะการประกาศแบบสารธรณะ 2. Local variable คือ ตัวแปรทีกาหนดหรือประกาศไวในฟงกชันใดฟงกชันหนึ่ง ่ํสามารถนําตัวแปรนั้นไปใชไดเฉพาะในฟงกชันนั้น ๆ เทานน ฟงกชันอื่นไมสามารถนําไปใชได เพราะประกาศใน  ้ัลักษณะสวนตัวหรือเฉพาะที่ หมายเหตุ กรณทมการตงชอตวแปรประเภท Global และ Local ซํากัน จะถือวาเปนตัวแปรคนละ ี ่ี ี ้ั ่ื ั ้ตวกน เนื่องจากใชพื้นที่ในหนวยความจําในการเก็บขอมูลในตําแหนงที่ตางกัน แตถามีการเรียกใชชื่อตัว ั ัแปร C++ จะนําตัวแปรประเภท Local มาใชกอนเสมอ •! ตัวอยางโปรแกรม glo_loc.cpp แสดงการประกาศตวแปรประเภท Global และ Local ใน ั โปรแกรมศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 16. ! 16/*Program : glo_loc.cpp Process : define global and locat variable */ #include <iostream.h> #include <conio.h> char grade; //defined global variable ประกาศตัวแปรประเภท Global Variable void main() { int midterm,final,total; //defined local variable in function main() ประกาศตัวแปรประเภทLocal clrscr(); Variable ในฟงกชันmain() midterm = 30; final=50; total=midterm+final; grade=A; cout<< "You get total score "<<total<<" And get grade = " <<grade; getch(); }♦! ารกําหนดตัวแปรคงที่(Constant) ก ตัวแปรคงที่หรือคอนสแตนต (Constant) หมายถึง ตัวแปรที่เก็บคาคงที่ที่ไมสามารถเปลี่ยนแปลงได การกาหนดคอนสแตนต มีจุดประสงคเพื่อปองกันมิใหมีการเปลี่ยนแปลงคาของตัวแปรนั้นในขณะ ํทางาน สามารถกาหนดไดทั้งในลักษณะที่เปน Global และ Local รูปแบบการกาหนดคาคอนสแตนต ใช ํ ํ ํคําวา const นําหนาประเภทขอมลและชอคอนสแตนต ดังนี้   ู ่ื const ชนิดขอมูล ชอคอนสแตนต = คาคงที่; ่ื ตัวอยางเชน const int Day = 7; const int month = 12; const float PI = 3.1418926; const float Amount = 1.0E+2; // คือ 1.0 * 102 const float Rate = 1E-3; // คือ 1 * 10-3 const char name = A; // ใหคารหส ASCII ของ A คือ 65  ั const char ch = B; // ใหคารหส ASCII ของ B คือ 66  ั •! ตัวอยางโปรแกรม contst.cpp แสดงการกําหนดและการใช constant ในโปรแกรม มราย ี ละเอียด ดังนี้ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 17. ! 17/*Program : const.cpp Process : Display constant in program*/#include <iostream.h>#include <conio.h>const float rate = 0.05; // Global constantvoid main(){ const float tax=0.03; //Local constant float sales,income,total_tax; clrscr(); sales = 8500.50; income = sales*rate; total_tax=income*tax; cout<< "Income = "<< income <<endl; cout<< "Total tax = "<< total_tax <<endl; getch();}♦! ารดําเนนการทางคณตศาสตร (Arithmetic Operations) ก ิ ิ ในการคํานวณทางคณิตศาสตรของภาษา C++ มีการใชเครื่องหมายสําหรบการคานวณ ดังนี้ ั ํตาราง แสดงเครองหมายคานวณทางคณิตศาสตรใน C++ ่ื ํ ตัวดําเนินการ ความหมาย ตัวอยาง ผลลัพธ - การลบ 10-5 5 + การบวก 10+5 15 * การคูณ 10*5 50 / การหาร 10/5 2 % การหารคดเฉพาะเศษ ิ 9%2 1 -- การลดคาครั้งละ 1 --x หรือ x-- x=x-1 ++ การเพิ่มคาครั้งละ 1 ++x หรือ x++ x=x+1 += การบวกสะสมในตัวแปร y+=x y=y+x -= การลบคาจากตัวแปร y-=x y=y-x *= การคูณคาจากตัวแปร y*=x y=y*x /= การหารจากตัวแปร y/=x y=y/x %= การหารคิดเศษจากตัวแปร y%=x y=y%xตาราง แสดงลําดับการประมวลผล (Precedence) ของเครองหมายคณตศาสตร ่ื ิ เครองหมายคณตศาสตร ่ื ิ ลําดับการประมวลผล หมายเหตุศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 18. ! 18 () 1 ถาเครื่องหมายมีลําดับการ ++, -- (ใชแบบ prefix) 2 ประมวลผลระดับเดียวกันให - (เครองหมายหนาตวเลข) ่ื  ั 3 ดําเนินการจากซายไปขวา */% 4 +- 5 += -= *= /= %= 6 ขอสงเกต การใชโอเปอเรเตอร (Operator) ในการเพิ่มคา(increment) ++ และลดคา(decrement)  ั -- มีขอควรสังเกต ดังนี้ 1. การเพิ่มคาขึ้นทีละ 1 ไดแกการเพิ่มคาใหแกตัวแปรครั้งละ +1 เชน count = count +1; count +=1; count++; ++count; สําหรบ ++ มีวิธีการใช 2 วิธี คือ แบบ prefix และ แบบ postfix มีขอแตกตางกัน ดัง ัตวอยางตอไปนเ้ี ปนการใช ++ แบบ prefix ั    price = 5; volume = 3; value = price * ++volume; // คาของ value คือ 20 คาของ volume คือ 4 จากประโยคคําสั่งนี้ คาของ volume จะเพิ่มขึ้น 1 กอนทจะนําไปคูณกับ price แลวนํา  ่ี ไปเก็บไวในตัวแปร value ตอไปน้ี ลองพิจารณาการใช ++ แบบ postfix  price = 5; volume = 3; value = price * volume++; // คาของ value คือ 15 คาของ volume คือ 4 จากประโยคคําสั่งนี้ คาของ volume คือ 3 จะถกนําไปคูณกับ price คือ 5 กอนแลวนํา ูไปเก็บไวในตัวแปร value จากนันจึงเพิมคาของ volume อก 1 จึงมีคาเปน 4 ้ ่ ี 2. การลดคาลงทีละ 1 ไดแกการลดคาของตัวแปรครั้งละ -1 เชน  count = count -1; count -=1; count--; --count; สําหรบ -- มีวิธีการใช 2 วิธี คือ แบบ prefix และ แบบ postfix มขอแตกตางการใชเ ชน ั ี  เดียวกับการใช ++ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 19. ! 19♦! ารเปลยนแปลงชนดขอมลในนพจนคณตศาสตร ก ่ี ิ  ู ิ  ิ ในนพจนทางคณตศาสตรเ มอมการใชเ ครองหมายคานวณระหวางขอมูลหรือตัวแปรทีมชนิด ิ  ิ ่ื ี ่ื ํ ่ ี(Data Type) แตกตางกัน เชน ชนด float บวกกับ ชนด int ใน C++ จะปรับประเภทขอมูลของผลลัพธที่  ิ ิไดจากการคานวณใหเปนชนิดขอมูลทีมอนดับสูงกวาโดยอัตโนมัติ ดังแสดงอันดับความสําคญของชนด ํ ่ ีั ั ิขอมลในตารางตอไปน้ี  ู ตาราง แสดงอันดับความสําคัญ(Precedence) ของขอมลประเภท Simple Data Type ชนิดตาง ๆ  ู ชนิดขอมูล อนดบ ั ั ตวอยาง ั long double สูงสุด int * long = long double char + int = int float int + float = float long int * double = double int float + double = double char ตําสุด ่ long + long dobule = long double♦!ครองหมายเปรยบเทยบและตรรก (Comparison and Logical Operators) เ ่ื ี ี การเปรยบเทยบ หมายถึง การหาวาเมอนําคาที่อยูทางดานซายของเครื่องหมายกับคาที่อยูทางขวา ี ี  ่ืของเครองหมายเปรยบเทยบ มาเปรียบเทียบกันแลวจะไดผลลัพธเปนจริงหรือเท็จ ซึ่งในแตละกรณีเมื่อ ่ื ี ีเปรียบเทียบกันแลว จะไดคาเปนจริงหรือเปนเท็จเพียงคาเดียวเทานัน โดย C++ จะใชคา 0 แทนเทจ และ  ้ ็1 แทน จริง และมีลาดับในการประมวลผลจากซายไปขวา ถาไมมีวงเล็บกํากับไว มีเครืองหมายเปรียบ ํ ่เทียบดังนี้ตาราง แสดงเครื่องหมายเปรียบเทียบใน C++ เครืองหมาย ่ ความหมาย ตวอยาง ั ผลลัพธ > มากกวา 5>1 1 (จริง) < นอยกวา 5<1 0 (เทจ)็ == เทากับ 5==1 0 (เทจ) ็ != ไมเทากับ 5!=1 1 (จริง) >= มากกวาหรือเทากับ 5>=5 1 (จริง) <= นอยกวาหรือเทากับ 5<=5 1 (จริง)ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 20. ! 20 การหาคาลอจิก (Logic) หมายถึง การหาผลลัพธจาก Logic operator ซึ่งจะใหคาผลลัพธออกมาเปนจริงหรือเท็จกรณีใดกรณีหนึงเทานัน เครืองหมายทีเ่ ปน Logical operator ใน C++ แสดงไวในตาราง ่ ้ ่ดังนี้ตาราง แสดงเครองหมายเปรยบเทยบเชงตรรก (Logical operator) ใน C++ ่ื ี ี ิ เครืองหมาย ่ ความหมาย ตวอยาง ั ผลลัพธ && AND (5==5)&&(5>3) 1 (จริง) || OR (5<1)||(5>3) 1 (จริง) ! NOT !(5==5) 0 (เทจ) ็ตาราง แสดงคาเปนจรงและเทจในกรณตาง ๆ ทเ่ี ปนไปไดทงหมดของ AND, OR , NOT โดยกําหนดให   ิ ็ ี    ้ัA และ B คือประโยคตรรกทีใหคาจริงหรือเท็จ ่  A B !A A&&B A||B จรง ิ จรง ิ เทจ ็ จรง ิ จรง ิ จริง เท็จ เท็จ เท็จ จริง เท็จ จริง จริง เท็จ จริง เทจ็ เทจ็ จรง ิ เทจ็ เทจ็ •! ตัวอยางโปรแกรม logic_tst.cpp เปนการแสดงคาตรรกทไดจากการเปรยบเทยบดวยเครอง   ่ี  ี ี  ่ื หมายเปรยบเทยบและ ตัวดําเนนการตรรก โดยคา 0 แทน เทจ และ 1 แทนจรง ดังนี้ ี ี ิ ็ ิ/*Program : logic_tst.cpp Process : Test logical value of expression*/#include <iostream.h>#include <conio.h>void main(){ clrscr(); cout<< "Display Logic Operation :a"; cout<< "nLogic value of expression (3==5) :" <<(3==5); cout<< "nLogic value of expression (5==5) :" <<(5==5); cout<< "nLogic value of expression (3<=5) :" <<(3<=5); cout<< "nLogic value of expression (3>=5) :" <<(3>=5); cout<< "nLogic value of expression (3<=5)&&(5>3) :" <<((3<=5)&&(5>3)); cout<< "nLogic value of expression ((3<=5)&&(3>5)) :" <<((3<=5)&&(3>5)); cout<< "nLogic value of expression ((3<=5)||(3>5)) :" <<((3<=5)||(3>5)); cout<< "nLogic value of expression ((8<=5)||(3>=5)) :" <<((8<=5)||(3>=5)); cout<< "nnValue 1 is true, 0 is false ....press any key"; getch();}ศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้
  • 21. ! 21♦! บบฝกหัดทายบท แ1. จงเขยนโปรแกรมเพอคานวณหาผลลัพธของนิพจนทางคณิตศาสตรตอไปนี้โดยกําหนดใหตวแปร ี ่ื ํ ั A=50 B=30 C=5 D=3 E = 10 1.1 (A+B)*(E-D) 1.6 --D+C+B-- 1.2 ++D+C*E 1.7 25*D/5+10 1.3 (25+A)/C+B 1.8 A+B--+D 1.4 A*=D 1.9 C*2+E*5 1.5 20*C+B+++D/2 1.10 (A*2)+B/C-152. จงบอกขนาดของหนวยความจาทตวแปรชนดตาง ๆ ตอไปนตองใชในการจองพนทในหนวยความจํา  ํ ่ี ั ิ   ้ี   ้ื ่ี  char, int , float, double, long int, long double3. จงเขยนโปรแกรมเพอหาคาตอบวาประโยคตอไปนีเ้ ปนจริงหรือเท็จ ถากาหนดใหตวแปร ี ่ื ํ ํ ั A = 20 B=30 C = 2 D = 5 E=50 3.1 (A>=B) && (A==A) 3.2 (B+C>A+D)|| (B+C<A+D)&&(D<10) 3.3 (A==20) && (B>=30) 3.4 (50==E ) || (!(D<=E) 3.5 !(D!=5) 3.6 (B+C+20)!=50 3.7 C==(D-3) 3.8 (A/C<=B) && (C+D<=A) || (D>A) 3.9 (A%C+5)==(E/5-10) 3.10 A<B&&D<Eศิริชัย นามบุรี แนะนําภาษา C++ เบืองตน ้