កុំព្យូទ័រ, ផ្នែកទន់
ប្រើ Turbo លោក Pascal ។ ខណៈពេលដែល ... ធ្វើ - រង្វិលជុំជាមួយបុរេលក្ខខណ្ឌមួយ
Turbo លោក Pascal, បើទោះបីជាមិនមែនជាកម្មវិធីសំណព្វរបស់ពិភពលោកសម្រាប់ការសរសេរកម្មវិធី, ប៉ុន្តែជាអ្នកបង្កើតដែលធ្វើឱ្យជំហានដំបូងរបស់ពួកគេនៅក្នុងការសរសេរកម្មវិធីដែលចាប់ផ្តើមជាមួយនឹងការមធ្យមស្គាល់របស់ពួកគេនេះ។ វាផ្តល់នូវគំនិតមួយនៃការផលប៉ះពាល់ប្រមាណវិធីមុខងារនិងនីតិវិធីព្រមទាំងរឿងជាច្រើនទៀត។ ឧទាហរណ៍នៅក្នុងការសរសេរកម្មវិធីសិក្សាវដ្តមុខនៅក្នុង Turbo លោក Pascal: ខណៈពេលដែលដ្បិតនិងធ្វើម្តងទៀត។
គំនិតនៃវដ្តនិងវ៉ារ្យ៉ង់របស់ខ្លួន
វដ្តមួយគឺជាសកម្មភាពច្រំដែល។ នៅក្នុងបរិស្ថាននេះប្រើ:
- ជាមួយនឹងប៉ារ៉ាម៉ែត្រ (សម្រាប់ ... ដើម្បី ... ធ្វើ);
- ជាមួយនឹងបុរេលក្ខខណ្ឌ (ខណៈពេលដែល ... ធ្វើ) បាន;
- postcondition មួយ (ធ្វើម្តងទៀត ... រហូតដល់) ។
ប្រភេទដំបូងត្រូវបានប្រើនៅពេលដែលវាត្រូវបានគេស្គាល់ច្រើននៅក្នុងជំហានរបៀបដោះស្រាយបញ្ហានេះ។ ទោះយ៉ាងណាមានភារកិច្ចមួយចំនួនដែលមានអំពីរបៀបជាច្រើនដងនឹងត្រូវបានធ្វើម្តងទៀតឬសកម្មភាពនោះទេ។ ក្នុងករណីនេះលោក Pascal ខណៈពេលដែលវដ្តបានក្លាយទៅជាមិនអាចខ្វះបាន, ដូចជា, គោលការណ៍និងធ្វើម្តងទៀត។
រចនាសម្ព័ន្ធនៃវដ្តនេះ
តើអ្វីជាសារៈសំខាន់នៃការនេះគឺនៅខណៈពេលដែលការងាររបស់លោក Pascal នេះដ្បិតនិងធ្វើម្តងវដ្ត? នៅក្នុងវិស័យសំណង់ដូចជាបម្រុងទុកបឋមកថានិងរាងកាយមួយ។ សមាសភាគដំបូងនៃអថេរដែលបានបញ្ជាក់ថានឹង "ការងារ" ត្រូវបានបញ្ជាក់ដោយលក្ខខណ្ឌលើសុពលភាពដែលរាងកាយនឹងត្រូវបានប្រតិបត្តិ។ នៅក្នុងផ្នែកទីពីរនៃកន្សោមចេញវេជ្ជបញ្ជានឹងត្រូវបានប្រើក្នុងករណីនៃជំងឺនេះ, ឧ។ អ៊ីពិតនោះជំនួសឱ្យការនេះមិនពិត។
នៅពេលដែលការនិយាយឡើងវិញត្រូវបានអនុវត្តនៅលើបន្ទាត់ចុងក្រោយនៃកូដនោះវាត្រឡប់ទៅបឋមកថា, ដែលជាកន្លែងដែលជំងឺនេះត្រូវបានសាកល្បង។ ប្រសិនបើមានប្រតិបត្ដិការពិតត្រូវបានធ្វើម្តងទៀត, ហើយនៅក្នុងព្រឹត្តិការណ៍នៃការរំលោភនៃកម្មវិធី "ចេញ" ពីវដ្តណាមួយនិងការសម្តែងប្រតិបត្តិការបន្ថែមទៀត។
ខាងក្រោមមើលទៅខណៈពេលរង្វិលជុំ។ លោក Pascal អង្គការ ABC និងកម្មវិធីបែបនេះតម្រូវឱ្យមានការសរសេរកូដដូច:
- ខណៈពេលដែលស្ថានភាពធ្វើ;
- ចាប់ផ្តើម;
- រាងកាយរង្វិលជុំ;
- បញ្ចប់។
នៅក្នុងព្រឹត្តិការណ៍ដែលរង្វិលជុំនឹងត្រូវអនុវត្ត 1 ជាប្រតិបត្តិ (សកម្មភាពទី 1), បន្ទាប់មក "តង្កៀប»ចាប់ផ្តើមនៅ ... អាចត្រូវបានលុបនៅចុង។
វដ្តគំនូសតាងលំហូរ
លោក Pascal ខណៈពេលនេះ Turbo លក្ខណៈពិសេសដូចខាងក្រោមនេះ:
- នៅខាងក្នុងរចនាសម្ព័ន្ធអាចជាការលំបាកក្នុងការប្រើលក្ខខណ្ឌ;
- បន្ទាប់ពីពាក្យនេះធ្វើមិនគួរជាសញ្ញាក្បៀសមួយ (វាត្រូវបានគេចាត់ទុកថាជាកំហុសនៅក្នុង Turbo Pascal និងលោក Pascal ទូរទស្សន៍ ABC មួយ);
- អថេរ, ថេរឬកន្សោមដែលបានបម្រើការនៅពេលដែលការឆ្លើយតបទិន្នផលមិនពិតពួកគេទម្រង់ការរងចាំបាច់ត្រូវតែប្រភេទឡូជីខល, ឧ។ អ៊ី។ ប៊ូលីន។
វាគឺមានដូចខាងក្រោមដ្យាក្រាមប្លុកនៃវដ្តពូជ។ វាបង្ហាញពីលំដាប់នៃសកម្មភាពអនុវត្តគម្រោង។
ក្បួនដោះស្រាយនៃវដ្តនេះ
.. នៅក្នុងបរិស្ថានសរសេរកម្មវិធីសាមញ្ញបំផុត, ម៉ោងម៉ែត្រនិងលោក Pascal អង្គការ ABC, ខណៈពេលដែលប្រតិបត្តិការនៅលើគោលការណ៍រង្វិលជុំដូចខាងក្រោម:
- .. និយាយឡើងវិញដែលបានផ្តល់ឱ្យពោលគឺពាក្យផ្ទួន, នឹងយកកន្លែងជាច្រើនដងដែលវែងដូចដែលជម្ងឺនេះគឺជាការពិត (ពិត);
- បានឆាប់តាមដែលស្ថានភាពនេះគឺមិនពេញចិត្តនិងបានផ្តល់នូវចម្លើយមិនពិត (ឬបើមិនដូច្នេះទេ "មិនពិត") ដែលជាប្រតិបត្តិករចេញពីរង្វិលជុំនេះ;
- បានឆាប់តាមដែលវាបានកើតឡើងកម្មវិធី«ទៅ "នៅក្នុងការរចនាដែលលេចឡើងបន្ទាប់ពីវដ្ត។
នេះគឺជាភាពខុសគ្នាយ៉ាងសំខាន់ពីខណៈពេលដែលម្តង, t, ក។ E. មួយមុនពី postconditions វដ្តនេះ។
វាជាការសំខាន់ដើម្បីរួមបញ្ចូលនៅក្នុងការផ្លាស់ប្តូរកំណត់បឋមកថារង្វិលជុំក្នុងខណៈពេលមួយដែលបានផ្តល់ឱ្យអថេរ។ ក្នុងករណីណាមួយដែលមិនធ្លាប់មានគួរតែមកពីស្ថានភាពដែលផ្តល់ឱ្យដើម្បីមិនពិតមួយ។ បើមិនដូច្នោះទេនឹងមានរង្វិលជុំមួយហើយបន្ទាប់មកត្រូវចាត់វិធានការបន្ថែមទៀតដើម្បីចាកចេញពីការចងក្រង។ កំហុសបែបនេះត្រូវបានចាត់ទុកថាជាឈ្លើយហើយពុំអាចដោះសាខ្លួន។
តើធ្វើដូចម្តេចដើម្បីចេញពីកម្មវិធីនេះខណៈពេលជិះកង់?
ជាញឹកញាប់ស្ថានភាពនេះកើតឡើងនៅពេលដែលប្រតិបត្តិករបានផ្តល់ឱ្យខណៈពេលរង្វិលជុំលោក Pascal ក្នុងកូដកម្មវិធីសរសេរ។ តើនេះមានន័យយ៉ាងណា? ការនិយាយឡើងវិញម្តងហើយម្តងទៀតមួយចំនួនត្រូវបានគ្មានកំណត់ដងដោយសារតែលក្ខខណ្ឌតែងតែពិត។ ឧទាហរណ៍: បំណែកកូដនេះ:
- ខណៈពេល 2> 1 ធ្វើ;
- សរសេរ (1) ។
ក្នុងករណីនេះដើម្បីផ្អាកការប្រតិបត្តិភារកិច្ចនេះ, គ្រាន់តែចុច CTRL + F2 ។
មាន 2 វិធីដើម្បីគ្រប់គ្រងឥរិយាបថរបស់កម្មវិធីនេះ។ ឧទាហរណ៍ប្រសិនបើសរសេរបន្តកូដដែលបានឆ្លងកាត់ការត្រួតពិនិត្យទៅដើមនៃរចនាសម្ព័ន្ធរង្វិលនេះ (ខចាកចេញពីរង្វិលជុំស្ថានភាពត្រូវបានត្រួតពិនិត្យ, ឧ។ អ៊ីប្រតិបត្តិនៃការនិយាយឡើងវិញនាពេលបច្ចុប្បន្ននេះត្រូវបានរំខាន) ។ បន្ទាប់មកការត្រួតពិនិត្យត្រូវបានផ្ទេរនៅក្នុងរង្វិលជុំនៅក្នុងការធ្វើតេស្តខណៈពេលមុន។
ប្រតិបត្តិករសម្រាកអាចផ្អាកប្រតិបត្តិនៃវដ្តទាំងមូលនិងផ្ទេរការគ្រប់គ្រងការអះអាងជាថ្មីបន្ទាប់។ ខាងក្រោមនេះជាលទ្ធផលនៃការសាងសង់នេះនឹងមិនត្រូវបានត្រួតពិនិត្យ។ រូបភាពបង្ហាញឧទាហរណ៍នៃការប្រើប្រាស់ប្រតិបត្តិករទាំងនេះ។
ការជួបបញ្ហាប្រឈម
សូមពិចារណាខណៈពេលដែលនៅក្នុងវដ្តប្រតិបត្ដិការ។ លោក Pascal ស្នើទៅដោះស្រាយបញ្ហានេះប្រែប្រួល។ សូមពិចារណាសាមញ្ញមួយដើម្បីយល់ពីប្រតិបត្ដិការនេះ។ លំហាត់ដែលបានដោះស្រាយនៅក្នុងកម្មវិធីទូរទស្សន៍ ABC លោក Pascal ។ ប៉ុន្តែនឹងត្រូវបានបង្ហាញហើយរូបភាពនៃបរិស្ថានបុរាណ Turbo លោក Pascal សម្រាប់ការប្រៀបធៀប។
ភារកិច្ចទី 1: បានផ្តល់មុខងារ Y = 5-X ^ 2/2 ។ បង្កើតតារាងនៃតម្លៃមួយនៅក្នុងការបង្កើន = 0,5 ត្រីលើចន្លោះ [-5, 5] ។
ក្បួនដោះស្រាយគឺ:
- កំណត់អថេរ X ដើម្បីតម្លៃដំបូងមួយស្មើនឹង 5 (ពោលគឺការចាប់ផ្តើមនៃគម្លាតនេះ .. );
- គណនាតម្លៃ Y ខណៈដែលអថេរ x មិនបានឈានទៅដល់ចុងបញ្ចប់នៃចន្លោះពេលបានឱ្យដឹងថានេះ;
- បង្ហាញតម្លៃនៃអនុគមន៍និង abscissa នេះ (X);
- ការកើនឡើង X បានដោយជំហានដែលបានកំណត់ទុកជាមុន។
ខាងក្រោមនេះគឺជាកូដនៅក្នុងកម្មវិធីទូរទស្សន៍ ABC ដែលលោក Pascal ។
តើកូដនៅក្នុងកម្មវិធី Turbo លោក Pascal នេះ។ រូបភាពខាងក្រោមនេះបង្ហាញពីរឿងនេះ។
ភារកិច្ចទី 2: ដែលបានផ្ដល់ឱ្យអារេមួយដែលមានលេខវិជ្ជមាននិងអវិជ្ជមានទាំងមូល។ វាមានធាតុ 10 ។ តម្រូវការក្នុងការបង្កើតម៉ាទ្រីសដែលក្នុងនោះធាតុវិជ្ជមាននៃអារេមួយត្រូវបានបង្ហាញដែលមានលិបិក្រមសូម្បីតែមួយ។ បង្ហាញការ៉េផលបូកនៃចំនួននៃការម៉ាទ្រីសថ្មី។
ក្បួនដោះស្រាយគឺ:
- អ្នកត្រូវតែសរសេរតាមទម្លាប់មួយថានឹង "ការងារ" តែជាមួយធាតុនៃអារេមួយដែលមានលិបិក្រមសូម្បីតែមួយ។ នៅក្នុងរង្វិលជុំតម្លៃអថេរទាក់ទងទៅនឹងឥទ្ធិពលស្មើនៃសន្ទស្សន៍នេះនឹងត្រូវបានបង្កើនម្តងពីរ។
- ប្រសិនបើចំនួននេះគឺសូម្បីតែមួយលិបិក្រមពីម៉ាទ្រីសមួយដែលត្រូវគ្នាទៅនឹងលក្ខខណ្ឌដែល x> 0, អារេរាប់ត្រូវបានបង្កើនដោយ 1 តម្លៃបច្ចុប្បន្ននៃអថេររាប់នេះនឹងមានសន្ទស្សន៍នៃចំនួនច្បាប់ចម្លងដែលនៅក្នុងខអារេ
- ដំបូងនេះ summa អថេរទទួលខុសត្រូវសម្រាប់ការស្វែងរកផលបូកនៃការ៉េនៃចំនួនគត់វិជ្ជមានដែលត្រូវបានកំណត់ទៅ 0 បន្ទាប់មកប្រតិបត្ដិការនេះនឹងត្រូវបានអនុវត្ត: ដើម្បីផលបូកមុនត្រូវបានបន្ថែមតម្លៃថ្មីនៃការ៉េ។
- កុំភ័យខ្លាចប្រសិនបើមិនមានលេខវិជ្ជមានទាំងអស់បានផ្លាស់ប្តូរពីអារេមួយទៅមួយទៀត។ អ្នកត្រូវតែមានការប្រុងប្រយ័ត្ន។ អ្នកសរសេរកម្មវិធីដើម្បីសុខភាពជាច្រើនដើម្បីសរសេរកូដក្នុងការស្លន់ស្លោមួយ។ វាគឺជាការចាំបាច់ក្នុងការដោយប្រុងប្រយ័ត្នពិនិត្យមើលលក្ខខណ្ឌ: លេខវិជ្ជមានដែលនៅលើសូម្បីតែ "មូលដ្ឋាន" ពោលគឺដោយមានសន្ទស្សន៍ដែលជាពហុគុណនៃ 2 ...
ដានដោយដៃគឺជាការចាំបាច់ដើម្បីធានាថាការគណនានៃភាពស្មោះត្រង់។ ពេលខ្លះដោយប្រើវិធីសាស្រ្តនេះអាចកំណត់អត្តសញ្ញាណកំហុសដែលមិនបានចាប់ភ្នែកធម្មតានៅក្រោមការត្រួតពិនិត្យកូដដែលបានសរសេរនេះ។
ប្រសិនបើយើងអនុវត្តការគណនាដោយដៃ, វាគឺអាចធ្វើបានដើម្បីធានាថាកម្មវិធីនេះធ្វើការឱ្យបានត្រឹមត្រូវ។ នេះនៅក្នុងវេនបាននិយាយថាក្បួនដោះស្រាយជំនាន់កូដត្រឹមត្រូវលំដាប់នៃសកម្មភាពដែលនាំឱ្យមានការបញ្ចប់ឡូជីខល។
Similar articles
Trending Now