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

2.3 การกำหนดค่าให้ตัวแปร
การกำหนดค่า ในทางวิทยาการคอมพิวเตอร์ คือการระบุค่าหรือการตั้งค่าใหม่ให้กับตำแหน่งเก็บข้อมูลที่แสดงไว้โดยชื่อตัวแปร ในภาษาโปรแกรมเชิงคำสั่ง ข้อความสั่งกำหนดค่า เป็นข้อความสั่งพื้นฐานอย่างหนึ่ง ข้อความสั่งกำหนดค่ามักอนุญาตให้ชื่อตัวแปรเดิมสามารถมีได้หลายค่าในเวลาต่าง ๆ ในระหว่างที่โปรแกรมทำงา
สัญกรณ์[แก้]
ตัวแทนการนำเสนอแบบข้อความโดยสามัญของการกำหนดค่ามักจะใช้เครื่องหมายเท่ากับ "=" และ ":=" รูปแบบทั้งสองนี้เป็นรูปแบบปกติของภาษาโปรแกรมหลายภาษา (เช่นภาษาซี) ซึ่งจัดจำแนกการกำหนดค่าว่าเป็นตัวดำเนินการเติมกลาง
ตัวแปร = นิพจน์ | ภาษาเบสิก, ภาษาฟอร์แทรน, ภาษาซี, ภาษาจาวา, ภาษาพีแอล/วัน, วินโดวส์ เพาเวอร์เชลล์, บอร์นเชลล์, ฯลฯ |
ตัวแปร := นิพจน์ | ภาษาอัลกอล, ภาษาปาสกาล[1], ภาษาเอดา, ภาษาดิลัน[2], ภาษาไอเฟล[3][4], ฯลฯ |
ความเป็นไปได้อย่างอื่นคือเพิ่มลูกศรชี้ข้างซ้ายหรือคำหลักเข้าไป หรือแม้แต่รูปแบบต่างที่สามารถใช้ได้ซึ่งพบเห็นได้น้อยกว่า
ตัวแปร << นิพจน์ | ภาษาแมจิก |
ตัวแปร <- นิพจน์ | ภาษาอ็อบเจกทีฟแคมัล, ภาษาเอส, ภาษาอาร์, ฯลฯ |
ตัวแปร ← นิพจน์ | ภาษาเอพีแอล[5] |
ตัวแปร =: นิพจน์ | ภาษาเจ |
LET ตัวแปร = นิพจน์ | ภาษาเบสิก |
set ตัวแปร to นิพจน์ | แอปเปิลสคริปต์ |
set ตัวแปร = นิพจน์ | ซีเชลล์ |
Set-Variable ตัวแปร (นิพจน์) | วินโดวส์ เพาเวอร์เชลล์ |
val ตัวแปร = นิพจน์ | ภาษาเอ็มแอล[6] |
ตัวแปร : นิพจน์ | แมกซิมา |
บางแพลตฟอร์มก็วางนิพจน์ไว้ทางซ้ายและวางตัวแปรไว้ทางขวา
MOVE นิพจน์ TO ตัวแปร | ภาษาโคบอล |
นิพจน์ → ตัวแปร | ภาษาทีไอ-เบสิก, ภาษาเบสิกคาสิโอ (เครื่องคิดเลข) |
นิพจน์ -> ตัวแปร | ภาษาอาร์ |
ในภาษาโปรแกรมเชิงนิพจน์บางภาษา อย่างเช่นภาษาลิสป์ [7][8] และภาษาทีซีแอล ใช้วากยสัมพันธ์แบบเติมหน้าเพียงอย่างเดียวสำหรับทุกข้อความสั่ง ซึ่งรวมทั้งการกำหนดค่าด้วย
(setq ตัวแปร นิพจน์) | ภาษาลิสป์, ภาษาสกีม[9][10][11] (set!), ฯลฯ |
set ตัวแปร นิพจน์ | ภาษาทีซีแอล |
การดำเนินการ[แก้]
การดำเนินการกำหนดค่าตามความหมายแล้วเป็นการเปลี่ยนแปลงสถานะปัจจุบันของโปรแกรมที่กำลังทำงานอยู่ ดังนั้นการกำหนดค่าจึงขึ้นอยู่กับแนวคิดของตัวแปร ในการกำหนดค่าหนึ่ง ๆ นิพจน์จะถูกประเมินค่าในสถานะปัจจุบันของโปรแกรม และ ตัวแปร จะถูกกำหนดด้วยค่าที่ประเมินนั้น แทนที่ค่าที่มีอยู่ก่อนหน้าในตัวแปร ตัวอย่างเช่น สมมติให้
a เป็นตัวแปรเชิงตัวเลข การกำหนดค่า a := 2*a หมายถึงการทำให้ข้อมูลของตัวแปร a เพิ่มค่าเป็นสองเท่าหลังจากทำงานข้อความสั่งนี้แล้ว
ต่อไปนี้คือตัวอย่างส่วนหนึ่งของภาษาซี
int x = 10;
float y;
x = 23;
y = 32.4;
จากตัวอย่างนี้ ตัวแปร
x ประกาศไว้ว่าเป็นจำนวนเต็ม (int) เมื่อเริ่มแรก จากนั้นจึงกำหนดค่าเป็น 10 สังเกตว่าการประกาศและการกำหนดค่าเกิดขึ้นในข้อความสั่งเดียวกัน บรรทัดที่สอง ตัวแปรy ประกาศเป็นจำนวนจุดลอยตัว (float) โดยไม่กำหนดค่า บรรทัดถัดไป x ถูกกำหนดค่าใหม่ให้เป็น 23 และท้ายสุด y ถูกกำหนดให้มีค่าเท่ากับ 32.4
ในการดำเนินการกำหนดค่านั้น สิ่งสำคัญคือค่าของ นิพจน์ จะต้องนิยามไว้แล้วเป็นอย่างดี (เป็น rvalue ที่ถูกต้อง) และ ตัวแปร จะต้องแทนด้วยเอนทิตีที่สามารถแก้ไขได้ (เป็น lvalue ที่เปลี่ยนแปลงได้ คือไม่เป็นค่าคงตัว) ในบางภาษาอย่างเช่นภาษาเพิร์ล ไม่จำเป็นต้องประกาศตัวแปรก่อนกำหนดค่าก็ได้
2.4 กรณีศึกษาการแก้ปัญหา
ภาษาโลโกถูกสร้างขึ้นเมื่อปี ค.ศ. 1967 ในเมืองเคมบริดจ์ รัฐแมสซาชูเซตส์ สหรัฐอเมริกา โดยนาย Wally Feurzeig และ Seymour Papert ตัวภาษาครั้งแรกถูกพัฒนาขึ้นด้วยภาษาลิสป์บนเครื่องคอมพิวเตอร์ PDP-1 โดยมีจุดประสงค์ดั้งเดิมคือการแก้ไขปัญหาง่ายๆ ด้วยการใช้ "เต่า" ในการตอบสนองเพื่อค้นหาจุดบกพร่อง
ภาษาโลโกเริ่มขึ้นในปี พ.ศ. 2513 เมื่อกลุ่มนักวิจัยของสถาบันเทคโนโลยีแมสซาชูเซตส์ นำโดย เซย์มัว พาเพิร์ต ได้ทำการออกแบบและสร้างหุ่นยนต์ คล้ายกับของ เกย์ วอลเทอร์ เพื่อให้เด็ก ๆ สามารถเขียนโปรแกรมคำสั่งที่ใช้ภาษาที่เข้าใจง่าย สั่งให้โปรแกรมทำงานตามที่ต้องการ พวกเขาจึงทำการพัฒนาภาษาคอมพิวเตอร์ขึ้นใหม่ เรียกว่าภาษา “โลโก” เป็นภาษาที่ง่ายสำหรับเด็ก ช่วยให้เด็กสามารถเขียนคำสั่งให้หุ่นยนต์เต่า (Logo) เคลื่อนที่ไปมาและเปลี่ยนทิศทางตามที่ต้องการ ภาษาโลโกจึงเป็นทางเลือกใหม่ สำหรับเด็กในการฝึกทักษะทางภาษาคอมพิวเตอร์ และสามารถสร้างงานจากจินตนาการ โดยอาศัยความเข้าใจพื้นฐานของวิชาคณิตศาสตร์ที่ใช้ในชีวิตประจำวันได้ ในปัจจุบันเครื่องคอมพิวเตอร์และอุปกรณ์ต่าง ๆ มีราคาถูก จึงได้มีการพัฒนาโปรแกรมสำเร็จรูปให้สามารถจำลองหุ่นยนต์เต่าอิเล็กทรอนิกส์ เป็นภาพกราฟิกเต่า เคลื่อนที่ไปมาบนจอภาพคอมพิวเตอร์ ต่อมามีการเปลี่ยนแปลงรูปแบบของภาพกราฟิกเต่า มาเป็นภาพสัญลักษณ์สามเหลี่ยม
ไม่มีความคิดเห็น:
แสดงความคิดเห็น