កុំព្យូទ័រ, ការសរសេរកម្មវិធី
ប្រភេទជាមូលដ្ឋាននិងឧទាហរណ៍នៃក្បួនដោះស្រាយរង្វិល
មាត្រាមានគោលបំណងដើម្បីផ្តល់នូវការយល់ដឹងជាមូលដ្ឋាននៃអ្វីដែលជាការប្រកួតជម្រុះវិលជុំដែលជារឿងធម្មតាទៅនឹងកម្រិតការបណ្តុះបណ្តាលភាសាសរសេរកម្មវិធីនិងអ្នកសរសេរកម្មវិធីណាមួយទេ។
គំនិតនៃក្បួនដោះស្រាយនេះ
ក្បួនដោះស្រាយគឺជាលំដាប់នៃសកម្មភាពដើម្បីសម្រេចបាននូវដំណោះស្រាយមួយដើម្បីកុំព្យូទ័រណាមួយឬបញ្ហាផ្សេងទៀតនៅក្នុងចំនួនកំណត់ជំហានមួយ។ សកម្មភាព (សេចក្តីណែនាំ) សម្រាប់អនុវត្តក្បួនដោះស្រាយដែលអាចត្រូវបានប្រតិបត្តិបន្ទាប់ពីមួយផ្សេងទៀត (បន្ត) ក្នុងពេលតែមួយ (នៅក្នុងប៉ារ៉ាឡែល) ឬនៅក្នុងការបញ្ជាណាមួយដោយប្រើរង្វិលជុំនិងលក្ខខណ្ឌនៃការផ្លាស់ប្តូរ។ ក្បួនដោះស្រាយត្រូវបានប្រើមិនត្រឹមតែក្នុងការសរសេរកម្មវិធី, ប៉ុន្តែការផងដែរនៅក្នុងតំបន់ផ្សេងទៀត, ឧទាហរណ៍នៅក្នុងការគ្រប់គ្រងនៃដំណើរការផលិតកម្មនិងអាជីវកម្ម។
វិលជុំ
ក្បួនដោះស្រាយនេះត្រូវបានគេហៅថារង្វិលប្រសិនបើមិនមានសកម្មភាពឬសំណុំនៃសកម្មភាពដែលនឹងត្រូវបានអនុវត្តច្រើនជាងម្តង។ សកម្មភាពច្រំដែលជារូបកាយរង្វិលជុំក្បួនដោះស្រាយ។ លើសពីនេះទៀត, វដ្តគ្នាមានលក្ខខណ្ឌដើម្បីអនុវត្តមួយរង្វិលចុងក្បួនដោះស្រាយមួយ។
ប្រភេទនៃក្បួនដោះស្រាយរង្វិល
វិលជុំជារៀងរាល់ភ្ជាប់លក្ខខណ្ឌរង្វិលជុំមួយ, ឧ។ អ៊ីកន្សោមឡូជីខលដែលកំណត់ធីកនឹងត្រូវបានអនុវត្តដោយរាងកាយរង្វិលជុំម្តងទៀតឬវដ្តបានបញ្ចប់។ បើយោងទៅតាមវិធីសាស្រ្តនៃការព្យាបាលទាំងអស់ក្បួនដោះស្រាយរង្វិលត្រូវបានចែកជាបីក្រុម។
វដ្តជាមួយបុរេលក្ខខណ្ឌ
នៅក្នុងក្បួនដោះស្រាយស្ថានភាពផ្នែកបន្ថែមរង្វិលដំណើរការត្រូវបានធីកមុនពេលរង្វិលជុំនៃរាងកាយនេះ, ឧ។ អ៊ីវាមានតម្រូវការសម្រាប់ការធ្វើឡើងវិញនៃវដ្តដំណើរការនេះ។
សូមពិចារណាចំនួនដែលបោះពុម្ព -5 0 ជាឧទាហរណ៍មួយនៃបុរេលក្ខខណ្ឌក្បួនដោះស្រាយរង្វិលមួយ:
- យើងបានកំណត់តម្លៃដំបូងនៃ j អថេរមូលដ្ឋានស្មើនឹង -5 ។
- យើងបានពិនិត្យមើលលក្ខខណ្ឌនៃរង្វិលជុំ។ ស្ថានភាពនេះគឺវិជ្ជមាននិងរាងកាយត្រូវបានប្រតិបត្តិជាលើកដំបូង។
- បានបន្ថែមទៀតថាលើសពីនេះទៀតទៅអង្គភាព J អថេរជាថ្មីម្តងទៀតការពិនិត្យមើលស្ថានភាពនៃរង្វិលជុំ។
- វដ្តនេះនៅតែបន្តត្រូវបានអនុវត្តរហូតដល់តម្លៃនៃ J គឺមានតិចជាងឬស្មើសូន្យបើមិនដូច្នេះទេចេញពីវដ្តនៃការមិនពិតការិយាល័យសាខា
វដ្តជាមួយ postcondition
ការធ្វើតេស្តត្រូវបានអនុវត្តបន្ទាប់ពីមានលក្ខខណ្ឌវដ្តព្យាបាលដំបូង, រាងកាយនិងគ្រប់គ្រងទិន្នផលពីវា។
សូមឱ្យយើងគណនាផលបូកពី 1 ទៅចំនួននៃ n ដែលជាឧទាហរណ៍នៃក្បួនដោះស្រាយរង្វិលដែលប្រើ postcondition មួយនេះ:
- យើងណែនាំមួយចំនួន n កំណត់នៃចំនួនទឹកប្រាក់ការគណនានិងកំណត់សូន្យតម្លៃដំបូងនៃការបូកសរុបនៃផលបូកនិងវដ្តការប្រឆាំងខ្ញុំ។
- រង្វិលជុំត្រូវបានប្រតិបត្តិមុនពេលដែលលក្ខខណ្ឌតេស្តលើកដំបូង។
- សូមពិនិត្យមើលស្ថានភាពនៃវដ្តនេះ, R ។ E. តម្លៃរាប់ខ្ញុំគឺតិចជាងឬស្មើនឹង n ។
- បើសិនជាលក្ខខណ្ឌនៃលទ្ធផលវិជ្ជមានយើងបានដូចគ្នាម្តងទៀតឬបញ្ចប់វដ្តនិងការបង្ហាញផលបូកការបង្ហាញឬការបោះពុម្ព។
វដ្តដោយគ្មានលក្ខខណ្ឌ
បានប្រើជាធម្មតានៅក្នុងក្បួនដោះស្រាយ, នៅពេលដែលចំនួនដែលចង់អន្តរកម្មរង្វិលជុំត្រូវបានគេស្គាល់នៅក្នុងការជាមុននិងត្រូវបានគេប្រើជាញឹកញាប់នៅពេលធ្វើការជាមួយអារេ។
ក្បួនដោះស្រាយនេះមានសមាសភាគដែលចាំបាច់ទាំងបី:
- តម្លៃចាប់ផ្តើមនេះដែលត្រូវបានគេហៅថាប៉ារ៉ាម៉ែត្រវដ្តមួយអាវ។ ឃេអថេរនេះត្រូវបានកែប្រែបន្ទាប់ពីវដ្តប្រតិបត្តិគ្នានិងការកំណត់ពេលវេលានៃការបញ្ចប់របស់ខ្លួន។
- តម្លៃដែលរង្វិលជុំបញ្ចប់។
- វដ្តជំហាន។
នៅចំណុចនីមួយ, កម្មវិធីពិនិត្យដើម្បីមើលថាតើតម្លៃដំបូងលើសពីការប្រកួតវគ្គផ្តាច់ព្រ័ត្រនេះ។ ហើយប្រសិនបើដូច្នេះមែននោះវដ្តនេះត្រូវបានបញ្ចប់។ បើមិនដូច្នោះទេ, តម្លៃត្រូវបានបន្ថែមទៅទំហំជំហានចាប់ផ្តើមនិងម្តងវដ្ត។ ចំណាំពិសេសនោះគឺថារង្វិលជុំដោយគ្មានលក្ខខណ្ឌណាមួយដែលអាចត្រូវបានជំនួសដោយមានលក្ខខណ្ឌឬ postcondition មុន។
នៅក្នុងការប្រកួតវិលជុំបានគូរឡើងនោះគឺជាការចាំបាច់ដើម្បីប្រកាន់ខ្ជាប់ទៅនឹងលក្ខខណ្ឌដែលចាំបាច់ពីរ។ ជាដំបូងនេះគឺដើម្បីបញ្ចប់វដ្ត, វាគឺជាការចាំបាច់ដែលថាមាតិកានៃរាងកាយក្រោយរងផលប៉ះពាល់ឬបុរេលក្ខខណ្ឌ, បើមិនដូច្នេះទេនៅទីបញ្ចប់យើងអាចទទួលបានរង្វិលជុំមិនកំណត់។ ប៉ុន្តែសម្រាប់វដ្តខ្លះបានប្រើកម្មវិធីផ្នែកទន់។ ជាឧទាហរណ៍នៃក្បួនដោះស្រាយរង្វិលដែលរត់ដោយគ្មានកំណត់អ្នកអាចបណ្តាលឱ្យប្រព័ន្ធប្រតិបត្តិការ Windows ដែលបានប្រើប្រាស់រង្វិលជុំស្ទង់មតិគ្មានទីបញ្ចប់កណ្ដុរដើម្បីកំណត់សកម្មភាពរបស់អ្នកប្រើ។ ទីពីរអថេរបានបញ្ជូនទៅវដ្តគួរតែផ្តល់ឱ្យយ៉ាងហោចណាស់មួយនៃការប្រតិបត្តិរបស់គាត់។
ការគណនានៃរោងចក្រនេះ
ដើម្បីពង្រឹងការអាននេះនឹងផ្តល់នូវឧទាហរណ៍មួយនៃក្បួនដោះស្រាយរង្វិលដើម្បីគណនាចំនួនគត់ហ្វាក់តូរីយ្យែលនៃការ។ ឧទាហរណ៍នេះគឺវដ្តជាមួយបុរេលក្ខខណ្ឌមួយទេប៉ុន្តែអាចត្រូវបានអនុវត្តដោយប្រភេទនៃការប្រកួតជម្រុះវិលជុំណាមួយឡើយ។
- ទិន្នន័យ: ទិន្នន័យ - ចំនួនគត់ដែលត្រូវបានកំណត់សម្រាប់រោងចក្រ។
- អថេរប្រព័ន្ធ: ប៉ារ៉ាម៉ែត្រវដ្តខ្ញុំដែលយកតម្លៃពី 1 ដើម្បីបោះជំហានទិន្នន័យគ 1 ។
- លទ្ធផល: អថេរហ្វាក់តូរីយ្យែល - ទិន្នន័យហ្វាក់តូរីយ្យែលដែលជាផលិតផលនៃចំនួនគត់ពី 1 ដល់ទិន្នន័យ។
- ក្បួនដោះស្រាយនេះបានទទួលចំនួននៃទិន្នន័យដែលអ្នកចង់គណនារោងចក្រ។
- អថេរហ្វាក់តូរីយ្យែល, ដែលនឹងរក្សាទុកលទ្ធផលចុងក្រោយត្រូវបានកំណត់ដើម្បីសាមគ្គីភាព។
- យើងបានរៀបចំ ប៉ារ៉ាម៉ែត្រវដ្ត ខ្ញុំនិងតម្លៃចាប់ផ្តើមនៃ 1. តម្លៃចុងក្រោយនឹងមានទិន្នន័យចំនួនដើម។ ពេលដែលតម្លៃរបស់ខ្ញុំការប្រឆាំងធំ, រង្វិលជុំបញ្ចប់។
- ការគណនារង្វិលជុំត្រូវបានអនុវត្តហ្វាក់តូរីយ្យែល - តម្លៃបច្ចុប្បន្នហ្វាក់តូរីយ្យែលត្រូវបានគុណនិងការប្រឆាំងខ្ញុំ។
- ដោយបន្ថែមមួយទៅតម្លៃរាប់, ការពិនិត្យរង្វិលជុំលក្ខខណ្ឌហើយបើលទ្ធផលគឺវិជ្ជមាន, ការបំពេញវា។
- បន្ទាប់ពីបានបញ្ចប់វដ្ត, ការនិយាយឡើងវិញចុងក្រោយបំផុតនៃតម្លៃនៃទិន្នន័យហ្វាក់តូរីយ្យែលនេះ! វាបានស្ថិតនៅក្នុងរោងចក្រនិងបានបង្ហាញឬបោះពុម្ព។
Similar articles
Trending Now