260 likes | 450 Views
Lecture 2 แนวคิดเกี่ยวกับการเขียนโปรแกรม และภาษา JAVA สำหรับการเขียนโปรแกรม. โปรแกรมภาษา. การเขียนโปรแกรมด้วยภาษาแอสแซมบลีจะต้องใช้ตัวแปลภาษาให้เป็นภาษาเครื่อง ตัวแปลนี้เรียกว่าแอสแซมเบอร์. โปรแกรมต้นฉบับ ภาษาแอสแซมบลี. โปรแกรม แอสเซมเบอร์. รหัสภาษาเครื่อง.
E N D
Lecture 2แนวคิดเกี่ยวกับการเขียนโปรแกรมและภาษา JAVA สำหรับการเขียนโปรแกรม
โปรแกรมภาษา • การเขียนโปรแกรมด้วยภาษาแอสแซมบลีจะต้องใช้ตัวแปลภาษาให้เป็นภาษาเครื่อง ตัวแปลนี้เรียกว่าแอสแซมเบอร์ โปรแกรมต้นฉบับ ภาษาแอสแซมบลี โปรแกรม แอสเซมเบอร์ รหัสภาษาเครื่อง
วิธีการแปลการเขียนโปรแกรมด้วยภาษาระดับสูงวิธีการแปลการเขียนโปรแกรมด้วยภาษาระดับสูง • Interpreter แปลคำสั่งให้เครื่องทำงานทีละคำสั่ง จากนั้นแปลคำสั่งบรรทัดต่อไป ถ้าไม่พบข้อผิดพลาดเครื่องจะทำคำสั่งที่แปลได้ แต่ถ้าพบข้อผิดพลาดจะหยุดทำงานและแจ้งข้อผิดพลาดออกมา เช่น การเขียนโปรแกรมด้วยภาษาเบสิก • Compiler จะมองโปรแกรมต้นฉบับทั้งหมดและแปลให้เป็นรหัสภาษาเครื่องถ้าพบข้อผิดพลาดก็จะแจ้งออกมา ทำให้โปรแกรมทำงานได้เร็วเพราะเครื่องไม่ต้องแปลอีกเมื่อจะทำคำสั่งถัดไป
ขั้นตอนการแปลภาษาโปรแกรมขั้นตอนการแปลภาษาโปรแกรม แปลทีละบรรทัด โปรแกรมต้นฉบับ Interpreter รหัสภาษาเครื่อง แปลทั้งโปรแกรม โปรแกรมต้นฉบับ Complier รหัสภาษาเครื่อง
องค์ประกอบการเขียนโปรแกรมด้วย Java • Text Editor หรือ Java Development Tool • Notepad, EditPlus, Crimson, J-Lab … • NetBeans, Eclipes … • Java JDK (Java Development Kit) • Java Compiler • Java Runtime Environment (JRE) • Java Virtual Machine (JVM)
องค์ประกอบการเขียนโปรแกรมด้วย Java Compileใช้คำสั่ง javac [ชื่อไฟล์ source code นามสกุล java] Byte Code นามสกุล class Run ใช้คำสั่ง Java [ชื่อไฟล์ Byte Code นามสกุล class] Source Code
Hello World • โครงสร้างของการเขียนโปรแกรม Hello World class firstProgram /* ชื่อของ class */ { public static void main(String[] args) /* ฟังก์ชันหลักของ class */ { System.out.println(“Hello World!"); /* ส่วนของโปรแกรมที่ต้องการให้ทำงาน*/ } } คำสั่งแสดงผลออกหน้าจอ
ตัวอย่าง 1.1 ถ้าต้องการออกแบบโปรแกรมให้คอมพิวเตอร์รับค่าข้อมูล 3 ค่าและแสดงค่าเฉลี่ยทางจอภาพ เราอาจวิเคราะห์ปัญหาได้ดังนี้
1.รับข้อมูลจากคีย์บอร์ด1.รับข้อมูลจากคีย์บอร์ด 1.1 รับข้อมูลเฉพาะที่เป็นตัวเลขมาเก็บไว้ที่ตัวแปล 1.2 ถ้าข้อมูลเท่ากับ 0 ให้รับใหม่
2.หาค่าเฉลี่ย 2.1 รวมค่าทุกค่าที่รับมาเข้าด้วยกัน 2.2 นำผลรวมที่ได้หารด้วย 3 2.3 นำค่าผลลัพธ์ไปเก็บที่ตัวแปล
3. แสดงผลลัพธ์ทางจอภาพ 3.1 แสดงคำว่าค่าเฉลี่ยเท่ากับ 3.2 แสดงผลลัพธ์โดยมีทศนิยมสองตำแหน่ง
ขั้นตอนการทำงานของระบบขั้นตอนการทำงานของระบบ ประมวลผล นำข้อมูลออก นำข้อมูลเข้า รับข้อมูลตัวที่ 1 รับข้อมูลตัวที่ 2 รับข้อมูลตัวที่ 3 อ่านค่าเฉพาะที่เป็นตัวเลข 3 ตัว นำผลลัพธ์ทั้ง 3 ตัวมารวมกัน นำผลรวมมาหารด้วย 3 แสดงค่าเฉลี่ย ทศนิยม 2 ตำแหน่ง
การเขียนผังงานและซูโดโค้ดการเขียนผังงานและซูโดโค้ด ผังงาน การใช้สัญลักษณ์ต่างๆ แทนการทำงานและทิศทางของโปรแกรม
ตัวอย่างการเขียนผังงานตัวอย่างการเขียนผังงาน เริ่มต้น T1 ,T2,T3,Result Result=T1+T2+T3 ผลรวม =Result จบงาน
ซูโดโค้ด (Pseudo Codes) • เป็นคำอธิบายขั้นตอนการทำงานของโปรแกรม โดยใช้คำภาษาอังกฤษ และภาษาการเขียนโปรแกรม แบบโครงสร้าง หรืออาจจะใช้ภาษาไทยก็ได้ ซูโดโค้ดที่ดีต้องมีความชัดเจน สั้น และได้ใจความ โดยทั่วไปมีรูปแบบดังนี้
Algorithm <name>1. ------------------------------------------------2. ------------------------------------------------:5. ------------------------------------------------End.
ตัวอย่าง การเขียนซูโดโค้ดในการหาค่าผลบวกขงเลข 3 จำนวน ที่รับเข้ามาทางแป้นพิมพ์ • Algorithm Summation1. SUM = 02. INPUT (value1)3. INPUT (value2)4. INPUT (value3)5. SUM = value1 + value2 + value36. OUTPUT (SUM)End.
ตัวอย่าง การเขียนซูโดโค้ด ในการคำนวณหาพื้นที่สามเหลี่ยม • Algorithm Triangle area1. area = 02. Read Base3. Read Height4. Compute area = 1/2 * Base * Height5. Point areaEnd.
ตัวอย่าง จงเขียนซูโดโค้ดในการบวกเลข 1+2+3+...+100 และพิมพ์ผลลัพธ์ออกมา Algorithm Sum 1 to 100 X = 0 SUM = 0 DO ( X<=100 ) WHILE Compute SUM = SUM + X Compute X = X + 1 ENDDO PRINT SUMEND.
ชุดพัฒนาภาษาจาวา • J2ME หรือ JAVA 2 Standard Edition เป็นโปรแกรมที่ใช้สำหรับเขียนโปรแกรมทั่วไปรวมทั้งโปรแกรมแบบ แอปเพล็ต • J2EE หรือ Java 2 Enterprise Edition เป็นซอฟต์แวร์ที่ใช้สำหรับเขียนโปรแกรมขนาดใหญ่ เช่น โปรแกรมประยุกต์ทางธุรกิจ • J2ME หรือ Java 2 Micro Edition เป็นซอฟต์แวร์
ทดลองเขียนโปรแกรมแรก file name: simple.java public class Simple { public static void main(String[] args){ System.out.println(“Programming is great fun”); System.out.println(“COMPUTER Programs”); } }
โปรแกรมการคำนวณตัวเลขโปรแกรมการคำนวณตัวเลข • LAB01 (งานครั้งที่ 1) จงเขียน flow chart และโปรแกรมการแปลงเวลาชั่วโมงให้เป็นนาทีของ • 1 ชั่วโมง • 2 ชั่วโมง 30 นาที • 3 ชั่วโมง 59 นาที
ผังงาน ซูโดโค้ด AlgorithmCalH1. h ,s and result2. result= (h*60)+s3. print result End.