16
หลักการแก้ปัญหากับ ภาษาคอมพิวเตอร์ ครูสุรศักดิ สีน้าเงิน

หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

หลกการแกปญหากบภาษาคอมพวเตอร

ครสรศกด สน าเงน

Page 2: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

หลกการแกปญหา ประกอบไปดวย 4 ขนตอน 1. การวเคราะหและการก าหนดรายละเอยด

ของปญหา 2. การเลอกเครองมอและออกแบบขนตอนวธ

3. การด าเนนงานแกปญหา 4. การตรวจสอบและปรบปรง

Page 3: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

1. การวเคราะหและการก าหนดรายละเอยดของปญหา

คอการท าความเขาใจกบปญหาเพอแยกใหออกวาขอมลทก าหนดมาใหในปญหาหรอเงอนไขของปญหาคออะไร และสงทตองการคออะไร อกทงวธการทใชประมวลผล ในการวเคราะหปญหาใด กลาวโดยสรปมองคประกอบในการวเคราะหปญหา ดงน

1.1 การระบขอมลออก (output) ไดแก การพจารณาเปาหมายหรอสงทตองหาค าตอบ

1.2 การระบขอมลเขา(input)ไดแก การพจารณาขอมลและเงอนไขทก าหนดมาในปญหา

1.3 การก าหนดวธประมวลผล (process) ไดแก การพจารณาขนตอนวธการดานซงค าตอบหรอขอมลออก

Page 4: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

ครมปญหาเสยแลวนกเรยน ? ไอจบตองการหาพนทกรงหมหยองซงเปนพนทสเหลยมผนผาท ายงไงดละครบ

ขนตอนท 1 เขาสกระบวนการวเคราะหปญหา

ระบขอมลออก(output)... ไดแก พนทสเหลยม ----> Area

ระบขอมลเขา(input)... ไดแก กวาง ---->X , ยาว -----> Y

ก าหนดวธประมวลผล (process)

Area=X ×Y

Page 5: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

2. การเลอกเครองมอและออกแบบขนตอนวธ

ขนตอนนเปนขนตอนการวางแผนอยางละเอยดถถวน หลงจากทเราท าความเขาใจของปญหา พจารณาขอมลและเงอนไขทมอย

Page 6: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

ใหนกเรยนออกแบบวางแผนการแกปญหาในการหาพนทสเหลยม

เรมตน ขนท 1 รบคาความกวาง (X) ขนท 2 รบคาความยาว (Y)

ขนท 3 หาพนทสเหลยม = กวาง × ยาว( Area = X ×Y)

ขนท 4 แสดงผลคาพนทสเหลยม ( Area) จบการท างาน

Page 7: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

เครองมอทชวยในการออกแบบ

ผงงาน(Flowchart) ทจ าลองขนตอนวธการแกปญหาในรปของสญลกษณ

รหสจ าลอง (pseudo code) ซงเปนรหสจ าลองขนตอนวธการแกปญหาในของของค าบรรยาย

Page 8: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

ศกษาดวยตวเองบางละ....

ใหนกเรยนศกษารปผงงาน(Flowchart) พรอมทงความหมายจากใบความร

Page 9: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

ทดสอบน าขนตอนการหาพนทสเหลยมมาเขยนเปนผงงาน(Flowchart)

X

Y

Area = X × Y

Area

Stop

เรมตนขนท 1 รบคาความกวาง (X)ขนท 2 รบคาความยาว (Y)

ขนท 3 หาพนทสเหลยม = กวาง × ยาว( Area = X × Y)

ขนท 4 แสดงผลคาพนทสเหลยม ( Area)จบการท างาน

X เปนชนด double หรอ float

Y เปนชนด double หรอ float

Area เปนชนด double หรอ float

Start

Page 10: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

3. การด าเนนการแกปญหา ขนตอนนเปนขนตอนทตองลงมอปฏบตแกปญหาโดยใชเครองมอทไดเลอกไว หากการแกปญหาดงกลาวใชคอมพวเตอรเขามาชวยงาน ขนตอนนกเปนการใชโปรแกรมส าเรจหรอใชภาษาคอมพวเตอรเขยนโปรแกรมแกปญหา

Page 11: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

Start

X

Y

Area = X × Y

Area

Stop

Start

#include<stdio.h>

#include<conio.h>

main()

{ float X,Y,Area;

scanf("%f",&X);

scanf("%f",&Y);

Area=X*Y;

printf("%f",Area);

getch();}

Page 12: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

4. การตรวจสอบและปรบปรง ตองตรวจสอบใหแนใจวาผลลพธถกตอง โดยผแกปญหาตองตรวจสอบวาขนตอนวธการสรางขนสอดคลองกบรายละเอยดของปญหา ซงไดแก ขอมลเขา และขอมลออก เพอใหมนใจวาสามารถรองรบขอมลเขาไดทกกรณอยางถกตองและสมบรณ ในขณะเดยวกนกตองปรบปรงวธการเพอใหการแกปญหานไดผลลพธทดทสด

Page 13: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

ภาษาคอมพวเตอร

1. ภาษาเครอง (Machine Language) เปนภาษาทเครองเขาใจ แตยากในการเขยนและแกไขโปรแกรมเพราะประกอบดวย ตวเลขฐานสอง คอ 0 และ 1

2. ภาษาสญลกษณ (Symbol Language) เปนภาษาทใชสญลกษณแทน 0 และ 1 เชน ADD แทนการบวก SUB แทนการลบ ตวอยางภาษาสญลกษณ เชน ภาษาแอสแซมบล (Assembly)

3. ภาษาระดบสง (High Level Language) เปนภาษาทงายตอการเรยนร เนนการสงใหคอมพวเตอรท างานตามขนตอนทก าหนดไว ตวอยางภาษาระดบสงเชน ภาษา BASIC, PASCAL, RPG,

COBOL, FORTRAN, PL/1, ALGOL และ C เปนตน

Page 14: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

ภาษาคอมพวเตอร

4. ภาษาระดบสงมาก (Very High Level Language) เปนชดค าสงภาษาองกฤษเชนเดยวกบภาษาระดบสง ตางกนตรงทไมตองบอกใหคอมพวเตอรท างาน เพยงแตสงวาเราตองการใหคอมพวเตอรท างานอะไร ภาษาระดบนออกแบบาเพอใหใชงานรวมกบโปรแกรมอนในการจดการขอมลในลกษณะตาง ๆ เชน Visual Basic และ Java เปนตน

5. ภาษาธรรมชาต (Natural Language) เปนภาษาทผใชสามารถสงใหคอมพวเตอรท างานไดโดยใชภาษาพด

Page 15: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

ตวแปรภาษา

1. คอมไพเลอร (Compiler) เปนโปรแกรมทท าหนาทในการแปลโปรแกรมทเขยนดวยภาษาระดบสง ทเรยกกนวา โปรแกรมตนฉบบ (Source Program) ใหเปนภาษาเครอง ถามขอผดพลาด เครองจะพมพรหสหรอขอผดพลาดออกมาดวย ภายหลงการแปลถาไมมขอผดพลาด ผใชสามารถสงประมวลผลโปรแกรมและสามารถเกบโปรแกรมทแปลภาษาเครองไวใชงานตอไปไดอก โดยไมตองแปลโปรแกรมซ าอก ตวอยางโปรแกรมทแปลภาษาแบบน ไดแก โปรแกรมภาษาฟอรแทรน โปรแกรมแปลภาษาโคบอล โปรแกรมแปลภาษาปาสคาล โปรแกรมแปลภาษาซ

Page 16: หลักการแก้ปัญหากับ ภาษา ......COBOL, FORTRAN, PL/1, ALGOL และ C เป นต น ภาษาคอมพ วเตอร 4. ภาษาระด

ตวแปรภาษา

2. อนเตอรพรเตอร (Interpreter) เปนโปรแกรมทท าหนาทในการแปลโปรแกรมทเขยนดวยภาษาระดบสงใหเปนภาษาเครอง เชนเดยวกบคอมไพเลอร ความแตกตางจะอยทอนเตอรพรเตอรจะท าการแปลและประมวลผลทละค าสง ขอเสยของอนเตอรพรเตอร กคอ ถาน าโปรแกรมไปใชงานอกจะตองท าการแปลโปรแกรมทกครง ภาษาบางภาษามโปรแกรมแปลทงสองลกษณะ เชน ภาษาเบสก เปนตน