ชิ้นงานการเขียนโปรแกรม...
TRANSCRIPT
![Page 1: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/1.jpg)
ชนงานการเขยนโปรแกรมคอมพวเตอรในหวขอเรอง
โปรแกรมหารปรางโมเลกลเสนตรง( The project of Computer
Programming.In the Program Molecular. )
จดทำาโดยนายอศรา นวมป น เลขท 7นางสาวธญญรตนหรญวงษ เลขท 29นางสาวเปรมฤทย อนม เลขท 42กลม D2 ชนมธยมศกษาปท 5/2
อาจารยทปรกษา : นายวชระ วงษด
ชนงานนเปนสวนหนงของวชาการเขยนโปรแกรม 2ภาคเรยนท 2 ปการศกษา 2551
โรงเรยนตากพทยาคม
![Page 2: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/2.jpg)
แบบฟอรมชนงานการเขยนโปรแกรมคอมพวเตอร (ทำาเฉพาะในเวลาเรยน)
ชอโครงงาน (ภาษาไทย) โปรแกรมหารปรางโมเลกลเสนตรงชอโครงงาน (ภาษาองกฤษ) Program Molecularชอกลมโครงงาน D2
ระดบชนมธยมศกษาปท 5/2
โรงเรยนตากพทยาคมชอผทำาโครงงาน
1. นายอศรา นวมปน เลขท 12
2. นางสาวธำยยรตน หรญวงษ เลขท 13
3. นางสาวเปรมฤทยอนม เลขท 41
ชออาจารยทปรกษา 1. นายวชระ วงษด2. นายนรนทร เงนด
ทปรกษาพเศษ 1. นางตะวน หรญวงษ 2.นายดเรก อนม
ระยะเวลาดำาเนนงาน 1. ชนงานภาคเรยนท 1 (SA - ออกแบบจอภาพ)
ตงแตวนท 15 พฤษภาคม 2551 ถงวนท 31 สงหาคม 2551 (3 เดอน 15 วน)
2. ชนงานภาคเรยนท 1 (ออกแบบจอภาพ - Source Code หรอ คมอเอกสารการใชงาน )
ตงแตวนท 1 กนยายน 2551 ถงวนท 30 มกราคม 2552 ( 5 เดอน ) รวมระยะเวลาทงสน 8 เดอน 15 วน
1. แนวคด ทมา และความสำาคญเนองจากในปจจบนการเรยนการสอนเรองรปรางโมเลกลในวชาเคมนน ยากแก
การอธบายใหผเรยนเขาใจในเรองรปรางโมเลกลไดยาก ซงมสาเหตมาจากรปรางโมเลกลนนมหลากหลายรปแบบ และเปนทรงสามมต ทำาใหเวลาอานชอสารนนแลวไมสามารถเขาใจไดวาเปนรปรางโมเลกลแบบใด จงไดมการคดคนวธทจะทำาใหเขาใจงายขน จงไดคดโปรแกรมหารปทรงโมเลกลนขนมา
2. วตถประสงค
![Page 3: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/3.jpg)
1. ไดโปรแกรมทมคณภาพการใชงานตรงตามทตองการ 2. สามารถนำาโปรแกรมไปใชในการเรยนการสอนได 3.สามารถนำาไปใชงานแลวทำาใหผใชงานเกดความเขาใจมากขน
3. หลกการและทฤษฎ นำาหลกการเรองรปรางโมเลกลในวชาเคมในเรองสารประกอบโคเวเลนซมาประยกตใชในการสรางโปรแกรม
รปรางเสนตรง ( Linear)
โมเลกล BeCl2 มสตรโครงสรางแบบจดและแบบเสนดงน
อะตอมกลาง Be ในโมเลกล BeCl2 มเวเลนตอเลกตรอนทงหมด 2 ค และทงสองคเปนอเลกตรอนครวมพนธะ ซงจะเกดการผลกกนใหหางกนมากทสด ทำาใหโมเลกลเปนรปรางเสนตรง มมมระหวางพนธะเปน 180 0 ดงรป
ในโมเลกล CO2 มสตรแบบจดและแบบเสนดงน
อะตอมกลาง C ในโมเลกล CO2 มเวเลนตอเลกตรอนทงหมด 4 ค และทง 4 ค เปอเลกตรอนครวมพนธะค 2 พนธะ ซงจะเกดแรงผลกกนใหมากทสด ทำาใหโมเลกลเปนรปเสนตรง มมมระหวางพนธะเปน 180 0 ดงรป
![Page 4: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/4.jpg)
สรป
โมเลกลหรอไอออนโคเวเลนตใด ๆ ถาอะตอมกลางม 2 พนธะ จะเปนพนธะชนดใดกได และไมมอเลกตรอนคโดดเดยว โมเลกลหรอไอออนนนจะมรปรางเปน เสนตรง
4. วธดำาเนนงาน
วสดอปกรณ เครองคอมพวเตอรพรอมอปกรณตอพวง ขนตอนการดำาเนนงาน
1. ศกษาการใชโปรแกรมภาษาซ จากเอกสารประกอบการเรยน2. คนควาหาขอมลและสตรในการคำานวณ เพอนำามาใชในการสรางโปรแกรม3. แบงหนาทของสมาชกในกลม ตามความสามารถและความถนดของแตละคน4. จดทำาโปรแกรมการแปลงอณหภมจากองศาเซลเซยสเปนองศาเคลวน
สถานท หองปฏบตการคอมพวเตอร 1 โรงเรยนตากพทยาคม
5. ขนตอนการปฏบต
ตลาคม 2551 เสนอหวขอโครงงานเพอนำามาใชจดทำาโปรแกรม ตลาคม 2551 อาจารยประจำาวชาอนมตการทำาโครงงาน
ตลาคม 2551 ศกษาการใชโปรแกรมภาษาซ จากเอกสารประกอบการเรยนตลาคม 2551 คนควาหาขอมลและสตรในการคำานวณ เพอนำามาใชในการสรางโปรแกรมตลาคม 2551 แบงหนาทของสมาชกในกลม ตามความสามารถและความถนดของแตละคน
![Page 5: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/5.jpg)
ตลาคม 2551 จดทำาโปรแกรมการแปลงอณหภมจากองศาเซลเซยสเปนองศาเคลวน
พฤศจกายน 2551 ขอคำาแนะนำาจากอาจารยทปรกษา พฤศจกายน 2551 แกไขและปรบปรง พฤศจกายน 2551 จดทำารปเลมรายงาน
6.ผลทคาดวาจะไดรบ1. โปรแกรมทไดมคณภาพตามความตองการ
2. รหลกการและขนตอนการสรางโปรแกรมคอมพวเตอรและนำาไปใชไดจรง 3. เกดความสามคคภายในกลม และรจกการวางแผนการทำางานอยางมระบบ
7.เอกสารอางอง
http://school.obec.go.th/banluang/Vit/Rob/Rob.htm ( เอกสารอางองไมถกตองตามหลกบรรณานกรม )
1. การวเคราะหและออกแบบระบบของโปรแกรม หา รปรางโมเลกลเสนตรง ( S ystem a nalysis and design or SA of Program Molecular. )
1.1 Context diagram
![Page 6: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/6.jpg)
1.2 Level 0
หมายเหต ( Comment ) * SA > Level 0 > Process 2 ชอวเคราะหสถานะของสาร ซงขดแยงกบวเคราะหปญหา
1.3 การวเคราะหปญหา (Problem Analysis)
1.3.1 การวเคราะหปญหาของระดบ 0 > การประมวลผลท 1(The problem analysis of Level 0 > Process 1 )
วเคราะหหารปรางโมเลกลเสนตรงพรอมหามวลโมเลกล
ของสารประกอบ
นกเรยน ชอสารประกอบ
ผลลพธมวลโมเลกล ของสารประกอบ
1หารปราง
โมเลกลเสนตรง
2. วเคราะหสถานะ
ของสาร จาก
องศาเคลวน (K)
ชอสารประกอบ
ผลลพธมวลโมเลกล ของ
ผลลพธรปรางโมเลกลเสนตรง ชออะตอมกลางจำานวนอะตอมทลอมรอบอะตอมกลาง
นกเรยน
นกเรยน
นกเรยน
นกเรยน
นกเรยน
![Page 7: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/7.jpg)
ชอขอบเขตของระบบ (Context diagram) : วเคราะหสถานะของสารจากองศาเคลวน ทแปลงคาแลว
ชอปญหาความตองการของระบบท : Level 0 > Process 1
ชอความตองการของระบบ (Level 0) : หารปรางโมเลกลเสนตรงกำาหนดจดประสงค : ตองการหารปรางโมเลกลเสนตรงผลลพธ (ชอ Data Flow ของลกศรทออกจากระบบน) : ผลลพธรปรางโมเลกลเสนตรง
Program Molecular
Input Substance: CO2
Result of molecular: O-C-O
กำาหนดตวแปร
ลำาดบท
รายการขอมลนำาเขาหรอขอมลสารสนเทศ
(ชอ Data Flow ของ SA ทงหมดของระบบน )
ตงชอตวแปร(ภาษาองกฤษ)
ชนดตวแปร(ตวเลข....,
อกขระ ,ขอความ)
ขนาดขอมล (ขนาดสงสดกหลก, กตวอกขระ)
ตวอยางขอมล(มาจากออกแบบจอภาพ)
1. ชอสารประกอบ Substance ขอความ 3 CO22. ผลลพธรปราง
โมเลกลเสนตรงmolecular ขอความ 6 O-C-O
3. ชออะตอมกลาง atom_center
ตวอกษร 1 C
4. ธาตทลอมรอบอะตอมกลาง
around
ตวอกษร 1 O
5. จำานวนอะตอมของธาตทลอมรอบอะตอมกลาง
number_around
ตวเลขจำานวนเตม
1 2
![Page 8: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/8.jpg)
1.3.2 การวเคราะหปญหาของระดบ 0 > การประมวลผลท 2(The problem analysis of Level 0 > Process 2 )
ชอขอบเขตของระบบ (Context diagram) : คำานวณหามวลโมเลกลของสารประกอบชอปญหาความตองการของระบบท : Level 0 > Process 2
ชอความตองการของระบบ (Level 0) : หามวลโมเลกลของสารประกอบจากรปรางโมเลกลเสนตรง
ขดแยงกบ SA > Level 0 > Process 2
กำาหนดจดประสงค : ตองการวเคราะหหามวลโมเลกลของสารประกอบจากรปรางโมเลกลเสนตรงผลลพธ (ชอ Data Flow ของลกศรทออกจากระบบน ) : ผลลพธมวลโมเลกลของสารประกอบ
Molecule weight of substance = 44
กำาหนดตวแปรลำาดบท
รายการขอมลนำาเขาหรอ
ขอมลสารสนเทศ
(ชอ Data Flow
ของ SA ทงหมดของระบบน )
ตงชอตวแปร(ภาษาองกฤษ)
ชนดตวแปร(ตวเลข....,
อกขระ ,ขอความ)
ขนาดขอมล (ขนาดสงสดกหลก, กตวอกขระ)
ตวอยางขอมล(มาจากออกแบบจอภาพ)
1. ชออะตอมกลาง atom_center
ตวอกษร 1 C
2. ธาตทลอมรอบอะตอมกลาง
around ตวอกษร 1 O
3. จำานวนอะตอมของธาตทลอมรอบอะตอมกลาง
number_around
ตวเลขจำานวนเตม
1 2
![Page 9: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/9.jpg)
4. ผลลพธมวลโมเลกล
Molecule_weight
ตวเลขจำานวนเตม
2 44
5. เลขมวลของชออะตอมกลาง
m_atom_center
ตวเลขจำานวนเตม
2 12
6.
เลขมวลของชอธาตทลอมรอบอะตอมกลาง
m_around
ตวเลขจำานวนเตม
2 16
คำาอธบายการแกปญหาทละขนตอน ( อลกอรท ม ) ของระดบ 0 > การประมวลผล ท 1
(Algorithm of Level 0 > Process 1 )
การวเคราะหปญหาของ Level 0 > Process 1
ปญหาของงาน : การหารปรางโมเลกลเสนตรง
1. เรมการทำางาน2. กำาหนดตวแปร substance = “ ” , molecular = “ ”,atom_center = “ ”,around = “ ”, Number_around = 0,molecular_weight = 03. แสดงขอความวา “ Program molecular ”
4. แสดงขอความวา “ Input substance ”
5. รบขอมลตวเลขมา 1 คา แลวเกบทตวแปร substance
6. แสดงขอความวา “result of molecular”
7. ใชฟงกชนตรวจสอบอกษรตวท 2 จากตวแปร substance วาเปนธาตอะไร และนำาไปเกบทตวแปล around
8. ใชฟงกชนตรวจสอบอกษรตวท 1 จากตวแปร substance วาเปนธาตอะไร และนำาไปเกบทตวแปล atom_center
9. ใชฟงกชนตรวจสอบอกษรตวท 3 จากตวแปร substance วาเปนธาตอะไร และนำาไปเกบทตวแปล number_around
10. แสดงธาตจากตวแปร around, “ _ ”, atom_center = “ _ ”, around,11. จบการทำางาน
![Page 10: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/10.jpg)
คำาอธบายการแกปญหาทละขนตอน ( อลกอรท ม ) ของระดบ 0 > การประมวลผล ท 2
(Algorithm of Level 0 > Process 2 )
การวเคราะหปญหาของ Level 0 > Process 2
ปญหาของงาน : การหารปรางโมเลกลเสนตรง
1. เรมการทำางาน2. กำาหนดคาตวแปร m_atom_center =0,m_around = 0
3. หาจำานวนมวลอะตอมของธาตทลอมรอบอะตอมกลางตามเงอนไข ดงน 3.1) ถา around = ‘ O ‘
3.1.1 ถาเปนจรง m_ around = 16 แลวไปทำางานทขอ 53.1.2 ถาเปนเทจใหไปทำางานทขอ 3.2
3.2) ถา around = ‘ F ‘
3.2.1 ถาเปนจรง m_around = 19 แลวไปทำางานทขอ 53.2.2 ถาเปนเทจใหไปทำางานทขอ 4
3.3) ถาไมตรงเงอนไขใดๆเลย3.3.1 ใหแสดงขอความวา “none around of atom”3.3.2 ใหไปทำางานขอท 4
![Page 11: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/11.jpg)
4. หาจำานวนมวลอะตอมกลางตามเงอนไข ดงน 4.1) ถา atom_center =’c’
4.1.1 ถาเปนเทจ m_atom_center =12 แลวไปทำางานทขอ 54.1.2 ถาเปนเทจ ใหไปทำางานขอ 4.2
4.2) ถา atom_center =’Be’แลวไปทำางานทขอ 54.2.1 ถาเปนจรง m_atom_center =9
4.2.2 ถาเปนเทจ ใหไปทำางานขอ 4.3
4.3) ถาไมตรงเงอนไขใดๆเลย 4.3.1 ใหแสดงขอความวา “none around_center”
4.3.2 ใหไปทำางานทขอ 55.คำานวณหาโมเลกลโดยใชสตร (around * number_around) + atom_center แลวเกบทตวแปร molecular_weight
6.แสดงคำาวา “molecular weight of substance”
7.แสดงคำาวา molecular_weight
8.จบการทำางาน
ผงงาน ( โฟลวชารต ) ของระดบ 0 > การประมวลผล ท 1 ( Flowchart of Level 0 > Process 1 )
Level 0 >Process 1ปญหาของงาน : แปลงอณหภมจากองศาเซลเซยสเปนองศาเคลวน (ขดแยงกบ SA Lvel 0 > Process 1)
Start
substance = “ ” , molecular = “ ”,atom_center = “ ”,around = “ ”, Number_around = 0,molecular_weight = 0
Display “Program molecular”
Process1Step1
![Page 12: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/12.jpg)
ผงงาน ( โฟลวชารต ) ของระดบ 0 > การประมวลผล ท 2( Flowchart of Level 0 > Process 2 )
Level 0 > Process 2ปญหาของงาน : วเคราะหสถานะของสารจากองศาเคลวน
Display “ Input substance ”
input around
End
Display around,”_”,atom_center,”_”,around
Display “ Result of moiecular ”
Input atom_center
Input Number_around
Start
m_atom_center =0,m_around = 0
around = ‘ O ‘
m_around = 16
true
false
truearound = ‘ O
‘m_around
= 16
![Page 13: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/13.jpg)
false
Display element
m_around = 16 atom_center=’
C’
atom_center=’B’
m_around = 16
Display “none atom_center “
A
true
true
End
A
molecule_weight = (around * number_around) + atom_center
Display molecule_weight
![Page 14: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/14.jpg)
การลงรหสโปรแกรม > การประมวลผล ท 1 ( Coding of Level 0 > Process 1 )
# include<stdio.h># include<conio.h>
//---process 1---
void main( ){clrscr( );char substsnce[3] = ” ” ;char molecular[6] = “ ” ;char atom_center = ‘ ’ ;char around = ‘ ’ ;int number_around = 0,molecule_weight = 0 ;printf (“program molecular”) ;
![Page 15: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/15.jpg)
printf (“\input substance”) ;//scanf (“%s”,&substance) ;//printf (“Result of molecular”) ;printf (“atom_center = ”) ;scanf (“%c”,&atom_center) ;//atom_center = getchar( ) ;printf (“around = ”) ;scanf (“%c”,&around) ;around = getchar( ) ;printf (“number_around = ”) ;scanf (“%d”,&number_around) ;//number_around = getchar( ) ;
printf (“%c-%c-%c\n”,around,atom_center,around) ;
การลงรหสโปรแกรม > การประมวลผล ท 2 ( Coding of Level 0 > Process 2 )
//---process 2---
int m_atom_center = 0,m_around = 0 ;if (around = = ‘0’){m_around = 16 ;}else if (around = =’F’){m_around = 19 ;}else {printf (“none around of atom”) ;}if (atom_center = =’C’){m_atom_center = 12 ;}else if (atom_center = =’B’){m_atom_center = 9 ;}
![Page 16: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/16.jpg)
else{printf (“none atom_center”) ;}molecule-weight = (m_around * number_around + m_atom_center) ;printf (“molecule_weight_of_substance = %d”,molecule_weight) ;getch ( ) ;}
คมอ
Program Molecular
Input Substance: _
![Page 17: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/17.jpg)
1.โปรแกรมแสดงคำาวา Input Substance: ใหทานปอนชอสารประกอบทตองการทราบวาเปนรปรางโมเลกลเสนตรง แลวกด Enter
Program Molecular
Input Substance: CO2
Result of molecular: O-C-O
2. โปรแกรมแสดงชอสารและแสดงผลลพธเปนรปรางโมเลกลเสนตรง
Molecule weight of substance = 44
![Page 18: ชิ้นงานการเขียนโปรแกรม ...tps.comsci.info/programming/project2551/D2_T2_V1.d… · Web viewแบบฟอร มช นงานการเข](https://reader036.vdocuments.mx/reader036/viewer/2022090410/5fd8c39082f9586b316d4687/html5/thumbnails/18.jpg)
3.โปรแกรมจะแสดงผลลพธมวลโมเลกลของสารประกอบ