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

รูปแบบการเขียนโปรแกรมในภาษาจาวาพื้นฐานลักษณะโครงสร้างภาษาจาวาทั่วไป
ในบทนี้ คุณจะได้เรียนโครงสร้างพื้นฐานของภาษา Java และรูปแบบต่างๆ ในการใช้งานของภาษา เราจะมาเริ่มต้นกับโปรแกรมสุดคลาสสิค Hello World Program Hello word program Hello World Program เป็นโปรแกรมแรกที่โปรแกรมเมอร์ทุกคนจะได้เขียน มันเป็นโปรแกรมที่แสดงข้อความว่า "Hello World!" ออกทางหน้าจอคอมพิวเตอร์ของคุณ ถ้าคุณสร้างโปรเจ็คของคุณแล้ว ตอนนี้คัดลอกโปรแกรมข้างล่างไปรันได้เลยต่อไปลองเปลี่ยนข้อความเป็นข้อความใหม่ที่คุณต้องการ เพื่อดูผลลัพธ์ว่ามันน่าทึ่งแค่ไหน และจากตัวอย่างของโปรแกรมข้างบน มันมีส่วนประกอบที่สำคัญดังนี้ Package: เป็นกลุ่มของคลาสหรือไลบรารี่มาตรฐานของภาษา Java ที่มีฟังก์ชันต่างๆ ให้ใช้มากมาย ในตัวอย่างนั้นไม่มี เราจะพูดเกี่ยวกับเรื่องนี้ในภายหลัง Class: ในส่วนของการประกาศคลาส จะต้องประกาศคลาสให้ชื่อตรงกับไฟล์เสมอ นอกจาก Inner คลาสที่อยู่ในคลาสเดียวกัน โดยชื่อคลาสนั้นควรจะขึ้นต้นด้วยตัวใหญ่ และถ้ามีหลายคำให้ใช้ตัวพิมพ์ใหญ่แบ่ง ดังตัวอย่างด้านล่าง
รูปแบบ
ดังนี้ [modifier] class Class name { [class member] }
– Modifier คือคีย์เวิร์ด ของภาษาจาวาที่ใช้ในการอธิบายระดับการเข้าถึง (Access modifier)
– Class คือคีย์เวิร์ด ของภาษาจาวา เพื่อระบุว่าเป็นการประกาศคลาส
– Class name คือชื่อคลาส
– Class member คือเมธอดหรือคุณลักษณะ
– Modifier คือคีย์เวิร์ด ของภาษาจาวาที่ใช้ในการอธิบายระดับการเข้าถึง (Access modifier)
– Class คือคีย์เวิร์ด ของภาษาจาวา เพื่อระบุว่าเป็นการประกาศคลาส
– Class name คือชื่อคลาส
– Class member คือเมธอดหรือคุณลักษณะ
กฎการระบุชื่อ (Identifier)
1. ตัวแรกของชื่อจะต้องขึ้นต้องด้วยตัวอักษรภาษาอังกฤษหรือเครื่องหมาย _ เท่านั้น
2. ตัวอักษรตั้งแต่ตัวที่ 2 สามารถเป็นตัวเลข หรือเครื่องหมาย_ก็ได้
3. จะต้องไม่มีการเว้นวรรคภายในชื่อ แต่สามารถใช้เครื่อง_คั่นได้
4. สามารถตั้งชื่อได้ยาวไม่จำกัด แต่จะใช้ตัวอักษรแค่ 31 ตัวแรกในการอ้างอิง
5. ชื่อที่ตั้งด้วยตัวอักษรพิมพ์ใหญ่และพิมพ์เล็ก จะถือว่าเป็นคนละตัวกัน
6. ห้ามตั้งชื่อซ้ำกับคำสงวนของภาษา C
2. ตัวอักษรตั้งแต่ตัวที่ 2 สามารถเป็นตัวเลข หรือเครื่องหมาย_ก็ได้
3. จะต้องไม่มีการเว้นวรรคภายในชื่อ แต่สามารถใช้เครื่อง_คั่นได้
4. สามารถตั้งชื่อได้ยาวไม่จำกัด แต่จะใช้ตัวอักษรแค่ 31 ตัวแรกในการอ้างอิง
5. ชื่อที่ตั้งด้วยตัวอักษรพิมพ์ใหญ่และพิมพ์เล็ก จะถือว่าเป็นคนละตัวกัน
6. ห้ามตั้งชื่อซ้ำกับคำสงวนของภาษา C
การสร้างเอกสารในจาวา (Javadoc)
Javadoc คือ เครื่องมือที่สร้างเอกสารเป็น html คล้ายๆ กับการอ้างอิงที่ Java.sun.com
จากการคอมเมนต์แบบ Javadoc ในโค้ดใน Javadoc จะรู้จักรูปแบบการคอมเมนต์ด้วยสัญลักษณ์ /**
Java doc */Javadoc จะใช้อธิบายคลาส (Classes) อินเตอร์เฟส (Interfaces) คอนสตักเตอร์
(Constructor) คุณสมบัติ (Attribute หรือ Properties หรือ Variable)และเมธอด (Methods)ใน
การสร้างเอกสาร html โดยวางส่วนของ Javadoc ไว้ก่อนการระบุชื่อ เช่น
การคอมไพล์ Javadoc
การสร้างเอกสาร html จากคลิปส์สามารถสร้างได้โดย เลือก Project->Generate java doc..
อีคลิปส์สามารถคอมไพล์ Javadoc ตามรูปที่ระบุ Path ที่มี Javadoc.exe เลือก Path ปลายทาง (แต่ละเครื่องอาจไม่เหมือนกัน ขึ้นอยู่กับการติดตั้ง) อีคลิปส์ก็จะสร้างไฟล์ html ให้โดยอัตในมัติ
หลักสากลนิยมในการระบุชื่อ
หลักสากลนิยมในการระบุชื่อ
Class Names
กำหนดชื่อเป็นคำนาม,คำแรกและคำที่สองขึ้นต้นด้วยตัวพิมพ์ใหญ่ เช่น
public Class DogAndCat {
/ / Class body
}
เมื่อรวมแล้วคลาสดังกล่าวจะได้โครงสร้างคลาสดังนี้
package Openstandard .ch02 ;
public Class DogAndcat {
public int weight ;
public int LEG_NUMBER = 4 ;
public void canwalk ( ) {
// Method body
}
}
ชนิดของข้อมูลในภาษาจาวา
ชนิดข้อมูลดั้งเดิม (Prrimitive data type)
ข้อมูลดั้งเดิมในภาษาจาวามีอยู่ 8 ประเภท ซึ่งเราสารถนำมาใช้งานได้
Integer Type คือ ข้อมูลชนิดเลขจำนวนเต็มโดยแบ่งออกเป็น Byte, Shot, lnt, Long ซึ่งชนิดเลขจำนวนเต็มแต่ละชนิดจะใช้หน่วยความจำที่แตกต่างกัน ฉะนั้น ขึ้นอยู่กับการนำไปใช้ประโยชน์ของโปรแกรมเมอร์ที่จะนำไปใช้ เช่น ใช้กับระบบปฎิบัติการชนิดต่างๆ
ข้อมูลคลาส(Class Type หรือ Reference Type)
การใช้งานทางคณิตศาสตร์ในภาษาจาวา
นิพจน์ (Experssion)
ทางคณิตศาสตร์นั้นเป็นนิพจน์ที่ใช้ในการคำนวณ ซึ่งนิพจน์ทางคณิตศาสตร์นั้นจะมีรูปแบบเหมือนกับสมการคณิตศาสตร์ แต่จะประกอบไปด้วย ค่าคงที่หรือตัวแปร ซึ่งเรียกอีกอย่างว่า ตัวถูกดำเนินการ (Operand) แล้วเชื่อมกันด้วยเครื่องหมายทางคณิตศาสตร์ หรือเรียกอีกอย่างว่า ตัวดำเนินการ (Operator) นั่นเอง
ชนิดของตัวดำเนินงาน (Operator)
ตัวดำเนินการที่ใช้ในการกำหนดค่านั้นจะเป็นเครื่องหมาย = การทำงานของตัวดำเนินการนี้จะทำการนำค่าที่อยู่ทางด้านขวาของตัวดำเนินการไป เก็บไว้ในตัวแปรทางด้านซ้ายของตัวดำเนินการสิ่งที่อยู่ด้านขวาของตัวดำเนิน การนั้นอาจจะเป็นนิพจน์ทางคณิตศาสตร์ หรือจะเป็นตัวแปรก็ได้ รูปแบบ [ตัวแปร] = [นิพจน์] Simple Assignments (การกำหนดค่าแบบง่าย) Simple Assignments จะมีรูปแบบเหมือนกับรูปแบบด้านบน หรือเหมือนกับสมการทางคณิตศาสตร์ทั่วไป
ตัวอย่างที่ 2.17
ผลการรันโปรแกรมตัวอย่างที่ 2.17
ตัวดำเนินการเชิงเปรียบเทียบ (Relational Opeators)
สิ้งสำคัญในการเขียนโปรแกรมคอมพิวเตอร์อย่างหนึ่งคือ การเปรียบเทียบซึ่งจะต้องมีตัวดำเนินการในการเปรียบเทียบระหว่างตัวแปรต่างๆของแต่ละนิพจน์เพื่อเป็นเงื่อนไขในการทำสิ่งใดสิ่งหนึ่งตามผู้ที่เขียนโปรแกรมต้องการให้โปรแกรมต้องการโห้โปรแกรมเขียนทำงานต่อเนื่องโดยเป็นผลลัพให้เป็น True หรือ False เท่านั้น
ตัวดำเนินการทางตรรกะ (Logical Operators)
ตัวดำเนินการทางตรรกะ เป็นตัวดำเนินการเกี่ยวข้องกับนิพจน์ที่สามารถบอกค่าความจริงเป็นจริง(true) หรือเท็จ (false)ได้ หรือชนิดข้อมูลตรรกะ เช่น ตัวแปรประเภท boolean ผลลัพธ์ที่ได้จากการกระทำจะได้ค่าคงที่ตรรกะเป็น true หรือ false ตัวดำเนินการทางตรรกะได้แก่เครื่องหมาย !, &&, &, ||, |, ^ มีตัวอย่างการ
ตัวอย่างที่ 2.18
ตัวดำเนินการระดับบิต (Bitwise Operators)
คือกลุ่มของเครื่องหมายหรือสัญลักษณ์ที่ใช้ทำงานเหมือนกับฟังก์ชัน แต่แตกต่างกันตรงไวยากรณ์หรือความหมายในการใช้งาน ในภาษา Python นั้นสนับสนุนตัวดำเนินการประเภทต่างๆ สำหรับการเขียนโปรแกรม เช่น ตัวดำเนินการ + เป็นตัวดำเนินการทางคณิตศาสตร์ที่ใช้สำหรับการบวกตัวเลขเข้าด้วยกัน หรือตัวดำเนินการ > เป็นตัวดำเนินการเพื่อให้เปรียบเทียบค่าสองค่า
การแปลงชนิดของข้อมูล
เมื่อเราเขียนโปรแกรมมักจะพบว่า ใช้ตัวดำเนินการกับตัวแปรของชนิดข้อมูลแตกต่างกัน เพื่ออำนวยความสะดวกในการเขียนโปรแกรมภาษา C จึงได้กำหนดกฎเกณฑ์ดังนี้ ถ้าค่าตัวแปร หรือค่าคงที่ต่างชนิดกัน ให้ทำการเปลี่ยนชนิดของข้อมูลที่มีขนาดเล็กให้เป็นชนิดของข้อมูลที่ใหญ่ขึ้น
การสร้างและใช้งานเมธธอด
การสร้างและใช้งานเมธธอดในภาษาจาวานั้นจะต้องยึดหลักและรูปแบบการเขียนภาษาจาวาเป็นอย่างดี เนื่องจากเราจะนำหลักการของการโปรแกรมเชิงวัตถุมาใช้ ฉะนั้นการสร้างเมธธอดต่างๆ จะต้องมีวัตถุประสงค์อย่างชัดเจรตามหลักการซึ่งควรคำนึงการออกแบบโปรแกรมด้วย โดยปกติคลาสในภาษาจาวาจะประกอบไปด้วยสำคัญ คือ คลาส คุณสมบัติ และเมธธอด และคุณสมบัติบางประการที่ทำให้แต่ละคลาสเชื่อมโยงความสำพันธ์ระหว่างกัน ดังนี้
การใช้งานเมธธอด
การใช้งานเมธธอดเป็นสิ่งสำคัญมาก แต่จะมีขั้นตอนที่แตกต่างจากการเขียนโปรแกรมแบบเดิม คือ จะต้องทำการสร้าง Object หรือ Instance ก่อนที่จะมีการเรียกใช้งานทั้งคุณสมบัติหรือเมธธอดต่างๆ ที่คลาสแต่ละคลาสสัมพันธ์กัน
การส่งค่าไปยังเมธธอด
เมธอด เป็นกลุ่มของคำสั่งที่สร้างขึ้นมาเพื่อทำหน้าที่บางอย่าง การสร้างเมธอดจะสามารถทำให้เราใช้โค้ดนั้นซ้ำๆ โดยที่ไม่ต้องเขียนโปรแกรมใหม่ เมื่อสร้างเมธอดในภาษา Java มันสามารถที่จะเรียกใช้งานได้จากส่วนใดๆ ของโปรแกรม ขึ้นกับขอบเขตและระดับการเข้าถึงที่ได้กำหนดขึ้น โดยรูปแบบในการสร้างเมธอดในภาษา Java
ขอบเขตของตัวแปร
ตัวแปรที่คุณต้องการใช้งานในแอพพลิเคชันหนึ่งๆ จะมีมากมายหลายชนิด สิ่งหนึ่งที่คุณควรทราบก็คือ ตัวแปรแต่ละตัวมีขอบเขต การใช้งานเป็นอย่างไร หัวข้อนี้จะเป็นการอธิบาย ข้อจำกัดและขอบเขตของตัวแปร ใน VB สามารถแบ่งขอบเขตตัวแปรได้ 2 ประเภท คือ
1.ตัวแปรแบบ Local
2.ตัวแปรแบบ Public
ความคิดเห็น
แสดงความคิดเห็น