ភាពជាក់លាក់
ត្រួតពិនិត្យសម្ភារៈវាស់
បង្រួបបង្រួម ការប្រឡងរដ្ឋឆ្នាំ ២០១៦
ក្នុងវិស័យព័ត៌មានវិទ្យា និង ICT
1. ការតែងតាំង KIM USE
ការប្រឡងរដ្ឋបង្រួបបង្រួម (ហៅកាត់ថា USE) គឺជាទម្រង់មួយ។ ការវាយតម្លៃគោលបំណងគុណភាពនៃការបណ្តុះបណ្តាលអ្នកដែលមានជំនាញ កម្មវិធីអប់រំកណ្តាល ការអប់រំទូទៅដោយប្រើភារកិច្ចនៃទម្រង់ស្តង់ដារ (ត្រួតពិនិត្យសម្ភារៈវាស់) ។
ការប្រឡងត្រូវបានធ្វើឡើងស្របតាម ច្បាប់សហព័ន្ធចុះថ្ងៃទី 29 ខែធ្នូឆ្នាំ 2012 លេខ 273-FZ "ស្តីពីការអប់រំនៅសហព័ន្ធរុស្ស៊ី" ។
គ្រប់គ្រង សម្ភារៈវាស់អនុញ្ញាតឱ្យអ្នកកំណត់កម្រិតនៃការធ្វើជាម្ចាស់នៃសមាសភាគសហព័ន្ធដោយនិស្សិតបញ្ចប់ការសិក្សា ស្តង់ដាររដ្ឋមធ្យមសិក្សាទុតិយភូមិ (ពេញលេញ) ផ្នែកព័ត៌មានវិទ្យា និង ICT កម្រិតមូលដ្ឋាន និងឯកទេស។
លទ្ធផលនៃការប្រឡងរដ្ឋបង្រួបបង្រួមផ្នែកព័ត៌មានវិទ្យា និង ICT ត្រូវបានទទួលស្គាល់ អង្គការអប់រំកណ្តាល ការអប់រំវិជ្ជាជីវៈនិងអង្គការអប់រំនៃការអប់រំវិជ្ជាជីវៈខ្ពស់ជាលទ្ធផល ការប្រឡងចូលនៅក្នុងព័ត៌មានវិទ្យា និង ICT ។
2. ឯកសារកំណត់ខ្លឹមសាររបស់ KIM USE
3. វិធីសាស្រ្តក្នុងការជ្រើសរើសខ្លឹមសារ ការអភិវឌ្ឍន៍រចនាសម្ព័ន្ធនៃ KIM USE
ខ្លឹមសារនៃភារកិច្ចត្រូវបានបង្កើតឡើងលើប្រធានបទសំខាន់ៗនៃវគ្គសិក្សាព័ត៌មាន និង ICT ដែលរួបរួមគ្នានៅក្នុងប្លុកប្រធានបទដូចខាងក្រោម៖ "ព័ត៌មាន និងការសរសេរកូដរបស់វា" "ការធ្វើគំរូ និង ការពិសោធន៍កុំព្យូទ័រ", "ប្រព័ន្ធលេខ", "តក្កវិជ្ជា និងក្បួនដោះស្រាយ", "ធាតុនៃទ្រឹស្តីនៃក្បួនដោះស្រាយ", "ការសរសេរកម្មវិធី", "ស្ថាបត្យកម្មកុំព្យូទ័រ និង បណ្តាញកុំព្យូទ័រ"," ការព្យាបាល ព័ត៌មានជាលេខ”, “បច្ចេកវិទ្យាសម្រាប់ការស្វែងរក និងរក្សាទុកព័ត៌មាន”។
ខ្លឹមសារនៃឯកសារប្រឡងនេះ គ្របដណ្តប់លើខ្លឹមសារសំខាន់ៗនៃវគ្គសិក្សាព័ត៌មានវិទ្យា និង ICT ដែលជាប្រធានបទសំខាន់បំផុតរបស់វា ដែលជាសម្ភារៈសំខាន់បំផុតនៅក្នុងនោះ ដែលត្រូវបានបកស្រាយដោយមិនច្បាស់លាស់នៅក្នុងកំណែភាគច្រើននៃវគ្គសិក្សាព័ត៌មានវិទ្យា និង ICT ដែលបង្រៀននៅសាលា។
ការងារនេះមានភារកិច្ចទាំងពីរនៃកម្រិតមូលដ្ឋាននៃភាពស្មុគស្មាញ ការធ្វើតេស្តចំណេះដឹង និងជំនាញដែលផ្តល់ដោយស្តង់ដារនៃកម្រិតមូលដ្ឋាន និង
និងភារកិច្ចនៃការកើនឡើង និងកម្រិតខ្ពស់នៃភាពស្មុគស្មាញ ការធ្វើតេស្តចំណេះដឹង និងជំនាញដែលផ្តល់ដោយស្តង់ដារ កម្រិតទម្រង់. ចំនួននៃភារកិច្ចនៅក្នុងវ៉ារ្យ៉ង់ KIM គួរតែផ្តល់នូវការវាយតម្លៃដ៏ទូលំទូលាយនៃចំណេះដឹង និងជំនាញរបស់និស្សិតបញ្ចប់ការសិក្សាដែលទទួលបានក្នុងរយៈពេលសិក្សាទាំងមូលនៅក្នុងមុខវិជ្ជា ហើយម្យ៉ាងវិញទៀត បំពេញតាមលក្ខណៈវិនិច្ឆ័យសម្រាប់ភាពស្មុគស្មាញ។ ស្ថេរភាពនៃលទ្ធផល និងភាពជឿជាក់នៃការវាស់វែង។ ចំពោះគោលបំណងនេះ កិច្ចការពីរប្រភេទត្រូវបានប្រើប្រាស់ក្នុង KIM៖ ជាមួយនឹងចម្លើយខ្លី និងចម្លើយលម្អិត។ រចនាសម្ព័ននៃក្រដាសប្រឡងផ្តល់នូវតុល្យភាពល្អបំផុតនៃភារកិច្ច ប្រភេទផ្សេងគ្នានិងពូជ, បីកម្រិតនៃភាពស្មុគស្មាញ, ការធ្វើតេស្តចំណេះដឹងនិងជំនាញនៅលើបី កម្រិតផ្សេងៗ៖ ការចាក់សារថ្មី កម្មវិធីក្នុង ស្ថានភាពស្តង់ដារ, កម្មវិធីក្នុងស្ថានភាពថ្មី។ ខ្លឹមសារនៃឯកសារប្រឡងឆ្លុះបញ្ចាំងពីផ្នែកសំខាន់នៃខ្លឹមសារនៃប្រធានបទ។ ទាំងអស់នេះធានានូវសុពលភាពនៃលទ្ធផលតេស្ត និងភាពជឿជាក់នៃការវាស់វែង។
4. រចនាសម្ព័ន្ធរបស់ KIM USE
កំណែនីមួយៗនៃក្រដាសប្រឡងមានពីរផ្នែក និងរួមបញ្ចូលកិច្ចការចំនួន 27 ដែលខុសគ្នាក្នុងទម្រង់ និងកម្រិតនៃភាពស្មុគស្មាញ។
ផ្នែកទី 1 មាន 23 កិច្ចការចម្លើយខ្លី។
អេ ការងារប្រឡងប្រភេទការងារខាងក្រោមដែលមានចម្លើយខ្លីត្រូវបានផ្តល់ជូន៖
- ភារកិច្ចសម្រាប់ជ្រើសរើស និងកត់ត្រាចម្លើយត្រឹមត្រូវមួយ ឬច្រើនពីបញ្ជីចម្លើយដែលបានស្នើឡើង។
- ភារកិច្ចសម្រាប់ការគណនាតម្លៃជាក់លាក់មួយ;
- ភារកិច្ចក្នុងការបង្កើតលំដាប់ត្រឹមត្រូវ ដែលបង្ហាញជាខ្សែអក្សរតាមក្បួនដោះស្រាយជាក់លាក់។
ចម្លើយចំពោះកិច្ចការនៃផ្នែកទី 1 ត្រូវបានផ្តល់ឱ្យដោយធាតុដែលត្រូវគ្នាក្នុងទម្រង់ជាលេខធម្មជាតិ ឬលំដាប់នៃតួអក្សរ (អក្សរ និងលេខ) ដែលសរសេរដោយគ្មានចន្លោះ និងសញ្ញាបំបែកផ្សេងទៀត។
ផ្នែកទី 2 មានកិច្ចការចំនួន 4 ជាមួយនឹងចម្លើយលម្អិត។
ផ្នែកទី 1 មានភារកិច្ចចំនួន 23 នៃកម្រិតលំបាកជាមូលដ្ឋាន កម្រិតខ្ពស់ និងកម្រិតខ្ពស់។ ផ្នែកនេះមានភារកិច្ចជាមួយនឹងចម្លើយខ្លីៗ ដែលបង្កប់ន័យអំពីការបង្កើតឯករាជ្យ និងការកត់ត្រាចម្លើយក្នុងទម្រង់ជាលេខ ឬលំដាប់តួអក្សរ។ ភារកិច្ចពិនិត្យមើលសម្ភារៈនៃប្លុកប្រធានបទទាំងអស់។ នៅក្នុងផ្នែកទី 1 វត្ថុទាំង 12 សំដៅទៅលើ កម្រិតមូលដ្ឋាន, 10 ភារកិច្ចដល់កម្រិតកើនឡើងនៃភាពស្មុគស្មាញ, 1 ភារកិច្ច - ទៅកម្រិតខ្ពស់នៃភាពស្មុគស្មាញ។
ផ្នែកទី 2 មាន 4 កិច្ចការដែលទីមួយ កម្រិតខ្ពស់ការលំបាក, កិច្ចការ 3 ដែលនៅសល់ កម្រិតខ្ពស់ការលំបាក។ ភារកិច្ចនៃផ្នែកនេះពាក់ព័ន្ធនឹងការសរសេរចម្លើយលម្អិតក្នុងទម្រង់បំពាន។
សេចក្តីសម្រេចការប្រឡងរដ្ឋបង្រួបបង្រួមព័ត៌មាន
1. កិច្ចការ។ តើមានលេខប៉ុន្មាននៅក្នុងសញ្ញាគោលពីរសម្រាប់លេខគោលដប់ប្រាំមួយ 12F0 16 ?
ការពន្យល់។
ចូរបកប្រែលេខ 12F0 16 ទៅប្រព័ន្ធលេខគោលពីរ៖ 12F0 16 = 1001011110000 2 .
ចូររាប់ចំនួនឯកតា៖ មាន ៦ គ្រឿង។
ចម្លើយ៖ ៦.
2. ភារកិច្ច មុខងារប៊ូលីនច ត្រូវបានផ្តល់ឱ្យដោយកន្សោម (¬ z ) ∧ x ∨ x ∧ y . កំណត់ជួរឈរណាមួយនៃតារាងការពិតនៃអនុគមន៍ច ត្រូវគ្នាទៅនឹងអថេរនីមួយៗ x, y, z ។
អថេរ មួយ។ | អថេរ ២ | អថេរ ៣ | មុខងារ |
សរសេរអក្សរនៅក្នុងចម្លើយរបស់អ្នក។ x, y, z នៅក្នុងលំដាប់ដែលជួរឈរដែលត្រូវគ្នារបស់ពួកគេលេចឡើង (ទីមួយអក្សរដែលត្រូវគ្នានឹងជួរឈរទី 1 បន្ទាប់មកអក្សរដែលត្រូវគ្នានឹងជួរឈរទី 2 បន្ទាប់មកអក្សរដែលត្រូវគ្នានឹងជួរឈរទី 3) ។ សរសេរអក្សរក្នុងចំលើយជាជួរ អ្នកមិនចាំបាច់ដាក់សញ្ញាបំបែករវាងអក្សរនោះទេ។ ឧទាហរណ៍។ អនុញ្ញាតឱ្យបញ្ចេញមតិ x → y អាស្រ័យលើអថេរពីរ x និង y និងតារាងការពិត៖
អថេរ មួយ។ | អថេរ ២ | មុខងារ |
បន្ទាប់មកជួរឈរទី 1 ត្រូវគ្នាទៅនឹងអថេរ y ហើយជួរឈរទី 2 ត្រូវនឹងអថេរ x . នៅក្នុងចម្លើយរបស់អ្នក សូមសរសេរ៖ yx.
ការពន្យល់។
កន្សោមនេះគឺជាការបំបែកនៃការភ្ជាប់ពីរ។ យើងអាចសម្គាល់ឃើញថាក្នុងពាក្យទាំងពីរមានកត្តា x នោះគឺសម្រាប់ x = 0 ផលបូកនឹងស្មើនឹង 0។ ដូច្នេះសម្រាប់អថេរ x មានតែជួរឈរទីបីសម។
នៅជួរទីប្រាំបីនៃតារាង x = 1 ហើយតម្លៃនៃអនុគមន៍គឺ 0. វាអាចធ្វើទៅបានលុះត្រាតែ z = 1, y = 0, i.e. variable1 − z , និងអថេរ ២ − y
ចម្លើយ៖ zyx
3. ភារកិច្ច នៅក្នុងរូបនៅខាងស្តាំ ផែនទីផ្លូវនៃស្រុក N-sky ត្រូវបានបង្ហាញជាក្រាហ្វ តារាងមានព័ត៌មានអំពីប្រវែងផ្លូវទាំងនេះ (គិតជាគីឡូម៉ែត្រ)។
ដោយសារតារាង និងដ្យាក្រាមត្រូវបានគូរដោយឯករាជ្យពីគ្នាទៅវិញទៅមក លេខរៀង ការតាំងទីលំនៅនៅក្នុងតារាងមិនទាក់ទងនឹង អក្សរនៅលើក្រាហ្វ។ កំណត់ប្រវែងផ្លូវពីចំណុច B ដល់ចំណុច E. ក្នុងចម្លើយរបស់អ្នក សូមសរសេរចំនួនគត់ - ដូចដែលវាត្រូវបានចង្អុលបង្ហាញនៅក្នុងតារាង។
ការពន្យល់។
ចំណុច B គឺជាចំណុចតែមួយគត់ដែលមានផ្លូវចំនួនប្រាំ ដូច្នេះវាត្រូវនឹង P6 ហើយចំនុច E គឺជាចំណុចតែមួយគត់ដែលមានផ្លូវចំនួន 4 ដូច្នេះវាត្រូវនឹង P4 ។
ប្រវែងផ្លូវពី P6 ដល់ P4 គឺ 20 ។
ចម្លើយ៖ ២០.
4. ភារកិច្ច បំណែកនៃមូលដ្ឋានទិន្នន័យផ្តល់ព័ត៌មានអំពី ទំនាក់ទំនងគ្រួសារ. ដោយផ្អែកលើទិន្នន័យដែលបានផ្តល់ឱ្យ កំណត់ថាតើមានកូនចៅផ្ទាល់ប៉ុន្មាននាក់ (ពោលគឺកូន និងចៅ) Pavlenko A.K. ត្រូវបានរៀបរាប់នៅក្នុងតារាងទី 1 ។
|
|
ឬ
សម្រាប់ប្រតិបត្តិការបាច់ជាមួយឯកសារ របាំងឈ្មោះឯកសារត្រូវបានប្រើ។ របាំងគឺជាលំដាប់នៃអក្សរ លេខ និងតួអក្សរផ្សេងទៀតដែលត្រូវបានអនុញ្ញាតក្នុងឈ្មោះឯកសារ ដែលអាចមានតួអក្សរដូចខាងក្រោមផងដែរ៖
និមិត្តសញ្ញា "?" ( សញ្ញាសួរ) មានន័យថាជាតួអក្សរតាមអំពើចិត្តមួយ។
និមិត្តសញ្ញា "*" (សញ្ញាផ្កាយ) មានន័យថា លំដាប់នៃតួអក្សរដែលមានប្រវែងបំពាន រួមទាំង "*" ក៏អាចបញ្ជាក់លំដាប់ទទេផងដែរ។
ថតឯកសារមាន ៦ ឯកសារ៖
maverick.map
maverick.mp3
taverna.mp4
កាំភ្លើងខ្លី.mp4
vera.mp3
zveri.mp3
ខាងក្រោមនេះគឺជារបាំងចំនួន ៨។ តើមានប៉ុន្មានឯកសារដែលត្រូវគ្នានឹងឯកសារបួនពីថតដែលបានផ្ដល់?
*ver*.mp* | *?ver?*.mp? | ?*ver*.mp?* | *v*r*?.m?p* |
???*???.mp* | ???*???.m* | *a*.*a* | *a*.*p* |
ការពន្យល់។
ពីតារាងទី 2 យើងឃើញថា Pavlenko A.K. (ID 2155) មានកូនពីរនាក់ លេខសម្គាល់របស់ពួកគេគឺ 2302 និង 3002។
Pavlenko E.A. (ID 2302) មានកូនបីនាក់ ហើយ Pavlenko I. A. (ID 3002) មានកូនពីរនាក់។
ដូច្នេះ Pavlenko A.K. មានកូនចៅផ្ទាល់ចំនួនប្រាំពីរ: កូនពីរនាក់និងចៅប្រាំនាក់។
ចម្លើយ៖ ៧.
ឬ
ពិចារណារបាំងនីមួយៗ៖
1. តាមរយៈរបាំង *ver*.mp* ឯកសារចំនួនប្រាំនឹងត្រូវបានជ្រើសរើស៖
maverick.mp3
taverna.mp4
កាំភ្លើងខ្លី.mp4
vera.mp3
zveri.mp3
2. By mask *?ver?*.mp? ឯកសារបីនឹងត្រូវបានជ្រើសរើស៖
maverick.mp3
taverna.mp4
zveri.mp3
3. ដោយរបាំង?*ver*.mp?* ឯកសារចំនួនបួននឹងត្រូវបានជ្រើសរើស៖
maverick.mp3
taverna.mp4
កាំភ្លើងខ្លី.mp4
zveri.mp3
4. តាមរយៈរបាំង *v*r*?.m?p* ឯកសារមួយនឹងត្រូវបានជ្រើសរើស៖
maverick.map
5. ដោយរបាំង ???*???.mp* ឯកសារបីនឹងត្រូវបានជ្រើសរើស៖
maverick.mp3
taverna.mp4
កាំភ្លើងខ្លី.mp4
6. របាំងមុខ ???*???.m* នឹងជ្រើសរើសឯកសារចំនួនបួន៖
maverick.map
maverick.mp3
taverna.mp4
កាំភ្លើងខ្លី.mp4
7. តាមរយៈរបាំង *a*.*a* ឯកសារមួយនឹងត្រូវបានជ្រើសរើស៖
maverick.map
8. ដោយរបាំង *a*.*p* ឯកសារចំនួនបួននឹងត្រូវបានជ្រើសរើស៖
maverick.map
maverick.mp3
taverna.mp4
vera.mp3
នោះគឺរបាំងចំនួនបីដែលត្រូវគ្នានឹងឯកសារចំនួនបួនយ៉ាងពិតប្រាកដពីថតដែលបានផ្តល់ឱ្យ។
ចម្លើយ៖ ៣.
ចម្លើយ៖ ៧|៣
5. ភារកិច្ច សារដែលមានអក្សរតែបួនប៉ុណ្ណោះត្រូវបានបញ្ជូនតាមបណ្តាញទំនាក់ទំនង៖ P, O, S, T; សម្រាប់ការបញ្ជូន លេខកូដគោលពីរត្រូវបានប្រើដែលអនុញ្ញាតឱ្យការឌិកូដមិនច្បាស់លាស់។ សម្រាប់អក្សរ T, O, P ពាក្យកូដខាងក្រោមត្រូវបានប្រើ៖ T: 111, O: 0, P: 100 ។
បញ្ជាក់ពាក្យកូដខ្លីបំផុតសម្រាប់អក្សរ C ដែលកូដនឹងអនុញ្ញាតឱ្យឌិកូដមិនច្បាស់។ ប្រសិនបើមានលេខកូដបែបនេះច្រើន បង្ហាញលេខកូដដែលមានតម្លៃលេខតូចបំផុត។
ការពន្យល់។
អក្សរ C មិនអាចត្រូវបានអ៊ិនកូដជា 0 ទេ ព្រោះ 0 ត្រូវបានយករួចហើយ។
អក្សរ C មិនអាចត្រូវបានអ៊ិនកូដជា 1 ទេ ព្រោះការបំប្លែងអក្សរ T ចាប់ផ្តើមដោយ 1។
អក្សរ C មិនអាចត្រូវបានអ៊ិនកូដជា 10 ទេ ព្រោះការអ៊ិនកូដអក្សរ P ចាប់ផ្តើមដោយ 10។
អក្សរ C មិនអាចត្រូវបានអ៊ិនកូដជា 11 ទេ ចាប់តាំងពីការអ៊ិនកូដអក្សរ T ចាប់ផ្តើមដោយ 11 ។
អក្សរ C អាចត្រូវបានអ៊ិនកូដជា 101 - នេះគឺតូចបំផុត។ អត្ថន័យដែលអាចធ្វើបាន.
ចម្លើយ៖ ១០១.
6. ដំណើរស្វែងរក ការបញ្ចូលនៃក្បួនដោះស្រាយគឺជាលេខធម្មជាតិ N. ក្បួនដោះស្រាយបង្កើតលេខថ្មី R ពីវាដូចខាងក្រោម។
1. តំណាងគោលពីរនៃលេខ N ត្រូវបានសាងសង់។
2. លេខពីរបន្ថែមទៀតត្រូវបានបន្ថែមទៅធាតុនេះនៅខាងស្តាំយោងទៅតាមច្បាប់ខាងក្រោម៖
ក) ខ្ទង់ទាំងអស់នៃសញ្ញាគោលពីរត្រូវបានបន្ថែម ហើយនៅសល់នៃការបែងចែកផលបូកដោយ 2 ត្រូវបានបន្ថែមទៅចុងបញ្ចប់នៃលេខ (នៅខាងស្តាំ)។ ឧទាហរណ៍ ធាតុ 11100 ត្រូវបានបំប្លែងទៅជាធាតុ 111001;
ខ) សកម្មភាពដូចគ្នាត្រូវបានអនុវត្តនៅលើកំណត់ត្រានេះ - នៅសល់នៃការបែងចែកចំនួនខ្ទង់ដោយ 2 ត្រូវបានបន្ថែមទៅខាងស្តាំ។
កំណត់ត្រាដែលទទួលបានតាមវិធីនេះ (វាមានពីរខ្ទង់ច្រើនជាងនៅក្នុងកំណត់ត្រានៃលេខដើម N) គឺជាកំណត់ត្រាគោលពីរនៃលេខដែលត្រូវការ R ។
បញ្ជាក់នេះ។ ចំនួនតូចបំផុត។ N ដែលលទ្ធផលនៃក្បួនដោះស្រាយគឺធំជាង 125។ ក្នុងចម្លើយ សូមសរសេរលេខនេះក្នុង ប្រព័ន្ធទសភាគការគិតគូរ។
ឬ
ការគណនាអ្នកសំដែងមានក្រុមពីរដែលត្រូវបានផ្តល់លេខ:
1. បន្ថែម 2,
2. គុណនឹង 5 ។
នៅពេលសម្តែងលើកទីមួយ ម៉ាស៊ីនគិតលេខបន្ថែម 2 ទៅលេខនៅលើអេក្រង់ ហើយនៅពេលអនុវត្តទីពីរ វាគុណនឹង 5 ។
ឧទាហរណ៍កម្មវិធី 2121 គឺជាកម្មវិធី
គុណនឹង 5
បន្ថែម 2,
គុណនឹង 5
បន្ថែម 2,
ដែលបំប្លែងលេខ 1 ទៅជាលេខ 37 ។
សរសេរលំដាប់នៃពាក្យបញ្ជានៅក្នុងកម្មវិធីដែលបំលែងលេខ 2 ទៅលេខ 24 ហើយមានពាក្យបញ្ជាមិនលើសពីបួន។ បញ្ជាក់តែលេខបញ្ជាប៉ុណ្ណោះ។
ការពន្យល់។
ក្បួនដោះស្រាយនេះកំណត់នៅចុងបញ្ចប់នៃលេខទាំង 10 ប្រសិនបើដំបូងវាមានចំនួនសេសនៅក្នុងសញ្ញាគោលពីររបស់វា ឬ 00 ប្រសិនបើវាជាគូ។
126 10 = 1111110 2 អាចទទួលបានជាលទ្ធផលនៃក្បួនដោះស្រាយពីលេខ 11111 2 .
11111 2 = 31 10 .
ចម្លើយ៖ ៣១.
ឬ
ចូរដោះស្រាយបញ្ហាពីបញ្ច្រាស ហើយបន្ទាប់មកសរសេរពាក្យបញ្ជាដែលទទួលបានពីស្តាំទៅឆ្វេង។
ប្រសិនបើលេខមិនត្រូវបានបែងចែកដោយ 5 នោះបានទទួលតាមរយៈពាក្យបញ្ជា 1 ប្រសិនបើវាបែងចែកបន្ទាប់មកតាមរយៈពាក្យបញ្ជា 2 ។
22 + 2 = 24 (ក្រុម 1)
20 + 2 = 22 (ក្រុម 1)
4 * 5 = 20 (ក្រុម 2)
2 + 2 = 4 (ក្រុម 1)
ចម្លើយ៖ ១២១១។
ចម្លើយ៖ ៣១|១២១១
7. ភារកិច្ច។ បំណែកដែលបានផ្តល់ឱ្យ សៀវភៅបញ្ជី. រូបមន្តមួយត្រូវបានចម្លងពីក្រឡា E4 ទៅក្រឡា D3។ នៅពេលចម្លងអាសយដ្ឋាននៃក្រឡាក្នុងរូបមន្ត ពួកវាបានផ្លាស់ប្តូរដោយស្វ័យប្រវត្តិ។ អ្វីដែលបានក្លាយជា តម្លៃលេខរូបមន្តក្នុងក្រឡា D3?
=$B2 * C$3 |
ចំណាំ៖ សញ្ញា $ បង្ហាញពីអាសយដ្ឋានដាច់ខាត។
ឬ
បំណែកនៃសៀវភៅបញ្ជីមួយត្រូវបានផ្តល់ឱ្យ។
=(A1-3)/(B1-1) | =(A1-3)/(C1-5) | C1/(A1 ដល់ 3) |
តើចំនួនគត់គួរត្រូវបានសរសេរនៅក្នុងក្រឡា A1 ដើម្បីឱ្យតារាងដែលបង្កើតនៅលើតម្លៃនៃក្រឡាក្នុងជួរ A2:C2 ត្រូវគ្នានឹងតួលេខ? វាត្រូវបានគេដឹងថាតម្លៃក្រឡាទាំងអស់ពីជួរដែលបានពិចារណាគឺមិនអវិជ្ជមាន។
ការពន្យល់។
រូបមន្តនៅពេលចម្លងទៅក្រឡា D3 បានប្តូរទៅ =$B1 * B$3។
B1 * B3 = 4 * 2 = 8 ។
ចម្លើយ៖ ៨.
ឬ
ជំនួសតម្លៃនៃ B1 និង C1 ទៅជារូបមន្ត A2:C2៖
A2 = (A1-3)/5
B2 = (A1-3)/5
C2 = 10/(A1-3)
ចាប់តាំងពី A2 = B2 បន្ទាប់មក С2 = 2 * A2 = 2 * B2
ជំនួស៖
10/(A1-3) = 2*(A1-3)/5
A1 − 3 = 5
A1 = ៨.
ចម្លើយ៖ ៨.
8. ភារកិច្ច សរសេរលេខដែលនឹងត្រូវបានបោះពុម្ពជាលទ្ធផលនៃកម្មវិធីខាងក្រោម។ ដើម្បីភាពងាយស្រួលរបស់អ្នក កម្មវិធីត្រូវបានបង្ហាញជាប្រាំភាសាសរសេរកម្មវិធី។
មូលដ្ឋាន | ពស់ថ្លាន់ |
DIM S, N ជាចំនួនគត់ S=0 N=0 ខណៈ S S=S+8 N=N+2 WEND បោះពុម្ព N | s = 0 n=0 ខណៈពេលដែល s s = s + ៨ n = n + 2 print(n) |
ភាសាក្បួនដោះស្រាយ | ប៉ាស្កាល់ |
alg ដើម ចំនួនគត់ n, s n:=0 s:= 0 nc bye s s:= s + 8 n:= n + 2 kts ទិន្នផល n កុង | var s, n: ចំនួនគត់; ចាប់ផ្តើម s:= 0; n:=0; ខណៈពេលដែល s ចាប់ផ្តើម s:= s + 8; n:= n + 2 បញ្ចប់; writeln(n) ចប់។ |
ស៊ី |
|
# រួមបញ្ចូល int main() ( int s = 0, n = 0; ខណៈពេលដែល (ស printf("%d\n", n); ត្រឡប់ 0; |
ការពន្យល់។
while loop ត្រូវបានប្រតិបត្តិដរាបណាលក្ខខណ្ឌ s គឺពិត
ចម្លើយ៖ ២៨.
9. ភារកិច្ច។ តើចំនួនអង្គចងចាំអប្បបរមា (គិតជាគីឡូបៃ) ដែលត្រូវរក្សាទុក ដើម្បីអាចរក្សាទុករូបភាពទំហំ 64×64 ភីកសែល ដោយសន្មតថា 256 អាចប្រើក្នុងរូបភាព ពណ៌ផ្សេងគ្នា? ក្នុងចំលើយ សរសេរតែចំនួនគត់ អ្នកមិនចាំបាច់សរសេរឯកតារង្វាស់ទេ។
ឬ
បំណែកតន្ត្រីត្រូវបានកត់ត្រាជាទម្រង់ mono ឌីជីថល និងរក្សាទុកជាឯកសារដោយមិនប្រើការបង្ហាប់ទិន្នន័យ។ ទំហំនៃឯកសារលទ្ធផលគឺ 24 MB ។ បន្ទាប់មក តន្ត្រីដូចគ្នានេះត្រូវបានថតឡើងវិញជាស្តេរ៉េអូ (ការថតពីរឆានែល) និងឌីជីថលជាមួយនឹងគុណភាពបង្ហាញខ្ពស់ជាង 4 ដង និងអត្រាគំរូទាបជាង 1.5 ដងជាងលើកដំបូង។ ការបង្ហាប់ទិន្នន័យមិនត្រូវបានអនុវត្តទេ។ បញ្ជាក់ទំហំឯកសារក្នុង MB ដែលបណ្តាលមកពីការសរសេរឡើងវិញ។ ក្នុងចំលើយ សរសេរតែចំនួនគត់ អ្នកមិនចាំបាច់សរសេរឯកតារង្វាស់ទេ។
ការពន្យល់។
ភីកសែលមួយត្រូវបានអ៊ិនកូដជាមួយនឹងអង្គចងចាំ 8 ប៊ីត។
សរុប 64 * 64 = 2 12 ភីកសែល។
បរិមាណអង្គចងចាំដែលកាន់កាប់ដោយរូបភាព 2 12 * 8 = 2 15 ប៊ីត = 2 12 បៃ = 4 KB ។
ចម្លើយ៖ ៤.
ឬ
នៅពេលថតឯកសារដូចគ្នាក្នុងទម្រង់ស្តេរ៉េអូ កម្រិតសំឡេងរបស់វាត្រូវបានកើនឡើង 2 ដង។ 24 * 2 = 48
នៅពេលដែលគុណភាពបង្ហាញរបស់វាត្រូវបានកើនឡើង 4 ដង បរិមាណរបស់វាក៏កើនឡើង 4 ដងផងដែរ។ 48 * 4 = 192
នៅពេលដែលអត្រាគំរូត្រូវបានកាត់បន្ថយ 1,5 ដង បរិមាណរបស់វាត្រូវបានកាត់បន្ថយ 1,5 ដង។ 192 / 1.5 = 128 ។
ចម្លើយ៖ ១២៨។
ចម្លើយ៖ ៤|១២៨
10. ភារកិច្ច Igor បង្កើតតារាងនៃពាក្យកូដសម្រាប់ការបញ្ជូនសារ ដែលសារនីមួយៗមានពាក្យកូដផ្ទាល់ខ្លួន។ Igor ប្រើពាក្យ 5 អក្សរជាពាក្យកូដដែលក្នុងនោះមានតែអក្សរ P, I, R ហើយអក្សរ P លេចឡើងពិតប្រាកដ 1 ដង។ អក្សរនីមួយៗដែលមានសុពលភាពផ្សេងទៀតអាចកើតឡើងចំនួនដងក្នុងពាក្យកូដ ឬមិនមែនទាល់តែសោះ។ តើ Igor អាចប្រើពាក្យកូដខុសគ្នាប៉ុន្មាន?
ការពន្យល់។
អ៊ីហ្គ័រអាចតុបតែងខ្លួនបាន ២ 4 ពាក្យដោយដាក់អក្សរ P នៅកន្លែងដំបូង។ ស្រដៀងគ្នានេះដែរ អ្នកអាចដាក់វានៅកន្លែងទីពីរ ទីបី ទីបួន និងទីប្រាំ។ យើងទទួលបាន 5 * 2 4 = 80 ពាក្យ។
ចម្លើយ៖ ៨០។
11. ភារកិច្ច ខាងក្រោមនេះ មុខងារដែលកើតឡើងដដែលៗចំនួនពីរ (នីតិវិធី) ត្រូវបានសរសេរជាភាសាសរសេរកម្មវិធីចំនួនប្រាំ៖ F និង G ។
មូលដ្ឋាន | ពស់ថ្លាន់ |
ប្រកាស SUB F(n) ប្រកាស SUB G(n) SUB F(n) ប្រសិនបើ n > 0 បន្ទាប់មក G(n - 1) បញ្ចប់ SUB SUB G(n) បោះពុម្ព "*" ប្រសិនបើ n > 1 បន្ទាប់មក F (n - 3) បញ្ចប់ SUB | def F(n)៖ ប្រសិនបើ n > 0៖ G(n - 1) def G(n)៖ បោះពុម្ព ("*") ប្រសិនបើ n > 1: F(n - 3) |
ភាសាក្បួនដោះស្រាយ | ប៉ាស្កាល់ |
alg F(ចំនួនគត់ n) ដើម ប្រសិនបើ n > 0 បន្ទាប់មក G(n - 1) ទាំងអស់។ កុង alg G(ចំនួនគត់ n) ដើម សេចក្តីសន្និដ្ឋាន "*" ប្រសិនបើ n > 1 បន្ទាប់មក F(n - 3) ទាំងអស់។ កុង | នីតិវិធី F (n: ចំនួនគត់); ទៅមុខ; នីតិវិធី G (n: ចំនួនគត់); ទៅមុខ; នីតិវិធី F (n: ចំនួនគត់); ចាប់ផ្តើម ប្រសិនបើ n > 0 បន្ទាប់មក G(n - 1); បញ្ចប់; នីតិវិធី G (n: ចំនួនគត់); ចាប់ផ្តើម writeln("*"); ប្រសិនបើ n > 1 បន្ទាប់មក F(n - 3); បញ្ចប់; |
ស៊ី |
|
ចាត់ទុកជាមោឃៈ F (int n); ទុកជាមោឃៈ G (int n); void F(int n)( ប្រសិនបើ (n> 0) G(n - 1); void G(int n)( printf("*"); ប្រសិនបើ (n > 1) F(n - 3); |
តើសញ្ញាផ្កាយប៉ុន្មាននឹងត្រូវបានបោះពុម្ពនៅលើអេក្រង់នៅពេលហៅ F(11)?
ការពន្យល់។
តោះក្លែងធ្វើការងាររបស់កម្មវិធី៖
F(11)
G(10): *
F(7)
G(6): *
F(3)
G(2): *
F(-1)
ចម្លើយ៖ ៣.
12. ដំណើរស្វែងរក នៅក្នុង TCP/IP networking terminology, netmask គឺ a លេខគោលពីរដែលកំណត់ថាតើផ្នែកណាមួយនៃអាសយដ្ឋាន IP របស់ម៉ាស៊ីនបណ្តាញសំដៅទៅលើអាសយដ្ឋានបណ្តាញ ហើយផ្នែកណាមួយដែលសំដៅលើអាសយដ្ឋានរបស់ម៉ាស៊ីនខ្លួនឯងនៅក្នុងបណ្តាញនេះ។ ជាធម្មតារបាំងត្រូវបានសរសេរដោយយោងទៅតាមច្បាប់ដូចគ្នានឹងអាសយដ្ឋាន IP - នៅក្នុង បួនបៃដែលមានបៃនីមួយៗសរសេរជា លេខទសភាគ. ក្នុងពេលជាមួយគ្នានេះនៅក្នុងរបាំងដំបូង (ក្នុងខ្ទង់ខ្ពស់បំផុត) មានមួយហើយបន្ទាប់មកពីខ្ទង់ជាក់លាក់មួយ - សូន្យ។ អាសយដ្ឋានបណ្តាញត្រូវបានទទួលដោយអនុវត្តការភ្ជាប់គ្នាបន្តិចទៅអាសយដ្ឋាន IP របស់ម៉ាស៊ីន និងរបាំងដែលបានផ្តល់ឱ្យ។
ឧទាហរណ៍ ប្រសិនបើអាសយដ្ឋាន IP របស់ម៉ាស៊ីនគឺ 231.32.255.131 ហើយរបាំងគឺ 255.255.240.0 នោះអាសយដ្ឋានបណ្តាញគឺ 231.32.240.0 ។
សម្រាប់ម៉ាស៊ីនដែលមានអាសយដ្ឋាន IP នៃ 111.81.208.27 អាសយដ្ឋានបណ្តាញគឺ 111.81.192.0 ។ តើអ្វីទៅជាតម្លៃតូចបំផុតដែលអាចធ្វើបាននៃបៃទីបីពីខាងឆ្វេងនៃរបាំង? សរសេរចម្លើយរបស់អ្នកជាលេខទសភាគ។
ការពន្យល់។
ចូរសរសេរបៃទីបីនៃអាសយដ្ឋាន IP និងអាសយដ្ឋានបណ្តាញនៅក្នុងសញ្ញាគោលពីរ៖
208 10 = 11010000 2
192 10 = 11000000 2
យើងឃើញថាម៉ាស់ពីរដំបូងនៅខាងឆ្វេងគឺជាលេខមួយ ដែលមានន័យថាដើម្បីឱ្យតម្លៃតូចបំផុត ប៊ីតដែលនៅសល់ត្រូវតែសូន្យ។ យើងទទួលបានថាបៃទីបីនៃរបាំងពីខាងឆ្វេងគឺ 11000000 2 = 192 10
ចម្លើយ៖ ១៩២។
13. ភារកិច្ច នៅពេលចុះឈ្មោះនៅ ប្រព័ន្ធកុំព្យូទ័រអ្នកប្រើម្នាក់ៗត្រូវបានផ្ដល់លេខសម្ងាត់ដែលមាន 15 តួអក្សរ ហើយមានតែតួអក្សរពីសំណុំតួអក្សរ 12 ប៉ុណ្ណោះ៖ A, B, C, D, E, F, G, H, K, L, M, N. នៅក្នុងមូលដ្ឋានទិន្នន័យសម្រាប់រក្សាទុក។ ព័ត៌មានអំពីអ្នកប្រើប្រាស់នីមួយៗត្រូវបានបែងចែកដូចគ្នា និងចំនួនគត់តូចបំផុតនៃបៃ។ ក្នុងករណីនេះ ការសរសេរកូដតួអក្សរដោយតួអក្សរនៃពាក្យសម្ងាត់ត្រូវបានប្រើ តួអក្សរទាំងអស់ត្រូវបានអ៊ិនកូដដោយដូចគ្នា និងចំនួនប៊ីតអប្បបរមាដែលអាចធ្វើបាន។ បន្ថែមពីលើពាក្យសម្ងាត់ខ្លួនវា ព័ត៌មានបន្ថែមត្រូវបានរក្សាទុកនៅក្នុងប្រព័ន្ធសម្រាប់អ្នកប្រើប្រាស់នីមួយៗ ដែលចំនួនគត់នៃបៃត្រូវបានបែងចែក។ លេខនេះគឺដូចគ្នាសម្រាប់អ្នកប្រើប្រាស់ទាំងអស់។ វាត្រូវការ 400 បៃដើម្បីរក្សាទុកព័ត៌មានអំពីអ្នកប្រើប្រាស់ 20 ។ តើត្រូវបែងចែកប៉ុន្មានបៃសម្រាប់ផ្ទុក ព័ត៍មានបន្ថែមអំពីអ្នកប្រើប្រាស់ម្នាក់? ក្នុងចំលើយ សរសេរតែចំនួនគត់ - ចំនួនបៃ។
ការពន្យល់។
យោងតាមលក្ខខណ្ឌ 12 អក្សរអាចប្រើជាលេខ។ វាត្រូវបានគេដឹងថាដោយមានជំនួយពី N bits វាអាចទៅរួចក្នុងការអ៊ិនកូដ 2N ជម្រើសផ្សេងៗ. ចាប់តាំងពី 2 3 4 បន្ទាប់មក 4 ប៊ីតត្រូវបានទាមទារដើម្បីសរសេរតួអក្សរនីមួយៗក្នុងចំណោម 12 តួអក្សរ។
ដើម្បីរក្សាទុក 15 តួអក្សរនៃពាក្យសម្ងាត់ អ្នកត្រូវការ 4 15 = 60 ប៊ីត ហើយចាប់តាំងពីចំនួនគត់នៃបៃត្រូវបានប្រើសម្រាប់ការសរសេរ យើងយកតម្លៃជិតបំផុតមិនតិចទេ ផលគុណនៃប្រាំបី លេខនេះគឺ 64 = 8 8 ប៊ីត។ (8 បៃ) ។
អនុញ្ញាតឱ្យចំនួនអង្គចងចាំដែលបានបម្រុងទុកសម្រាប់វគ្គបន្ថែម x បន្ទាប់មក៖
20 * (8+x) = 400
x=12
ចម្លើយ៖ ១២.
14. ដំណើរស្វែងរក កម្មវិធីនិពន្ធប្រតិបត្តិ ទទួលបានខ្សែអក្សរនៃលេខជាការបញ្ចូល និងបំប្លែងវា។ កម្មវិធីនិពន្ធអាចប្រតិបត្តិពាក្យបញ្ជាពីរនៅក្នុងពាក្យបញ្ជា v និង w តំណាងឱ្យខ្សែអក្សរ។
ក) ជំនួស (v, w) ។
ពាក្យបញ្ជានេះជំនួសការកើតឡើងដំបូងនៃ v នៅខាងឆ្វេងក្នុងខ្សែអក្សរជាមួយ w ។ ឧទាហរណ៍ការប្រតិបត្តិពាក្យបញ្ជា
ជំនួស (111, 27)
បំលែងខ្សែអក្សរ 05111150 ទៅជាខ្សែអក្សរ 0527150។ ប្រសិនបើខ្សែអក្សរមិនមានការកើតឡើងនៃខ្សែអក្សរ v នោះការប្រតិបត្តិពាក្យបញ្ជាជំនួស (v, w) មិនផ្លាស់ប្តូរខ្សែអក្សរទេ។
ខ) បានរកឃើញ (v) ។
ពាក្យបញ្ជានេះពិនិត្យមើលថាតើខ្សែអក្សរ v កើតឡើងនៅក្នុងបន្ទាត់នៃកម្មវិធីនិពន្ធប្រតិបត្តិឬអត់ ប្រសិនបើវាកើតឡើងបន្ទាប់មកពាក្យបញ្ជាត្រឡប់មកវិញ ប៊ូលីនពិត បើមិនដូច្នេះទេ វាត្រឡប់មិនពិត។ បន្ទាត់
អ្នកសំដែងមិនត្រូវបានផ្លាស់ប្តូរទេ។
វដ្ត
លក្ខខណ្ឌ BYE
លំដាប់ពាក្យបញ្ជា
បញ្ចប់ BYE
ប្រតិបត្តិខណៈពេលដែលលក្ខខណ្ឌគឺពិត។
នៅក្នុងការរចនា
លក្ខខណ្ឌ IF
ទៅក្រុម 1
ក្រុម ELSE ២
បញ្ចប់ IF
Command1 (ប្រសិនបើលក្ខខណ្ឌគឺពិត) ឬ command2 (ប្រសិនបើលក្ខខណ្ឌមិនពិត) ត្រូវបានប្រតិបត្តិ។
តើខ្សែអក្សរអ្វីដែលនឹងកើតឡើងពីការអនុវត្តដូចខាងក្រោម
កម្មវិធីទៅខ្សែអក្សរដែលមាន 68 ខ្ទង់ជាប់គ្នា 8? ជាការឆ្លើយតប
សរសេរខ្សែអក្សរលទ្ធផល។
ចាប់ផ្តើម
មិនទាន់រកឃើញ (222) ឬ រកឃើញ (888)
រកឃើញ (222)
ជំនួស (222, 8)
ជំនួស ELSE (888, 2)
បញ្ចប់ IF
បញ្ចប់ BYE
ចប់
ការពន្យល់។
នៅក្នុងលេខ 68 ជាប់គ្នា 8 មាន 22 ក្រុមនៃ 3 ប្រាំបីដែលនឹងត្រូវបានជំនួសដោយ 22 ពីរហើយពីរប្រាំបីនឹងនៅដដែល។
68(8) = 22(2) + 2(8)
22(2) + 2(8) = 1(2) + 9(8)
1(2) + 9(8) = 4(2)
4(2) = 1(2) + 1(8) = 28
ចម្លើយ៖ ២៨.
15. ដំណើរស្វែងរក រូបបង្ហាញពីដ្យាក្រាមផ្លូវតភ្ជាប់ទីក្រុង A, B, C, D, D, E, G, H, I, K, L, M ។
នៅលើផ្លូវនីមួយៗ អ្នកអាចផ្លាស់ទីបានតែក្នុងទិសដៅមួយប៉ុណ្ណោះ ដែលបង្ហាញដោយព្រួញ។
តើមានប៉ុន្មាន វិធីផ្សេងគ្នាពីទីក្រុង A ទៅទីក្រុង M?
ការពន្យល់។
ចូរចាប់ផ្តើមរាប់ចំនួនផ្លូវពីចុងបញ្ចប់នៃផ្លូវ - ពីទីក្រុង M. Let N X - ចំនួននៃវិធីផ្សេងគ្នាពីទីក្រុង A ទៅទីក្រុង X, N - ចំនួនសរុបវិធី។ ទីក្រុង M អាចទៅដល់ពី L ឬ K ដូច្នេះ N = N M \u003d N L + N K ។ (*)
ស្រដៀងគ្នានេះដែរ៖
N K \u003d N និង;
N L \u003d N និង;
N I \u003d N E + N W + N Z
N K \u003d N E \u003d ១.
ចូរបន្ថែមបន្ទាត់បញ្ឈរបន្ថែមទៀត៖
N B \u003d N A \u003d 1;
N B \u003d N B + N A + N G \u003d 1 + 1 + 1 \u003d 3;
N E \u003d N G \u003d 1;
N G \u003d N A \u003d ១.
ជំនួសក្នុងរូបមន្ត (*): N = N M = 4 + 4 + 4 + 1 = 13 ។
ចម្លើយ៖ ១៣.
ចម្លើយ៖ ៥៦
16. ដំណើរស្វែងរក តម្លៃកន្សោមនព្វន្ធ៖ ៩ 8 + 3 5 - 9 - កត់ត្រាក្នុងប្រព័ន្ធលេខដែលមានមូលដ្ឋាន 3. តើលេខ "2" មានប៉ុន្មានខ្ទង់នៅក្នុងធាតុនេះ?
ការពន្យល់។
ចូរយើងបំប្លែងកន្សោម៖
(3 2 ) 8 + 3 5 - 3 2
3 16 + 3 5 - 3 2
3 16 + 3 5 = 100...00100000
100...00100000 - 3 2 = 100...00022200
មាន 2s ចំនួនបីនៅក្នុងលេខលទ្ធផល។
ចម្លើយ៖ ៣
17. ភារកិច្ច នៅក្នុងភាសាសំណួររបស់ម៉ាស៊ីនស្វែងរក និមិត្តសញ្ញា "|" ត្រូវបានប្រើដើម្បីចង្អុលបង្ហាញប្រតិបត្តិការឡូជីខល "OR" ហើយនិមិត្តសញ្ញា "&" ត្រូវបានប្រើដើម្បីចង្អុលបង្ហាញប្រតិបត្តិការឡូជីខល "AND" ។ តារាងបង្ហាញសំណួរ និងចំនួនទំព័រដែលរកឃើញដោយពួកគេសម្រាប់ផ្នែកជាក់លាក់នៃអ៊ីនធឺណិត។
តើមានទំព័រប៉ុន្មាន (រាប់ពាន់) នឹងត្រូវបានរកឃើញសម្រាប់សំណួរHomer & Odyssey & Iliad?វាត្រូវបានគេជឿថាសំណើទាំងអស់ត្រូវបានប្រតិបត្តិស្ទើរតែក្នុងពេលដំណាលគ្នា ដូច្នេះសំណុំនៃទំព័រដែលមានពាក្យស្វែងរកទាំងអស់មិនផ្លាស់ប្តូរតាមពេលវេលា។
ការអនុវត្តសំណើ។
ការពន្យល់។
ចំនួនសំណើនៅក្នុងតំបន់នេះនឹងត្រូវបានបញ្ជាក់ដោយ Ni ។ គោលដៅរបស់យើងគឺ N5 ។
បន្ទាប់មកពីតារាងយើងរកឃើញថា:
N5 + N6 = 355,
N4 + N5 = 200,
N4 + N5 + N6 = 470 ។
ពីសមីការទីមួយ និងទីពីរ៖ N4 + 2N5 + N6 = 555 ។
ពីសមីការចុងក្រោយ៖ N5 = 85 ។
ចម្លើយ៖ ៨៥
18. Task Denote ដោយ m&n ការភ្ជាប់ប៊ីតនៃចំនួនគត់មិនអវិជ្ជមាន m និង n . ដូច្នេះឧទាហរណ៍ 14&5 = 1110 2 &0101 2 = 0100 2 = 4.
តើចំនួនគត់មិនអវិជ្ជមានតូចបំផុតគឺជាអ្វីនិងរូបមន្ត
x&25 ≠ 0 → (x&17 = 0 → x&A ≠ 0)
គឺដូចគ្នាបេះបិទ (ឧ. យកតម្លៃ 1 សម្រាប់តម្លៃចំនួនគត់ដែលមិនអវិជ្ជមាននៃអថេរ X)?
ការពន្យល់។
ចូរយើងណែនាំការសម្គាល់៖
(x ∈ A) ≡ A; (x ∈ P) ≡ P; (x ∈ Q) ≡ Q ។
ការផ្លាស់ប្តូរ យើងទទួលបាន៖
¬P ∨ ¬(Q ∧ ¬A) ∨ ¬P = ¬P ∨ ¬Q ∨ ក.
ឡូជីខល OR គឺពិត ប្រសិនបើយ៉ាងហោចណាស់សេចក្តីថ្លែងការណ៍មួយគឺពិត។ លក្ខខណ្ឌ ¬P∨ ¬Q = 1 ពេញចិត្តកាំរស្មី (−∞, 40) និង (60, ∞) ។ ចាប់តាំងពីកន្សោម ¬P∨ ¬Q ∨ A ត្រូវតែដូចគ្នាបេះបិទ កន្សោម A ត្រូវតែពិតនៅលើចន្លោះពេល។ ប្រវែងរបស់វាគឺ 20 ។
ចម្លើយ៖ ២០.
ចម្លើយ៖ ៨
19. ដំណើរស្វែងរក កម្មវិធីនេះប្រើអារេចំនួនគត់មួយវិមាត្រ A ដែលមានសន្ទស្សន៍ពី 0 ដល់ 9 ។ តម្លៃនៃធាតុគឺ 4, 7, 3, 8, 5, 0, 1, 2, 9, 6 រៀងគ្នា i.e. A=4, A=7, ល។
កំណត់តម្លៃនៃអថេរគ បន្ទាប់ពីដំណើរការផ្នែកខាងក្រោមនៃកម្មវិធីនេះ(សរសេរខាងក្រោមជាភាសាសរសេរកម្មវិធីចំនួនប្រាំ).
មូលដ្ឋាន | ពស់ថ្លាន់ |
C=0 សម្រាប់ i = 1 ដល់ 9 IF A(i) C=c+1 T = A(i) A(i) = A(0) A(0) = t ENDIF បន្ទាប់ខ្ញុំ | C=0 សម្រាប់ខ្ញុំនៅក្នុងជួរ (1,10): ប្រសិនបើ A[i] C=c+1 t = A[i] A[i] = ក A=t |
ភាសាក្បួនដោះស្រាយ | ប៉ាស្កាល់ |
c:= 0 nc សម្រាប់ i ពី 1 ដល់ 9 ប្រសិនបើ A[i] c:= គ + ១ t:= A[i] A[i] := ក ក:= t ទាំងអស់។ kts | c:=0; សម្រាប់ i:= 1 ដល់ 9 ធ្វើ ប្រសិនបើ A[i] ចាប់ផ្តើម c:= c + 1; t:= A[i]; A[i] := A; A := t; បញ្ចប់; |
ស៊ី |
|
c = 0; សម្រាប់ (i = 1; i ប្រសិនបើ (A[i] { c++; t = A[i]; A[i] = A; A=t; } |
ការពន្យល់។
ប្រសិនបើ A[i] ជាធាតុអារេតិចជាង A នោះកម្មវិធីនឹងប្តូរពួកវា ហើយបង្កើនតម្លៃនៃអថេរគដោយ 1. កម្មវិធីនឹងត្រូវបានប្រតិបត្តិពីរដង លើកទីមួយប្តូរ A និង A ចាប់តាំងពី 3 ជាមួយក្លាយជា 2 ។
ចម្លើយ៖ ២.
20. ដំណើរស្វែងរកក្បួនដោះស្រាយត្រូវបានសរសេរជាភាសាសរសេរកម្មវិធីចំនួនប្រាំខាងក្រោម។ ដោយបានទទួលលេខxក្បួនដោះស្រាយនេះបោះពុម្ពលេខម. វាត្រូវបានគេស្គាល់ថាx> 100. ចង្អុលបង្ហាញលេខតូចបំផុតដូចជា (ឧ. ធំជាង 100)xនៅពេលចូលដែល algorithm បោះពុម្ព 26 ។
មូលដ្ឋាន | ពស់ថ្លាន់ |
DIM X, L, M ជាចំនួនគត់ បញ្ចូល X L=X ម = ៦៥ ប្រសិនបើ L MOD 2 = 0 បន្ទាប់មក ម = ៥២ ENDIF ខណៈពេលដែល L M ប្រសិនបើ L > M បន្ទាប់មក L=L-M ELSE M=M-L ENDIF WEND បោះពុម្ព M | x = int(បញ្ចូល()) L=x ម = ៦៥ ប្រសិនបើ L % 2 == 0: ម = ៥២ ខណៈពេលដែល L != M: ប្រសិនបើ L > M: L=L-M ផ្សេងទៀត៖ M=M-L បោះពុម្ព(M) |
ភាសាក្បួនដោះស្រាយ | ប៉ាស្កាល់ |
alg ដើម ចំនួនគត់ x, L, M បញ្ចូល x L:=x M:= 65 ប្រសិនបើ mod(L,2)=0 បន្ទាប់មក M:= ៥២ ទាំងអស់។ nc ខណៈពេលដែល L M ប្រសិនបើ L > M បន្ទាប់មក L:= L - M បើមិនដូច្នេះទេ M:= M - L ទាំងអស់។ kts ស្ថានីយ M កុង | var x, L, M: ចំនួនគត់; ចាប់ផ្តើម readln(x); L:=x; M:= 65; ប្រសិនបើ L mod 2 = 0 បន្ទាប់មក M:= 52; ខណៈពេលដែល L M ធ្វើ ប្រសិនបើ L > M បន្ទាប់មក L:= L - M ផ្សេងទៀត។ M:= M - L; writeln(M); ចប់។ |
ស៊ី |
|
# រួមបញ្ចូល មោឃៈមេ() { intx, L, M; scanf("%d", &x); L=x; M=65; ប្រសិនបើ (L % 2 == 0) M=52; ខណៈ (L != M)( ប្រសិនបើ (L> M) L = L - M; ផ្សេងទៀត។ M = M - L; } printf("%d", M); } |
ការពន្យល់។
នៅក្នុងតួនៃរង្វិលជុំ លេខ M និង L ថយចុះរហូតដល់វាស្មើគ្នា។ ដើម្បីបោះពុម្ពលេខ 26 នៅខាងចុង លេខទាំងពីរត្រូវតែស្មើ 26 នៅចំណុចខ្លះ ចូរយើងទៅពីចុងដល់ដើម៖ ក្នុងជំហានមុន លេខមួយគឺ 26 និងមួយទៀត 26 + 26 = 52 ។ មុន, 52 + 26 = 78 និង 52. រហូតដល់ពេលនោះ, 78 + 52 = 130 និង 52. នោះគឺជាចំនួនតូចបំផុតដែលអាចធ្វើបានគឺ 130។ ហើយចាប់តាំងពីលេខដែលបានរកឃើញគឺគូ, M នឹងត្រូវបានកំណត់តម្លៃ 52 ដែលនឹងនាំ ដល់លទ្ធផលដែលចង់បាន។
ចម្លើយ៖ ១៣០ ។
21. ដំណើរស្វែងរកសរសេរក្នុងចម្លើយ តម្លៃតូចបំផុត។អថេរបញ្ចូលkដែលកម្មវិធីបង្កើតចម្លើយដូចគ្នានឹងតម្លៃបញ្ចូលk= 10. សម្រាប់ភាពងាយស្រួលរបស់អ្នក កម្មវិធីត្រូវបានបង្ហាញជាប្រាំភាសាសរសេរកម្មវិធី។
មូលដ្ឋាន | ពស់ថ្លាន់ |
DIM K ខ្ញុំយូរហើយ។ បញ្ចូល K ខ្ញុំ = ១ ខណៈ F(I) ខ្ញុំ = ខ្ញុំ + ១ WEND បោះពុម្ព I មុខងារ F(N) F=N*N*N បញ្ចប់មុខងារ មុខងារ G(N) G = 2*N + 3 បញ្ចប់មុខងារ | def f(n)៖ ត្រឡប់ n * n * n def g(n)៖ ត្រឡប់ 2*n+3 k = int(បញ្ចូល()) ខ្ញុំ = 1 ខណៈពេលដែល f (i) i+=1 បោះពុម្ព(i) |
ភាសាក្បួនដោះស្រាយ | ប៉ាស្កាល់ |
alg ដើម ចំនួនគត់ i, k បញ្ចូល k ខ្ញុំ៖= ១ nc ខណៈពេលដែល f (i) i:= i + 1 kts ទិន្នផល i កុង alg ចំនួនគត់ f(int n) ដើម val:= n * n * n កុង alg ចំនួនគត់ g(int n) ដើម តម្លៃ៖= 2 * n + 3 កុង | var k, ខ្ញុំ: longint; អនុគមន៍ f(n: longint): longint; ចាប់ផ្តើម f:= n * n * n; បញ្ចប់; មុខងារ g(n: longint): longint; ចាប់ផ្តើម g:= 2*n + 3; បញ្ចប់; ចាប់ផ្តើម readln(k); ខ្ញុំ:= 1; ខណៈពេលដែល f (i) i:=i+1; writeln(i) ចប់។ |
ស៊ី |
|
# រួមបញ្ចូល វែង f (ឡុង ន) ( ត្រឡប់ n*n*n; } វែង g (វែង n) ( ត្រឡប់ 2*n + 3; } int main() { វែង k, ខ្ញុំ; scanf("%ld", &k); i = 1; ខណៈពេល (f(i) ខ្ញុំ++; printf("%ld",i); ត្រឡប់ 0; } |
ការពន្យល់។
កម្មវិធីនេះប្រៀបធៀបនិងនិងបន្ថែមទៅខ្ញុំឯកតារហូតដល់. ហើយបោះពុម្ពតម្លៃដំបូងនៃអថេរខ្ញុំនៅក្រោមនោះ។
ជាមួយនឹង k = 10 កម្មវិធីនឹងបោះពុម្ពលេខ 3 ។
ចូរយើងសរសេរអំពីវិសមភាព៖ដូច្នេះយើងទទួលបានតម្លៃតូចបំផុត។k = 3.
ចម្លើយ៖ ៣.
22. ដំណើរស្វែងរកអ្នកសំដែង May15 បំប្លែងលេខនៅលើអេក្រង់។ អ្នកសំដែងមានក្រុមពីរដែលត្រូវបានចាត់តាំងលេខ៖
1. បន្ថែម 1
2. គុណនឹង 2
ពាក្យបញ្ជាទីមួយបង្កើនចំនួននៅលើអេក្រង់ដោយ 1 ទីពីរគុណវាដោយ 2 ។ កម្មវិធីសម្រាប់អ្នកសំដែង May15 គឺជាលំដាប់នៃពាក្យបញ្ជា។ តើមានកម្មវិធីប៉ុន្មានដែលមានលេខដំបូង 2 លទ្ធផលគឺលេខ 29 ហើយគន្លងគណនាមានលេខ 14 ហើយមិនមានលេខ 25?
គន្លងនៃកម្មវិធីគឺជាលំដាប់នៃលទ្ធផល
ការប្រតិបត្តិពាក្យបញ្ជាកម្មវិធីទាំងអស់។ ឧទាហរណ៍ សម្រាប់កម្មវិធី 121 ដែលមានលេខដំបូង 7 គន្លងនឹងមានលេខ 8, 16, 17 ។
ការពន្យល់។
លើសពីនេះ ច្បាប់នៃការផ្លាស់ប្តូរ (commutative) មានសុពលភាព ដែលមានន័យថា លំដាប់នៃការណែនាំនៅក្នុងកម្មវិធីមិនសំខាន់សម្រាប់លទ្ធផលនោះទេ។
ក្រុមទាំងអស់កើនឡើង លេខដើមដូច្នេះចំនួនក្រុមមិនអាចលើសពី (30 − 21) = 9 ។ ចំនួនតិចតួចបំផុត។ពាក្យបញ្ជា - ៣ ។
ដូចនេះ វាអាចមាន 3, 4, 5, 6, 7, 8, ឬ 9 commands ដូច្នេះហើយ លំដាប់នៃ commands មិនសំខាន់ទេ ចំនួននៃ commands នីមួយៗត្រូវគ្នាទៅនឹងសំណុំនៃ command ដែលអាចត្រូវបានរៀបចំតាមលំដាប់ណាមួយ។ .
ចូរយើងពិចារណាសំណុំដែលអាចធ្វើបានទាំងអស់ ហើយគណនាចំនួនជម្រើសសម្រាប់ដាក់ពាក្យបញ្ជានៅក្នុងពួកគេ។ ឈុត ១៣៣ មាន ៣ ជម្រើសទីតាំង។ កំណត់ 1223 - 12 ការរៀបចំដែលអាចធ្វើបាន: នេះគឺជាចំនួននៃការអនុញ្ញាតជាមួយនឹងពាក្យដដែលៗ (1+2+1)!/(1! · 2! · 1!) ។ កំណត់ 12222 - 5 ជម្រើស។ កំណត់ 111222 - 20 ជម្រើសដែលអាចធ្វើបាន។ កំណត់ជម្រើស 11123 - 20 ។ កំណត់ 111113 - ជម្រើស 6 កំណត់ 1111122 - ជម្រើស 21 កំណត់ 11111112 - ជម្រើស 8 កំណត់ 111111111 - ជម្រើសមួយ។
សរុបមកយើងមានកម្មវិធី 3+12+5+20+20+6+21+8+1 = 96 កម្មវិធី។
ចម្លើយ៖ ៩៦។
ចម្លើយ៖ ៩៦។
ចម្លើយ៖ ១៣
23. ដំណើរស្វែងរកតើមានសំណុំតម្លៃប៊ូលីនខុសគ្នាប៉ុន្មានx1 , x2 , ... x9 យ1 យ2 , ... យ9 ដែលបំពេញលក្ខខណ្ឌខាងក្រោមទាំងអស់?
(¬ (x1 ≡ y1 )) ≡ (x2 ≡ y2 )
(¬ (x2 ≡ y2 )) ≡ (x3 ≡ y3 )
…
(¬ (x8 ≡ y8 )) ≡ (x9 ≡ y9 )
ចម្លើយមិនចាំបាច់រាយបញ្ជីតម្លៃអថេរទាំងអស់ទេ។x1 , x2 , ... x9 យ1 យ2 , ... យ9 នៅក្រោមនោះ។ ប្រព័ន្ធនេះ។សមភាព។ ជាចំលើយ អ្នកត្រូវចង្អុលបង្ហាញចំនួននៃឈុតបែបនេះ។
ការពន្យល់។
ពីសមីការចុងក្រោយ យើងរកឃើញថាមានបីតម្លៃដែលអាចធ្វើបាននៃ x8 និង y8: 01, 00, 11. ចូរយើងបង្កើតមែកធាងនៃជម្រើសសម្រាប់គូទីមួយ និងទីពីរនៃតម្លៃ។
ដូច្នេះយើងមាន 16 សំណុំនៃអថេរ។
មែកធាងជម្រើសសម្រាប់គូតម្លៃ 11:
យើងទទួលបាន 45 ជម្រើស។ ដូច្នេះប្រព័ន្ធនឹងមាន 45 + 16 = 61 សំណុំនៃដំណោះស្រាយផ្សេងៗគ្នា។
ចម្លើយ៖ ៦១.
ចម្លើយ៖ ១០២៤
24. ដំណើរស្វែងរកចំនួនគត់វិជ្ជមានដែលមិនលើសពី 10 កំពុងត្រូវបានដំណើរការ។9 . អ្នកត្រូវសរសេរកម្មវិធីដែលបង្ហាញផលបូកនៃខ្ទង់នៃលេខនេះតិចជាង 7 ។ ប្រសិនបើមិនមានខ្ទង់តិចជាង 7 នៅក្នុងលេខនោះ អ្នកត្រូវបង្ហាញលេខ 0 នៅលើអេក្រង់។ អ្នកសរសេរកម្មវិធីសរសេរកម្មវិធីមិនត្រឹមត្រូវ។ ខាងក្រោមកម្មវិធីនេះសម្រាប់ភាពងាយស្រួលរបស់អ្នកត្រូវបានផ្តល់ជាភាសាសរសេរកម្មវិធីចំនួនប្រាំ។
មូលដ្ឋាន | ពស់ថ្លាន់ |
DIM N, DIGIT, SUM AS LONG បញ្ចូល N ផលបូក = 0 ខណៈពេលដែល N > 0 DIGIT=NMOD ១០ ប្រសិនបើលេខ SUM = SUM + 1 បញ្ចប់ IF N=N\10 WEND បោះពុម្ពលេខ | N = int(បញ្ចូល()) ផលបូក = 0 ខណៈពេលដែល N > 0: ខ្ទង់ = N% 10 ប្រសិនបើលេខ ផលបូក = បូក + 1 N = N // ១០ បោះពុម្ព (លេខ) |
ភាសាក្បួនដោះស្រាយ | ប៉ាស្កាល់ |
alg ដើម ចំនួនគត់ N, ខ្ទង់, ផលបូក បញ្ចូល N ផលបូក៖= ០ nc ខណៈពេលដែល N > 0 digit:= mod(N,10) ប្រសិនបើលេខ sum:= sum + 1 ទាំងអស់។ N:=div(N,10) kts លទ្ធផលលេខ កុង | var N, digit, sum: longint; ចាប់ផ្តើម readln(N); ផលបូក៖= ០; ខណៈពេលដែល N> 0 ធ្វើ ចាប់ផ្តើម digit:=N mod 10; ប្រសិនបើលេខ sum:= sum + 1; N:= N div 10; បញ្ចប់; writeln(ខ្ទង់) ចប់។ |
ស៊ី |
|
# រួមបញ្ចូល int main() { int N, ខ្ទង់, ផលបូក; scanf("%d", &N); ផលបូក = 0; ខណៈពេលដែល (N> 0) { ខ្ទង់ = N% 10; ប្រសិនបើ (លេខ ផលបូក = បូក + 1; N = N / 10; } printf("%d",ខ្ទង់); ត្រឡប់ 0; } |
ធ្វើដូចខាងក្រោមតាមលំដាប់លំដោយ។
1. សរសេរអ្វីដែលកម្មវិធីនេះនឹងបង្ហាញនៅពេលអ្នកបញ្ចូលលេខ 456 ។
2. ផ្តល់ឧទាហរណ៍នៃការដូចនោះ។ លេខបីខ្ទង់នៅពេលចូលកម្មវិធីផ្តល់ចម្លើយត្រឹមត្រូវ។
3. ស្វែងរកកំហុសទាំងអស់នៅក្នុងកម្មវិធីនេះ (អាចមានមួយ ឬច្រើន)។ វាត្រូវបានគេដឹងថាកំហុសនីមួយៗប៉ះពាល់ដល់បន្ទាត់តែមួយហើយអាចត្រូវបានជួសជុលដោយមិនផ្លាស់ប្តូរបន្ទាត់ផ្សេងទៀត។ សម្រាប់កំហុសនីមួយៗ៖
1) សរសេរបន្ទាត់ដែលកំហុសត្រូវបានធ្វើឡើង;
2) បង្ហាញពីរបៀបជួសជុលកំហុស i.e. នាំមក ជម្រើសត្រឹមត្រូវ។បន្ទាត់។
វាគ្រប់គ្រាន់ហើយក្នុងការចង្អុលបង្ហាញពីកំហុស និងវិធីដើម្បីកែពួកវាសម្រាប់ភាសាសរសេរកម្មវិធីតែមួយ។ សូមចំណាំថា អ្នកត្រូវស្វែងរកកំហុសនៅក្នុងកម្មវិធីដែលមានស្រាប់ ហើយមិនត្រូវសរសេរដោយខ្លួនឯងទេ វាអាចប្រើក្បួនដោះស្រាយដំណោះស្រាយផ្សេង។ ការកែកំហុសគួរតែប៉ះពាល់តែបន្ទាត់ដែលមានកំហុសប៉ុណ្ណោះ។
ការពន្យល់។
ដំណោះស្រាយប្រើធាតុកម្មវិធី Pascal ។ អ្នកអាចប្រើកម្មវិធីជាភាសាណាមួយក្នុងចំណោមបួនភាសាផ្សេងទៀត។
1. កម្មវិធីនឹងបោះពុម្ពលេខ 4 ។
2. ឧទហរណ៍នៃលេខមួយ ពេលបញ្ចូលកម្មវិធីផ្តល់ចម្លើយត្រឹមត្រូវ៖ ៨៣៥។
ចំណាំសម្រាប់អ្នកពិនិត្យ។ កម្មវិធីមិនដំណើរការត្រឹមត្រូវទេ ដោយសារអថេរដែលបង្ហាញខុស និងការកើនឡើងខុសនៃចំនួន។ ដូច្នោះហើយ កម្មវិធីនឹងដំណើរការបានត្រឹមត្រូវ ប្រសិនបើខ្ទង់ខ្ពស់បំផុត (ឆ្វេងបំផុត) ក្នុងចំនួនស្មើនឹងផលបូកនៃខ្ទង់តិចជាង 7។
3. មានកំហុសពីរនៅក្នុងកម្មវិធី។
កំហុសដំបូង។ ការកើនឡើងចំនួនខុស។
បន្ទាត់កំហុស៖
sum:= sum + 1;
ការជួសជុលត្រឹមត្រូវ៖
sum:= បូក + ខ្ទង់;
កំហុសទីពីរ។ ការបង្ហាញមិនត្រឹមត្រូវនៃការឆ្លើយតបនៅលើអេក្រង់។
បន្ទាត់កំហុស៖
writeln(ខ្ទង់)
ការជួសជុលត្រឹមត្រូវ៖
writeln(ផលបូក)
25. ដំណើរស្វែងរកបានផ្តល់អារេចំនួនគត់នៃធាតុ 20 ។ ធាតុអារេអាចយកតម្លៃចំនួនគត់ពី -10000 ទៅ 10000 រួមបញ្ចូល។ ពិពណ៌នានៅលើ ភាសាធម្មជាតិឬនៅក្នុងភាសាសរសេរកម្មវិធីមួយ ក្បួនដោះស្រាយដែលអនុញ្ញាតឱ្យអ្នកស្វែងរក និងបង្ហាញចំនួនគូនៃធាតុអារេដែលយ៉ាងហោចណាស់លេខមួយអាចបែងចែកដោយ 3 ។ ក្នុងបញ្ហានេះ គូមានន័យថាធាតុអារេជាប់គ្នាពីរ។ ឧទាហរណ៍សម្រាប់អារេនៃធាតុប្រាំ: 6; ២; ៩; -៣; ៦ - ចម្លើយ៖ ៤.
ទិន្នន័យដំបូងត្រូវបានប្រកាសដូចដែលបានបង្ហាញខាងក្រោមក្នុងឧទាហរណ៍សម្រាប់ភាសាសរសេរកម្មវិធី និងភាសាធម្មជាតិមួយចំនួន។ វាត្រូវបានហាមឃាត់មិនឱ្យប្រើអថេរដែលមិនត្រូវបានពិពណ៌នាខាងក្រោម ប៉ុន្តែវាត្រូវបានអនុញ្ញាតឱ្យមិនប្រើអថេរមួយចំនួនដែលបានពិពណ៌នា។
មូលដ្ឋាន | ពស់ថ្លាន់ |
CONST N ជាចំនួនគត់ = 20 ឌីម A (1 ដល់ N) ជាចំនួនគត់ DIM ខ្ញុំជាចំនួនគត់, J ជាចំនួនគត់, K ជាចំនួនគត់ សម្រាប់ខ្ញុំ = 1 ដល់ N បញ្ចូល A(I) បន្ទាប់ខ្ញុំ ... ចប់ | # អនុញ្ញាតផងដែរ។ #ប្រើពីរ # អថេរចំនួនគត់ j និង k ក = n=20 សម្រាប់ i ក្នុងជួរ (0, n): a.append(int(បញ្ចូល())) ... |
ភាសាក្បួនដោះស្រាយ | ប៉ាស្កាល់ |
alg ដើម ចំនួនគត់ N = 20 celtab ក ចំនួនគត់ i, j, k nc សម្រាប់ខ្ញុំពី 1 ទៅ N បញ្ចូល a[i] kts ... កុង | const N = 20; var a: អារេនៃចំនួនគត់; i,j,k: ចំនួនគត់; ចាប់ផ្តើម សម្រាប់ i: = 1 ទៅ N ធ្វើ readln(a[i]); ... ចប់។ |
ស៊ី | ភាសាធម្មជាតិ |
# រួមបញ្ចូល #កំណត់ N 20 int main()( int a[N]; int ខ្ញុំ, j, k; សម្រាប់ (i = 0; i scanf("%d", &a[i]); ... ត្រឡប់ 0; } | យើងប្រកាសអារេ A នៃធាតុ 20 ។ យើងប្រកាសអថេរចំនួនគត់ I, J, K ។ នៅក្នុងរង្វិលជុំពី 1 ដល់ 20 យើងបញ្ចូលធាតុនៃអារេ A ពីលេខ 1 ដល់ទី 20 ។ … |
ជាចម្លើយ អ្នកត្រូវផ្តល់បំណែកកម្មវិធី (ឬការពិពណ៌នាអំពីក្បួនដោះស្រាយជាភាសាធម្មជាតិ) ដែលគួរតែជំនួសឱ្យពងក្រពើ។ អ្នកក៏អាចសរសេរដំណោះស្រាយជាភាសាសរសេរកម្មវិធីផ្សេងទៀត (បញ្ជាក់ឈ្មោះ និងកំណែនៃភាសាសរសេរកម្មវិធីដែលបានប្រើ ឧទាហរណ៍ Free Pascal 2.6) ឬជាតារាងលំហូរ។ ក្នុងករណីនេះ អ្នកត្រូវតែប្រើទិន្នន័យដំបូង និងអថេរដូចគ្នាដែលត្រូវបានស្នើឡើងក្នុងលក្ខខណ្ឌ (ឧទាហរណ៍ ជាគំរូដែលសរសេរជាភាសាធម្មជាតិ)។
k:=k+1
ទាំងអស់។
kts
ទិន្នផល k
ប៉ាស្កាល់
k:= 0;
សម្រាប់ i:= 1 ទៅ N-1 ធ្វើ
ប្រសិនបើ (a[i] mod 3=0) ឬ (a mod 3=0) បន្ទាប់មក
inc(k);
writeln(k);
ស៊ី
k = 0;
សម្រាប់ (i = 0; i
ប្រសិនបើ (a[i]%3 == 0 || a%3 == 0)
k++;
printf("%d", k);
ភាសាធម្មជាតិ
យើងសរសេរតម្លៃដំបូងស្មើនឹង 0 ទៅអថេរ K. ក្នុងរង្វិលជុំពីធាតុទីមួយដល់ចំនុចចុងក្រោយ យើងរកឃើញនៅសល់ពីការបែងចែកធាតុបច្ចុប្បន្ន និងបន្ទាប់នៃអារេដោយ 3។ ប្រសិនបើទីមួយ ឬទីពីរនៃលទ្ធផល នៅសល់គឺ 0 បង្កើនអថេរ K ដោយមួយ។ បន្ទាប់ពីរង្វិលជុំត្រូវបានបញ្ចប់យើងបង្ហាញតម្លៃនៃអថេរ K
26. ដំណើរស្វែងរកអ្នកលេងពីរនាក់គឺ Petya និង Vanya លេងហ្គេមខាងក្រោម។ មានដុំថ្មពីរនៅពីមុខអ្នកលេង។ អ្នកលេងផ្លាស់ទីជាវេន Petya ធ្វើចលនាដំបូង។ ក្នុងមួយចលនា អ្នកលេងអាចបន្ថែមថ្មមួយដុំទៅគំនរមួយ (តាមជម្រើសរបស់គាត់) ឬទ្វេដងនៃចំនួនថ្មនៅក្នុងគំនរ។ ជាឧទាហរណ៍ សូមអោយមានថ្ម 10 ដុំក្នុងគំនរមួយ និង 7 ថ្មនៅក្នុងមួយទៀត។ ទីតាំងបែបនេះនៅក្នុងហ្គេមនឹងត្រូវបានតំណាងដោយ (10, 7) ។ បន្ទាប់មកនៅក្នុងចលនាមួយ អ្នកអាចទទួលបានមុខតំណែងណាមួយក្នុងចំណោមមុខតំណែងទាំងបួន៖ (11, 7), (20, 7), (10, 8), (10, 14)។ ដើម្បីធ្វើចលនា អ្នកលេងម្នាក់ៗមានថ្មមិនកំណត់។
ហ្គេមនេះបញ្ចប់នៅពេលចំនួនថ្មសរុបនៅក្នុងគំនរក្លាយជាយ៉ាងហោចណាស់ 73។ អ្នកឈ្នះគឺជាអ្នកលេងដែលបានធ្វើចលនាចុងក្រោយ ពោលគឺឧ។ ទីមួយដើម្បីទទួលបានទីតាំងបែបនេះដែលនឹងមានដុំថ្មសរុបចំនួន 73 ឬច្រើនជាងនេះនៅក្នុងគំនរ។
យើងនឹងនិយាយថា អ្នកលេងមានយុទ្ធសាស្ត្រឈ្នះប្រសិនបើគាត់អាចឈ្នះសម្រាប់ចលនាណាមួយរបស់គូប្រកួត។ ដើម្បីពិពណ៌នាអំពីយុទ្ធសាស្ត្ររបស់អ្នកលេងមានន័យថា ពិពណ៌នាអំពីចលនាដែលគាត់ត្រូវធ្វើក្នុងស្ថានភាពណាមួយដែលគាត់អាចជួបប្រទះនៅពេលណា ល្បែងផ្សេងគ្នាសត្រូវ។ ជាឧទាហរណ៍ ជាមួយនឹងមុខតំណែងដំបូង (6, 34), (7, 33), (9, 32), Petya មានយុទ្ធសាស្ត្រឈ្នះ។ ដើម្បីឈ្នះគាត់គ្រាន់តែត្រូវការទ្វេដងនៃចំនួនថ្មនៅក្នុងគំនរទីពីរ។
លំហាត់ 1 ។សម្រាប់មុខតំណែងដំបូងនីមួយៗ (6, 33), (8, 32) បង្ហាញពីអ្នកលេងណាដែលមានយុទ្ធសាស្ត្រឈ្នះ។ ក្នុងករណីនីមួយៗ ពិពណ៌នាអំពីយុទ្ធសាស្ត្រឈ្នះៗ។ ពន្យល់ពីមូលហេតុដែលយុទ្ធសាស្រ្តនេះនាំទៅរកការឈ្នះ ហើយចង្អុលបង្ហាញថាមួយណា ចំនួនធំបំផុតចលនាអាចត្រូវបានទាមទារសម្រាប់អ្នកឈ្នះដើម្បីឈ្នះជាមួយនឹងយុទ្ធសាស្រ្តនេះ។
កិច្ចការទី 2 ។សម្រាប់មុខតំណែងដំបូងនីមួយៗ (6, 32), (7, 32), (8, 31) បង្ហាញថាអ្នកលេងណាមានយុទ្ធសាស្ត្រឈ្នះ។ ក្នុងករណីនីមួយៗ ពិពណ៌នាអំពីយុទ្ធសាស្ត្រឈ្នះៗ។ ពន្យល់ពីមូលហេតុដែលយុទ្ធសាស្រ្តនេះនាំទៅរកការឈ្នះ ហើយបង្ហាញពីចំនួនអតិបរមានៃចលនាដែលអ្នកឈ្នះអាចធ្វើដើម្បីឈ្នះជាមួយនឹងយុទ្ធសាស្រ្តនេះ។
កិច្ចការទី 3 ។សម្រាប់ ទីតាំងចាប់ផ្តើម(7, 31) បង្ហាញថាអ្នកលេងណាមានយុទ្ធសាស្ត្រឈ្នះ។ ពិពណ៌នាអំពីយុទ្ធសាស្ត្រឈ្នះៗ; ពន្យល់ពីមូលហេតុដែលយុទ្ធសាស្រ្តនេះនាំទៅរកការឈ្នះ ហើយបង្ហាញពីចំនួនអតិបរមានៃចលនាដែលអ្នកឈ្នះអាចធ្វើដើម្បីឈ្នះជាមួយនឹងយុទ្ធសាស្រ្តនេះ។ បង្កើតមែកធាងនៃហ្គេមទាំងអស់ដែលអាចធ្វើទៅបានជាមួយនឹងយុទ្ធសាស្ត្រឈ្នះដែលអ្នកបានបញ្ជាក់។ បង្ហាញដើមឈើក្នុងទម្រង់ជារូបភាព ឬតារាង។
(7,31)
សរុប ៣៨
(7,31+1)=(7,32)
សរុប ៣៩
(7+1,32)=(8,32)
សរុប ៤០
(8+1,32)=(9,32)
សរុប ៤១
(9,32*2)=(9,64)
សរុប ៧៣
(8,32+1)=(8,33)
សរុប ៤១
(8,33*2)=(8,66)
សរុប ៧៤
(8*2,32)=(16,32)
សរុប ៤៨
(16,32*2)=(16,64)
សរុប ៨០
(8,32*2)=(8,64)
សរុប ៧២
(8,64*2)=(8,128)
សរុប ១៣៦
(7+1,31)=(8,31)
សរុប ៣៩
(8,31+1)=(8,32)
សរុប ៤០
(8+1,32)=(9,32)
សរុប ៤១
(9,32*2)=(9,64)
សរុប ៧៣
(8,32+1)=(8,33)
សរុប ៤១
(8,33*2)=(8,66)
សរុប ៧៤
(8*2,32)=(16,32)
សរុប ៤៨
(16,32*2)=(16,64)
សរុប ៨០
(8,32*2)=(8,64)
សរុប ៧២
(8,64*2)=(8,128)
សរុប ១៣៦
(7*2,31)=(14,31)
សរុប ៤៥
(14,31*2)=(14,62)
សរុប ៧៦
(7,31*2)=(7,62)
សរុប ៦៩
(7,62*2)=(7,124)
សរុប ១៣១
លំហាត់ 1 ។នៅក្នុងមុខតំណែងដំបូង (6, 33), (8, 32) Vanya មានយុទ្ធសាស្ត្រឈ្នះ។ ជាមួយនឹងទីតាំងដំបូង (6, 33) បន្ទាប់ពីការផ្លាស់ប្តូរដំបូងរបស់ Petya មុខតំណែងមួយក្នុងចំណោមមុខតំណែងទាំងបួនខាងក្រោមអាចទទួលបាន: (7, 33), (12, 33), (6, 34), (6, 66) ។ ទីតាំងនីមួយៗមានថ្មតិចជាង 73 ដុំ។ ជាងនេះទៅទៀត ពីមុខតំណែងណាមួយ វ៉ាន់យ៉ាអាចទទួលបានទីតាំងដែលមានថ្មយ៉ាងហោចណាស់ 73 ដោយបង្កើនចំនួនថ្មទ្វេដងនៅក្នុងគំនរទីពីរ។ សម្រាប់មុខតំណែង (8, 32) បន្ទាប់ពីការផ្លាស់ប្តូរលើកដំបូងរបស់ Petya មុខតំណែងមួយក្នុងចំណោមមុខតំណែងទាំងបួនខាងក្រោមអាចទទួលបាន៖ (9, 32), (16, 32), (8, 33), (8, 64) ។ ទីតាំងនីមួយៗមានថ្មតិចជាង 73 ដុំ។ ជាងនេះទៅទៀត ពីមុខតំណែងណាមួយ វ៉ាន់យ៉ាអាចទទួលបានទីតាំងដែលមានថ្មយ៉ាងហោចណាស់ 73 ដោយបង្កើនចំនួនថ្មទ្វេដងនៅក្នុងគំនរទីពីរ។ ដូច្នេះ Vanya សម្រាប់ការផ្លាស់ប្តូរណាមួយរបស់ Petya
ឈ្នះលើចលនាដំបូងរបស់គាត់។
កិច្ចការទី 2 ។នៅក្នុងមុខតំណែងដំបូង (6, 32), (7, 32) និង (8, 31) Petya មានយុទ្ធសាស្ត្រឈ្នះ។ ជាមួយនឹងមុខតំណែងដំបូង (6, 32) ដំបូងគាត់ត្រូវតែផ្លាស់ទីដើម្បីទទួលបានតំណែង (6, 33) ពីមុខតំណែងដំបូង (7, 32) និង (8, 31) ។ Petya បន្ទាប់ពីការផ្លាស់ប្តូរលើកដំបូងគួរតែទទួលបានតំណែង (8, 32) ។ មុខតំណែង (6, 33) និង (8, 32) ត្រូវបានពិចារណានៅពេលវិភាគកិច្ចការ 1. នៅក្នុងមុខតំណែងទាំងនេះ អ្នកលេងដែលនឹងផ្លាស់ទីទីពីរ (ឥឡូវនេះគឺ Petya) មានយុទ្ធសាស្ត្រឈ្នះ។ យុទ្ធសាស្ត្រនេះត្រូវបានពិពណ៌នានៅក្នុងការវិភាគនៃកិច្ចការទី 1។ ដូច្នេះនៅក្នុងហ្គេមណាមួយដែល Vanya លេង Petya ឈ្នះជាមួយនឹងចលនាទីពីររបស់គាត់។
កិច្ចការទី 3 ។នៅក្នុងទីតាំងដំបូង (7, 31) វ៉ាន់យ៉ាមានយុទ្ធសាស្ត្រឈ្នះ។ បន្ទាប់ពីការផ្លាស់ប្តូរលើកដំបូងរបស់ Petya មុខតំណែងមួយក្នុងចំណោមមុខតំណែងទាំងបួនអាចលេចឡើង: (8, 31), (7, 32), (14, 31) និង (7, 62) ។ នៅក្នុងមុខតំណែង (14, 31) និង (7, 62) Vanya អាចឈ្នះក្នុងមួយចលនាដោយបង្កើនចំនួនថ្មទ្វេដងនៅក្នុងគំនរទីពីរ។ មុខតំណែង (8, 31) និង (7, 32) ត្រូវបានពិចារណាក្នុងការវិភាគកិច្ចការទី 2 ។ នៅក្នុងមុខតំណែងទាំងនេះ អ្នកលេងដែលត្រូវតែធ្វើចលនា (ឥឡូវនេះវាគឺជា Vanya) មានយុទ្ធសាស្ត្រឈ្នះ។ យុទ្ធសាស្ត្រនេះត្រូវបានពិពណ៌នានៅក្នុងការវិភាគនៃកិច្ចការទី 2។ ដូច្នេះ អាស្រ័យលើហ្គេមរបស់ Petya Vanya ឈ្នះលើចលនាទីមួយ ឬទីពីរ។
27. ដំណើរស្វែងរកនៅក្នុងមន្ទីរពិសោធន៍រាងកាយ ការពិសោធន៍រយៈពេលវែងកំពុងត្រូវបានធ្វើឡើងដើម្បីសិក្សា វាលទំនាញផែនដី។ រាល់នាទីចំនួនគត់វិជ្ជមានត្រូវបានបញ្ជូនទៅមន្ទីរពិសោធន៍តាមរយៈបណ្តាញទំនាក់ទំនង - ការអានបច្ចុប្បន្ននៃឧបករណ៍ Sigma 2015 ។ ចំនួននៃលេខបញ្ជូននៅក្នុងស៊េរីត្រូវបានគេស្គាល់ហើយមិនលើសពី 10,000 ទេ។ លេខទាំងអស់មិនលើសពី 1000 ។ ពេលវេលាដែលការបញ្ជូនកើតឡើងអាចត្រូវបានគេមិនយកចិត្តទុកដាក់។
វាចាំបាច់ក្នុងការគណនា "តម្លៃបេតា" នៃស៊េរីនៃការអានឧបករណ៍ - អប្បបរមាសូម្បីតែផលិតផលនៃការអានពីរនៅចន្លោះពេលនៃការបញ្ជូនដែលយ៉ាងហោចណាស់ 6 នាទីបានកន្លងផុតទៅ។ ប្រសិនបើផលិតផលបែបនេះមិនអាចទទួលបាន ចម្លើយត្រូវបានចាត់ទុកថាស្មើនឹង -1។
អ្នកត្រូវបានផ្តល់ឱ្យនូវកិច្ចការពីរដែលទាក់ទងនឹងកិច្ចការនេះ៖ កិច្ចការ A និងកិច្ចការ B. អ្នកអាចដោះស្រាយកិច្ចការទាំងពីរ ឬកិច្ចការមួយតាមជម្រើសរបស់អ្នក។ ថ្នាក់ចុងក្រោយត្រូវបានកំណត់ជាអតិបរមានៃសញ្ញាសម្រាប់កិច្ចការ A និង B។ ប្រសិនបើដំណោះស្រាយនៃកិច្ចការណាមួយមិនត្រូវបានបង្ហាញទេនោះ វាត្រូវបានចាត់ទុកថាជាសញ្ញាសម្គាល់សម្រាប់កិច្ចការនេះគឺ 0 ពិន្ទុ។ កិច្ចការ B គឺជាកំណែស្មុគស្មាញនៃកិច្ចការ A វាមាន តម្រូវការបន្ថែមទៅកម្មវិធី។
ក. សរសេរកម្មវិធីជាភាសាសរសេរកម្មវិធីណាមួយដើម្បីដោះស្រាយបញ្ហា ដែលទិន្នន័យបញ្ចូលនឹងត្រូវបានរក្សាទុកក្នុងអារេមួយ បន្ទាប់ពីនោះគូដែលអាចធ្វើបានទាំងអស់នឹងត្រូវបានពិនិត្យ។ បញ្ជាក់កំណែភាសាសរសេរកម្មវិធី មុនពេលកម្មវិធី។
DO បង្ហាញថាកម្មវិធីគឺជាដំណោះស្រាយចំពោះ TASK A។
ពិន្ទុអតិបរមាសម្រាប់ការបំពេញកិច្ចការ A គឺ 2 ពិន្ទុ។
ខ.សរសេរកម្មវិធីដើម្បីដោះស្រាយបញ្ហាដែលមានប្រសិទ្ធភាពទាំងពេលវេលា និងការចងចាំ (ឬយ៉ាងហោចណាស់លក្ខណៈមួយក្នុងចំណោមលក្ខណៈទាំងនេះ)។
កម្មវិធីមួយត្រូវបានចាត់ទុកថាមានប្រសិទ្ធភាពក្នុងលក្ខខណ្ឌនៃពេលវេលា ប្រសិនបើពេលវេលាដំណើរការ
កម្មវិធីគឺសមាមាត្រទៅនឹងចំនួននៃការអានឧបករណ៍ដែលទទួលបាន N, i.e. នៅពេលដែល N កើនឡើងដោយ k ដង ពេលវេលាដំណើរការនៃកម្មវិធីគួរតែកើនឡើងមិនលើសពី k ដង។
កម្មវិធីមួយត្រូវបានចាត់ទុកថាជាអង្គចងចាំមានប្រសិទ្ធភាព ប្រសិនបើទំហំនៃអង្គចងចាំដែលប្រើក្នុងកម្មវិធីសម្រាប់រក្សាទុកទិន្នន័យមិនអាស្រ័យលើលេខ N និងមិនលើសពី 1 គីឡូបៃ។
មុនពេលកម្មវិធី បង្ហាញកំណែនៃភាសាសរសេរកម្មវិធី ហើយពិពណ៌នាដោយសង្ខេបអំពីក្បួនដោះស្រាយដែលបានប្រើ។
DO បង្ហាញថាកម្មវិធីគឺជាដំណោះស្រាយចំពោះ TASK B។
ពិន្ទុអតិបរមាសម្រាប់កម្មវិធីត្រឹមត្រូវដែលមានប្រសិទ្ធភាពក្នុងពេលវេលា និងការចងចាំគឺ 4 ពិន្ទុ។
ពិន្ទុអតិបរមាសម្រាប់កម្មវិធីត្រឹមត្រូវដែលមានប្រសិទ្ធភាពពេលវេលា ប៉ុន្តែការចងចាំមិនមានប្រសិទ្ធភាពគឺ 3 ពិន្ទុ។ ការរំលឹក! កុំភ្លេចចង្អុលបង្ហាញថាកម្មវិធីនីមួយៗដែលអ្នកបានដាក់ស្នើជាកម្មសិទ្ធមួយណា។
ទិន្នន័យបញ្ចូលត្រូវបានបង្ហាញដូចខាងក្រោម។ ជួរទីមួយមានលេខ N - ចំនួនសរុបនៃការអានឧបករណ៍។ វាត្រូវបានធានាថា N > 6. បន្ទាត់ N នីមួយៗមានចំនួនគត់វិជ្ជមានមួយ - ការអានឧបករណ៍បន្ទាប់។
ឧទាហរណ៍បញ្ចូល៖
11
12
45
5
3
17
23
21
20
19
18
17
កម្មវិធីគួរតែបង្ហាញលេខមួយ - ផលិតផលដែលបានពិពណ៌នាក្នុងលក្ខខណ្ឌ ឬ -1 ប្រសិនបើផលិតផលបែបនេះមិនអាចទទួលបាន។
លទ្ធផលឧទាហរណ៍សម្រាប់ការបញ្ចូលឧទាហរណ៍ខាងលើ៖
54
ការពន្យល់។
កិច្ចការ B (ដំណោះស្រាយសម្រាប់កិច្ចការ A ត្រូវបានផ្តល់ឱ្យខាងក្រោម សូមមើលកម្មវិធីទី 4) ។ ដើម្បីឱ្យផលិតផលមានភាពស្មើគ្នា យ៉ាងហោចណាស់កត្តាមួយត្រូវតែស្មើគ្នា ដូច្នេះនៅពេលស្វែងរក ការងារសមរម្យសូម្បីតែការអានឧបករណ៍អាចត្រូវបានចាត់ទុកថាជាគូជាមួយអ្នកដទៃ និងការអានសេស - តែជាមួយសូម្បីតែមួយ។
ចំពោះការចង្អុលបង្ហាញនីមួយៗដែលមានលេខ k ចាប់ផ្តើមពី k = 7 យើងចាត់ទុកថាគូទាំងអស់អាចទទួលយកបានក្រោមលក្ខខណ្ឌនៃបញ្ហាដែលសូចនាករនេះត្រូវបានទទួលទីពីរ។ ផលិតផលអប្បរមានៃគូទាំងនេះនឹងត្រូវបានទទួល ប្រសិនបើដំបូងក្នុងគូត្រូវបានយក សូចនាករសមរម្យអប្បបរមាក្នុងចំណោមទាំងអស់ដែលទទួលបានពីការចាប់ផ្តើមទទួលភ្ញៀវ និងរហូតដល់ការចង្អុលបង្ហាញដែលមានលេខ k - 6។ ប្រសិនបើសូចនាករបន្ទាប់គឺសូម្បីតែ, អប្បរមាក្នុងចំណោមអ្នកមុនៗអាចជាណាមួយ ប្រសិនបើសេស - មានតែគូប៉ុណ្ណោះ។
ដើម្បីទទួលបានដំណោះស្រាយដែលមានប្រសិទ្ធភាពពេលវេលា នៅពេលអ្នកបញ្ចូលទិន្នន័យ អ្នកត្រូវចងចាំអប្បបរមាដាច់ខាត និងអប្បបរមាសូម្បីតែការអានសម្រាប់ពេលនីមួយៗ គុណការអានដែលទទួលបានថ្មីៗនីមួយៗដោយអប្បបរមាដែលត្រូវគ្នាដែលមាន 6 ធាតុមុន ហើយជ្រើសរើសអប្បបរមា នៃផលិតផលបែបនេះទាំងអស់។
ដោយសារការអានទាបបច្ចុប្បន្ននីមួយៗត្រូវបានប្រើប្រាស់បន្ទាប់ពីធាតុ 6 ទៀតត្រូវបានបញ្ចូល ហើយក្លាយជាមិនចាំបាច់បន្ទាប់ពីនោះ វាគ្រប់គ្រាន់ក្នុងការរក្សាទុកត្រឹមតែកម្រិតទាប 6 ចុងក្រោយប៉ុណ្ណោះ។ ដើម្បីធ្វើដូចនេះអ្នកអាចប្រើអារេនៃ 6 ធាតុហើយឆ្លងកាត់វានៅពេលអ្នកបញ្ចូលទិន្នន័យ។ ទំហំនៃអារេនេះមិនអាស្រ័យលើទេ។ សរុបការអានដែលបានបញ្ចូល ដូច្នេះដំណោះស្រាយបែបនេះនឹងមានប្រសិទ្ធភាពមិនត្រឹមតែក្នុងលក្ខខណ្ឌនៃពេលវេលាប៉ុណ្ណោះទេ ប៉ុន្តែថែមទាំងទាក់ទងនឹងការចងចាំផងដែរ។ ដើម្បីរក្សាទុកដាច់ខាត និងសូម្បីតែអប្បបរមា អ្នកត្រូវប្រើអារេពីរបែបនេះ។ ខាងក្រោមនេះជាឧទាហរណ៍នៃកម្មវិធីបែបនេះដែលបានសរសេរជាភាសាក្បួនដោះស្រាយ។
ឧទាហរណ៍ 1. ឧទាហរណ៍នៃកម្មវិធីត្រឹមត្រូវក្នុងភាសា algorithmic ។ កម្មវិធីនេះមានប្រសិទ្ធភាពទាំងពេលវេលា និងការចងចាំ។
alg
ដើម
ចំនួនគត់ s = 6 | ចម្ងាយដែលត្រូវការរវាងការអាន
ចំនួនគត់ amax = 1001 | លើសពីការអានអតិបរមាដែលអាចធ្វើបាន
ចំនួនគត់ N
បញ្ចូល N
ចំនួនគត់ a | ការអានឧបករណ៍ផ្សេងទៀត។
celtab mini | កម្រិតទាបបច្ចុប្បន្ននៃធាតុចុងក្រោយ
celtab minichet | សូម្បីតែអប្បបរមានៃធាតុចុងក្រោយ
គោលដៅ i
| បញ្ចូលការអានដំបូង ជួសជុលអប្បបរមា
ម៉ាទាំងមូល; ma:= amax | ការអានអប្បបរមា
ប្រញាប់ប្រញាល់ទាំងមូល; ប្រញាប់៖= amax | ការអានអប្បបរមា
nc សម្រាប់ខ្ញុំពី 1 ទៅ s
បញ្ចូល ក
ma:= imin(ma, a)
មីនី := ម៉ា
minichet := ប្រញាប់
kts
ចំនួនគត់ mp = amax* amax | តម្លៃអប្បបរមាធ្វើការ
ទំ
nc សម្រាប់ i ពី s + 1 ដល់ N
បញ្ចូល ក
ប្រសិនបើ mod(a,2)=0
បន្ទាប់មក n:= a * mini
បើមិនដូច្នោះទេប្រសិនបើវាប្រញាប់
បន្ទាប់មក n:= a * minieven
បើមិនដូច្នេះទេ n:= amax* amax;
ទាំងអស់។
ទាំងអស់។
mp:= imin(mp, n)
ma:= imin(ma, a)
ប្រសិនបើ mod (a,2) = 0 បន្ទាប់មក flicker: = imin (flash, a) ទាំងអស់។
មីនី := ម៉ា
minichet := ប្រញាប់
kts
ប្រសិនបើ mp = amax * amax បន្ទាប់មក mp:=-1 ទាំងអស់។
ទិន្នផល mp
កុង
ការអនុវត្តផ្សេងទៀតក៏អាចធ្វើទៅបានដែរ។ ឧទាហរណ៍ ជំនួសឱ្យការបំពេញអារេជារង្វង់ អ្នកអាចផ្លាស់ប្តូរធាតុរបស់វារាល់ពេល។ នៅក្នុងឧទាហរណ៍ខាងក្រោម វាមិនមែនជាកម្រិតទាបដែលត្រូវបានរក្សាទុក និងផ្លាស់ប្តូរនោះទេ ប៉ុន្តែ តម្លៃដំបូង. នេះតម្រូវឱ្យមានអង្គចងចាំតិចជាងបន្តិច (អារេមួយគឺគ្រប់គ្រាន់ជំនួសឱ្យពីរ) ប៉ុន្តែដំណោះស្រាយជាមួយការផ្លាស់ប្តូរគឺមានប្រសិទ្ធភាពតិចជាងការបំពេញវដ្ត។ ទោះជាយ៉ាងណាក៏ដោយពេលវេលាដំណើរការនៅតែសមាមាត្រទៅនឹង N ដូច្នេះពិន្ទុអតិបរមាសម្រាប់ដំណោះស្រាយនេះគឺ 4 ពិន្ទុផងដែរ។
កម្មវិធី 2. ឧទាហរណ៍នៃកម្មវិធី Pascal ត្រឹមត្រូវ។
កម្មវិធីនេះប្រើការផ្លាស់ប្តូរ ប៉ុន្តែពេលវេលា និងការចងចាំមានប្រសិទ្ធភាព
var
N: ចំនួនគត់
a: អារេនៃចំនួនគត់; (ការផ្ទុកការអានឧបករណ៍)
a_: ចំនួនគត់; (បញ្ចូលការចង្អុលបង្ហាញបន្ទាប់)
p: ចំនួនគត់;
i, j: ចំនួនគត់;
ចាប់ផ្តើម
readln(N);
(បញ្ចូលលេខដំបូង)
សម្រាប់ i:=1 ទៅ s ធ្វើ readln(a[i]);
(បញ្ចូលតម្លៃផ្សេងទៀត ស្វែងរកផលិតផលអប្បបរមា)
ម៉ា:= amax; ខ្ញុំ៖= amax;
mp:=amax* amax;
សម្រាប់ i:= s + 1 ទៅ N ចាប់ផ្តើម
readln(a_);
ប្រសិនបើ ក
ប្រសិនបើ (a mod 2 = 0) និង (a
ប្រសិនបើ a_ mod 2 = 0 បន្ទាប់មក p:= a_ * ma
ផ្សេងទៀតប្រសិនបើខ្ញុំ
ផ្សេងទៀត p:= amax* amax;
ប្រសិនបើ (ទំ
(ផ្លាស់ទីធាតុនៃអារេជំនួយទៅខាងឆ្វេង)
សម្រាប់ j:= 1 ទៅ s - 1 ធ្វើ
a[j]:= ក;
a[s] := a_
បញ្ចប់;
ប្រសិនបើ mp = amax * amax បន្ទាប់មក mp:=-1;
writeln(mp)
ចប់។
ប្រសិនបើជំនួសឱ្យអារេតូចមួយនៃទំហំថេរ (វដ្ត ឬផ្លាស់ប្តូរ) ទិន្នន័យដើមទាំងអស់ (ឬអប្បបរមាបច្ចុប្បន្នទាំងអស់) ត្រូវបានរក្សាទុក កម្មវិធីនៅតែមានប្រសិទ្ធភាពពេលវេលា ប៉ុន្តែក្លាយជាអង្គចងចាំគ្មានប្រសិទ្ធភាព ដោយសារអង្គចងចាំដែលត្រូវការកើនឡើងតាមសមាមាត្រទៅនឹង N. ខាងក្រោមនេះជាឧទាហរណ៍ នៃកម្មវិធីបែបនេះជាភាសា Pascal ។ កម្មវិធីស្រដៀងគ្នា (និងខ្លឹមសារស្រដៀងគ្នា) ត្រូវបានវាយតម្លៃមិនខ្ពស់ជាង 3 ពិន្ទុទេ។
កម្មវិធី 3. ឧទាហរណ៍នៃកម្មវិធី Pascal ត្រឹមត្រូវ។ កម្មវិធីមានប្រសិទ្ធភាពពេលវេលា ប៉ុន្តែការចងចាំមិនមានប្រសិទ្ធភាព
const s = 6; (ចម្ងាយដែលត្រូវការរវាងការអាន)
amax = 1001; (ធំជាងការអានអតិបរមាដែលអាចធ្វើបាន)
var
N, p, i: ចំនួនគត់;
ម៉ា : ចំនួនគត់; (ចំនួនអប្បបរមាដោយគ្មានលេខចុងក្រោយ)
ខ្ញុំ៖ ចំនួនគត់; (អប្បបរមា ចំនួនគូដោយគ្មាន s ចុងក្រោយ)
mp: ចំនួនគត់; (តម្លៃផលិតផលអប្បបរមា)
ចាប់ផ្តើម
readln(N);
(បញ្ចូលការអានឧបករណ៍ទាំងអស់)
សម្រាប់ i:=1 ទៅ N ធ្វើ readln(a[i]);
ម៉ា:= amax;
ខ្ញុំ៖= amax;
mp:= amax* amax;
សម្រាប់ i:= s + 1 ទៅ N ធ្វើ
ចាប់ផ្តើម
ប្រសិនបើ ក
ប្រសិនបើ (a mod 2 = 0) និង (a
ខ្ញុំ៖= a;
ប្រសិនបើ a[i] mod 2 = 0 បន្ទាប់មក p:= a[i] * ma
ផ្សេងទៀតប្រសិនបើខ្ញុំ
ផ្សេងទៀត p:= amax * amax;
ប្រសិនបើ (ទំ
បញ្ចប់;
ប្រសិនបើ mp = amax * amax បន្ទាប់មក mp:= -1;
writeln(mp)
ចប់។
ដំណោះស្រាយការរាប់លេខក៏អាចធ្វើទៅបានដែរ ដែលផលិតផលនៃគូដែលអាចធ្វើបានទាំងអស់ត្រូវបានរកឃើញ ហើយអប្បបរមាត្រូវបានជ្រើសរើសពីពួកគេ។ ខាងក្រោម (សូមមើលកម្មវិធីទី ៤) គឺជាឧទាហរណ៍មួយ។ ការសម្រេចចិត្តបែបនេះ. ដំណោះស្រាយនេះ (និងស្រដៀងគ្នា) មិនមានប្រសិទ្ធភាពទាំងពេលវេលា និងការចងចាំទេ។ វាគឺជាដំណោះស្រាយចំពោះកិច្ចការ A ប៉ុន្តែមិនមែនជាដំណោះស្រាយចំពោះកិច្ចការ B។ ពិន្ទុសម្រាប់ដំណោះស្រាយបែបនេះគឺ 2 ពិន្ទុ។
កម្មវិធី 4. ឧទាហរណ៍នៃកម្មវិធី Pascal ត្រឹមត្រូវ។ កម្មវិធីនេះមិនមានប្រសិទ្ធភាពទាំងពេលវេលា និងការចងចាំទេ។
const s = 6; (ចម្ងាយដែលត្រូវការរវាងការអាន)
var
N: ចំនួនគត់
a: អារេនៃចំនួនគត់; (ការអានឧបករណ៍ទាំងអស់)
mp: ចំនួនគត់; (តម្លៃផលិតផលអប្បបរមា)
i, j: ចំនួនគត់;
ចាប់ផ្តើម
readln(N);
(បញ្ចូលតម្លៃឧបករណ៍)
សម្រាប់ i:=1 ទៅ N ធ្វើ
readln(a[i]);
mp:= 1000 * 1000 + 1;
សម្រាប់ i:= 1 ទៅ N-s ចាប់ផ្តើម
សម្រាប់ j:= i+s ទៅ N ចាប់ផ្តើម
ប្រសិនបើ (a[i]*a[j] mod 2 = 0) និង (a[i]*a[j]
បន្ទាប់មក mp:= a[i]*a[j]
បញ្ចប់;
បញ្ចប់;
ប្រសិនបើ mp = 1000 * 1000 + 1 បន្ទាប់មក mp:= -1;
writeln(mp)
K.Yu. ប៉ូលីយ៉ាកូវប្រើក្នុងព័ត៌មានវិទ្យា៖
2016 និងលើសពីនេះ…
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
ការផ្លាស់ប្តូររចនាសម្ព័ន្ធនៅឆ្នាំ 2015-2016
2
ការផ្លាស់ប្តូររចនាសម្ព័ន្ធក្នុងឆ្នាំ ២០១៥-២០១៦
1) ការដកផ្នែក A
2) កាត់បន្ថយចំនួនការងារ
3) សមាគម កិច្ចការសាមញ្ញ (4, 6, 7, 9)
គោលបំណង៖ ទុកពេលបន្ថែមទៀតសម្រាប់ការសម្រេចចិត្ត
កិច្ចការស្មុគស្មាញ។
4) ភាសា Python
!
K.Yu. Polyakov, ឆ្នាំ 2015
ការប្រែប្រួល!
http://kpolyakov.spb.ru
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…
3
តើមានប៉ុន្មានឯកតាក្នុងសញ្ញាគោលពីរ
លេខគោលដប់ប្រាំមួយ 12F016 ។
1
2
12 102
ច
11112
0
1+1+4=6
បញ្ជាក់លេខតូចបំផុតដែលមានសញ្ញាគោលពីរ
មានលេខសូន្យសំខាន់ៗចំនួនបី និងលេខបី។
សរសេរចម្លើយរបស់អ្នកជាទសភាគ
1000112 = 35
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B1: ប្រព័ន្ធលេខគោលពីរ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…4
B1: ប្រព័ន្ធលេខគោលពីរ
លេខ 1025?
1) "នៅលើថ្ងាស" - បកប្រែ ...
2) 1025 = 1024 + 1
1024 = 100000000002
1025 = 100000000012
ចម្លើយ៖ ២
511?
511 = 512 - 1
= 10000000002 - 1 = 1111111112
ចម្លើយ៖ ៩
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B1: ប្រព័ន្ធលេខគោលពីរ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…5
B1: ប្រព័ន្ធលេខគោលពីរ
តើមានឯកតាប៉ុន្មាននៅក្នុងសញ្ញាគោលពីរនៃទសភាគ
លេខ 999?
1) "នៅលើថ្ងាស" - បកប្រែ ...
2) 999 = 1023 – 16 – 8
1023 = 1024 – 1 = 11111111112
ដកពីរឯកតា៖ ៨
519?
519 = 512 + 7
512 = 10000000002
7 = 1112
បូកបីគ្រឿង៖ ៤
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B1: ប្រព័ន្ធលេខ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…6
B1: ប្រព័ន្ធលេខ
តើលេខមួយណាក្នុងចំណោមលេខខាងក្រោមអាចសរសេរបាន។
ប្រព័ន្ធលេខគោលពីរក្នុងទម្រង់ 1xxx10 ដែល x អាច
មានន័យថា 0 និង 1?
1) 74
2) 38
3) 60
4) 47
1) 1000102 = 34 N 1111102 = 62
2) 1xxx10 ត្រូវបានបែងចែកដោយ 2
3) 1xxx10 មិនត្រូវបានបែងចែកដោយ 4
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B2: អនុគមន៍តក្កវិជ្ជា
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…7
B2៖ មុខងារតក្កវិជ្ជា
x1
1
!
x2
0
x3
x4
0
1
x5
x6
x7
x8
1
1
ច
0
1
1
ជម្រើសទាំងអស់គឺសាមញ្ញ AND ឬ OR!
1) "នៅលើថ្ងាស" - ជំនួសនៅក្នុងរូបមន្ត ...
2) ប្រសិនបើទាំងអស់ "OR" មួយសូន្យ
ពិនិត្យបន្ទាត់ដែល F = 0
x2 ដោយមិនមានការបញ្ច្រាស, x8 ជាមួយនឹងការដាក់បញ្ច្រាស
3) ប្រសិនបើទាំងអស់ "និង" មួយឯកតា
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B2: អនុគមន៍តក្កវិជ្ជា
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…8
B2: អនុគមន៍តក្កវិជ្ជា
តារាងអនុគមន៍ z x x
?z
0
0
0
0
1
1
1
1
?យ
0
0
1
1
0
0
1
1
K.Yu. Polyakov, ឆ្នាំ 2015
?x
0
1
0
1
0
1
0
1
ច
0
1
0
1
0
0
0
1
y.
zxxy
x (z y)
x 0 F 0
x ១
z1
F0
y ០
ចម្លើយ៖ zyx
http://kpolyakov.spb.ru
B2: អនុគមន៍តក្កវិជ្ជា
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…9
B2: អនុគមន៍តក្កវិជ្ជា
តារាងអនុគមន៍ x y z x
កំណត់ជួរឈរ x, y និង z នៅក្នុង ។
?z
0
0
0
0
1
1
1
1
?x
0
0
1
1
0
0
1
1
K.Yu. Polyakov, ឆ្នាំ 2015
?យ
0
1
0
1
0
1
0
1
ច
0
0
1
0
1
1
1
1
yz
x y z x y z
z 0 F x y
z 1 F x y x y
(x x) (y x) y
y x y ១
z0
x 1 ចម្លើយ៖ zxy
F1
y ០
http://kpolyakov.spb.ru
B3: ក្រាហ្វទម្ងន់ម៉ាទ្រីស
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…10
B3៖ ម៉ាទ្រីសទម្ងន់រាប់
ក
ក
ខ
គ
ឃ
អ៊ី
ច
Z
ខ
4
គ
6
3
ឃ
អ៊ី
ច
11
4
5
7
4
Z
30
27
10
8
2
29
1) ម៉ាទ្រីស asymmetric (តួលេខ)
2) ផ្លូវពីរផ្លូវមួយ។
3) "តើមានផ្លូវប៉ុន្មានដែលឆ្លងកាត់ N
ពិន្ទុ?
4) "... មិនតិចជាងពិន្ទុ N ទេ?"
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B3: ក្រាហ្វទម្ងន់ម៉ាទ្រីស
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…11
B3: ក្រាហ្វទម្ងន់ម៉ាទ្រីស
1
1
2
2
3
45
4
5
6
6
45
55
3
15 60
2
10 40
15
20 35
4
55
2
55 60 20 55
35
45
45
អ៊ី
ប៉ុន្តែ
5
2
សញ្ញាបត្រ
កំពូល
K.Yu. Polyakov, ឆ្នាំ 2015
ឃ
2
40
7
ខ
7
10
3
4
5
ទៅ
អេ
សញ្ញាបត្រ ៤
សញ្ញាបត្រ ៥
ជី
ចម្លើយ៖ ២០
http://kpolyakov.spb.ru
B4-1: មូលដ្ឋានទិន្នន័យតារាង
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…12
B4-1: មូលដ្ឋានទិន្នន័យតារាង
១) តើ X មានកូនចៅប៉ុន្មាននាក់ (កូន ចៅ ចៅទួត...)?
2) តើបុព្វបុរសរបស់ X មានប៉ុន្មាននាក់ក្នុងតារាង?
3) ស្វែងរកជីតាម្តាយរបស់អ្នក។
23
24
25
K.Yu. Polyakov, ឆ្នាំ 2015
34
57
35
42
http://kpolyakov.spb.ru
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…
13
សារមានអក្សរ P, O, C, T; បានប្រើ
កូដគោលពីរអនុញ្ញាតឱ្យមានភាពច្បាស់លាស់
ការឌិកូដ។ ពាក្យកូដ៖
T: 111, O: 0, P: 100 ។
បញ្ចូលពាក្យកូដខ្លីបំផុតសម្រាប់អក្សរ C ជាមួយ
ដែលជាកន្លែងដែលលេខកូដនឹងអនុញ្ញាតឱ្យមានភាពមិនច្បាស់លាស់
ការឌិកូដ។ ប្រសិនបើមានលេខកូដបែបនេះច្រើនជាងមួយ សូមបញ្ជាក់
លេខកូដដែលមានតម្លៃលេខតូចបំផុត។
1
0
0x10
0xx
អូ
11
101
ទំ
K.Yu. Polyakov, ឆ្នាំ 2015
0
0
110
1
1
1
0
1
ធ
http://kpolyakov.spb.ru
B5: ការអ៊ិនកូដ និងការឌិកូដ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…14
B5: ការអ៊ិនកូដ និងការឌិកូដ
សារមានស្រៈបី៖ A, E, I - និងប្រាំ
ព្យញ្ជនៈ B, C, D, D, K. អក្សរត្រូវបានអ៊ិនកូដ
កូដបុព្វបទ។ វាត្រូវបានគេស្គាល់ថាពាក្យកូដទាំងអស់សម្រាប់
ព្យញ្ជនៈមានប្រវែងដូចគ្នា និង
A -1, E - 01, I - 001 ។
តើអ្វីជាប្រវែងតូចបំផុតនៃពាក្យកូដសម្រាប់
ព្យញ្ជនៈ?
0
៥ ព្យញ្ជនៈ ៣ ប៊ីត ៤ ប៊ីត ៥ ប៊ីត
៤:១ xx
0
1
2:01x
0
1
ប៉ុន្តែ
1: 001
1
អ៊ី
អាចរកបាន: 000
000x 000xx
1
2
4
និង
K.Yu. Polyakov, ឆ្នាំ 2015
6 ប៊ីត
០០០xxx
8
http://kpolyakov.spb.ru
B6-1: ស្វ័យប្រវត្តិ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…15
B6-1: ស្វ័យប្រវត្តិ
ភាពស្មើគ្នាបានស្ដារឡើងវិញ!
បញ្ចូល៖ លេខធម្មជាតិ N.
1. ប៊ីត parity ត្រូវបានបន្ថែមទៅចុងបញ្ចប់នៃកំណត់ត្រាគោលពីរ
(ផលបូកនៃលេខ mod 2) ។
2. ប៊ីត parity មួយផ្សេងទៀតត្រូវបានបន្ថែមទៅខ្សែអក្សរដែលបានទទួល។
បញ្ជាក់លេខតូចបំផុតសម្រាប់លទ្ធផល
ការប្រតិបត្តិក្បួនដោះស្រាយនេះនឹងផ្តល់លទ្ធផលជាលេខ
ច្រើនជាង 125 ។
!
ជំហានទី 2 បន្ថែម 0 2!
គួរតែទទួលបានគូ = 126 ឬ 128
បន្ទាប់ពី div 2 ភាពស្មើគ្នាត្រូវតែត្រូវបានរក្សាទុក!
126 / 2 = 63 = 1111112: - 6 ឯកតាសូម្បីតែ
ចម្លើយ៖
K.Yu. Polyakov, ឆ្នាំ 2015
31
http://kpolyakov.spb.ru
B10: ឧបករណ៍ផ្សំ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…16
B10: ឧបករណ៍ផ្សំ
តើមានអក្សរ 5 ប៉ុន្មានដែលមានតែ
អក្សរ P, I, R និងអក្សរ P លេចឡើងយ៉ាងពិតប្រាកដ 1 ដង។
P****
*P***
**P**
***P*
**** ភី
K.Yu. Polyakov, ឆ្នាំ 2015
24 = 16 ពាក្យ
ចម្លើយ៖ ១៦ ៥ = ៨០។
http://kpolyakov.spb.ru
B12: អាសយដ្ឋានបណ្តាញ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…17
B12: អាសយដ្ឋានបណ្តាញ
អាសយដ្ឋាន IP 224.128.112.142
អាសយដ្ឋានបណ្តាញគឺ 224.128.64.0 ។
តើអ្វីទៅជាបៃទីបីនៃរបាំងពីខាងឆ្វេង?
កុំភ្លេចអំពី
*.*.112.*
អង្គភាពជាន់ខ្ពស់!
*.*.64.0
របាំង៖ 110000002 = 192
192
112 = 011100002
64 = 010000002
!
K.Yu. Polyakov, ឆ្នាំ 2015
ភ្ជាប់គ្នាបន្តិច!
http://kpolyakov.spb.ru
B12: អាសយដ្ឋានបណ្តាញ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…18
B12: អាសយដ្ឋានបណ្តាញ
អាសយដ្ឋាន IP 111.81.208.27
អាសយដ្ឋានបណ្តាញគឺ 111.81.192.0 ។
តើអ្វីទៅជាតម្លៃអប្បបរមានៃទីបីពីខាងឆ្វេង
របាំងមុខ?
*.*.208.*
*.*.192.0
208 =
192 =
របាំង៖
របាំង៖
110100002
110000002
111000002
110000002
192
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B14: អ្នកព្រាង
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…19
B14: អ្នកព្រាង
ផ្លាស់ប្តូរដោយ (–3, –3) 1)
ធ្វើម្តងទៀត N ដង
2)
ផ្លាស់ទីទៅ (a, b) 3)
ផ្លាស់ទីទៅ (27, 12) 4)
បញ្ចប់ការធ្វើម្តងទៀត
ផ្លាស់ប្តូរដោយ (–22, -7)
3N x 220
3 ន y 7 0
តូចបំផុត N > 1
ធំបំផុត N
ទាំងអស់ដែលអាចធ្វើបាន N
ផលបូកនៃ N
ន x ២៥
ន y ១០
N = ការបែងចែកធម្មតា(25,10)
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B14: កម្មវិធីនិពន្ធ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…20
B14: កម្មវិធីនិពន្ធ
1) ជំនួស (v, w)
2) បានរកឃើញ (v)
មិនទាន់រកឃើញ (222) ឬ រកឃើញ (888)
រកឃើញ (222)
ជំនួស (222, 8)
ជំនួស ELSE (888, 2)
តើលទ្ធផលនៃដំណើរការខ្សែអក្សរ 88888…8 គឺជាអ្វី?
888888888…8
2 2 2
8
K.Yu. Polyakov, ឆ្នាំ 2015
!
ក្នុង 4 ជំហាន
ដកចេញ
៨ ប្រាំបី!
៦៨ − ៨ ៨ = ៤
68
8888 28
http://kpolyakov.spb.ru
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…
21
ទីក្រុង A ទៅទីក្រុង L មិនឆ្លងកាត់ B?
ឃ
ខ
និង
អេ
ប៉ុន្តែ
ជី
K.Yu. Polyakov, ឆ្នាំ 2015
និង
អ៊ី
អិល
ទៅ
http://kpolyakov.spb.ru
B15: ចំនួនផ្លូវក្នុងជួរឈរ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…22
B15: ចំនួនផ្លូវក្នុងជួរឈរ
តើមានផ្លូវខុសគ្នាប៉ុន្មាន
ទីក្រុង A ទៅទីក្រុង L ឆ្លងកាត់ D?
ឃ
ខ
និង
អេ
ប៉ុន្តែ
ជី
K.Yu. Polyakov, ឆ្នាំ 2015
និង
អ៊ី
អិល
ទៅ
http://kpolyakov.spb.ru
B16: ប្រព័ន្ធលេខ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…23
B16: ប្រព័ន្ធលេខ
តើមានប៉ុន្មានឯកតាក្នុងប្រព័ន្ធគោលពីរ
(ternary, ...) សញ្ញាណនៃលេខ X?
10N = 100…0
10N-1 = 99…9
ន
ន
2N = 100…02
ន
3N = 100…03
ន
K.Yu. Polyakov, ឆ្នាំ 2015
2N-1 = 11…1
ន
3N-1 = 22…2
ន
http://kpolyakov.spb.ru
B16: ប្រព័ន្ធលេខ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…24
B16: ប្រព័ន្ធលេខ
2N - 2M = 2M (2N-M - 1)
= 100…02 11…12
N-M
ម
= 11…100…02
N-M
K.Yu. Polyakov, ឆ្នាំ 2015
ម
http://kpolyakov.spb.ru
B16: ប្រព័ន្ធលេខ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…25
B16: ប្រព័ន្ធលេខ
លេខ (24400–1) (42200+2)?
(24400–1) (42200+2) = (24400–1) (24400+1+1)
= (24400–1) (24400+1) + 24400–1
= 28800 – 1 + 24400–1
= 28800 + 24400 – 21
1
4399
1 + 4399 = 4400
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B16: ប្រព័ន្ធលេខ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…27
B16: ប្រព័ន្ធលេខ
តើមានឯកតាប៉ុន្មាននៅក្នុងសញ្ញាគោលពីរ
តម្លៃនៃលេខ 8148 - 4123 + 2654 - 17?
8148 = 2444
4123 = 2246
2654
17 = 16 + 1
= 24 + 2 0
2654 + 2444 – 2246 – 24 – 20
444 – 2246 – 24 – 20
2
1
444 – 2
1 + 444 – 2 = 443
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B16: ប្រព័ន្ធលេខ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…28
B16: ប្រព័ន្ធលេខ
តើមានប៉ុន្មានពីរនៅក្នុងសញ្ញា ternary
តម្លៃនៃលេខ 9118 + 3123 - 27?
9118 = 3236
27 = 33
K.Yu. Polyakov, ឆ្នាំ 2015
3236 + 3123 – 33
1
120 deuces
http://kpolyakov.spb.ru
B16: ប្រព័ន្ធលេខ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…29
B17: សំណួរនៅក្នុងម៉ាស៊ីនស្វែងរក
ស្នើសុំ
សហរដ្ឋអាមេរិក | ជប៉ុន | ចិន
ជប៉ុន | ចិន
(អាមេរិក & ជប៉ុន) | (អាមេរិក និងចិន)
សហរដ្ឋអាមេរិក
A=US
ស្នើសុំ
A|B
ខ
A&B
ក
ទំព័រ
450
260
50
?
ខ = ជប៉ុន | ចិន
ទំព័រ
450
260
50
?
ក
A&B
ខ
NA | B = NA + NB - NA & B
NA = 450 - 260 + 50 = 240
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B17: សំណួរនៅក្នុងម៉ាស៊ីនស្វែងរក
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…30
P = និង Q = ។ បញ្ជាក់តូចបំផុត។
ប្រវែងដែលអាចធ្វើបាននៃផ្នែក A ដែលកន្សោម
(x P) (((x Q) (x A)) (x P))
ដូចគ្នាបេះបិទ ពោលគឺស្មើនឹង 1 សម្រាប់ណាមួយ។
តម្លៃនៃ x ។
P(xP),
Q(x Q),
A (x A)
P (Q A P)
P (Q A P)
P Q A P P Q A
PQ ក
ទំ
សំណួរ
K.Yu. Polyakov, ឆ្នាំ 2015
ទំ
37
40
60
77
x
20
សំណួរ
http://kpolyakov.spb.ru
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…31
កំណត់ A៖ ចំនួនគត់. កន្សោម
(x(2, 4, 6, 8, 10, 12))) → ((((x(4, 8, 12, 116)))
¬(x A)) → ¬(x (2, 4, 6, 8, 10, 12)))
ពិតសម្រាប់តម្លៃណាមួយនៃ x ។ កំណត់
តម្លៃតូចបំផុតដែលអាចធ្វើបាននៃផលបូកនៃធាតុ
កំណត់ A
P x (2, 4, 6, 8, 10, 12),
Q x (4, 8, 12, 116),
ក x ក
P (Q A P)
PQ ក
អាមីន P Q P Q (4, 8, 12)
K.Yu. Polyakov, ឆ្នាំ 2015
= 24
http://kpolyakov.spb.ru
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…32
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
(x & ៤៩<>0) ((x & 33 = 0) ( x & ក<> 0))
P x & 49 0,
A x & A 0
P(QA)
Q x & 330,
P (Q A) P Q A
P Q A (P Q) A
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…33
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
" &" ជាការភ្ជាប់បន្តិច (AND) ។ កន្សោម
(x & ៤៩<>0) ((x & 33 = 0) ( x & ក<> 0))
ពិតសម្រាប់ x ធម្មជាតិណាមួយ។ កំណត់
តម្លៃតូចបំផុតនៃ A.
x&49
លេខប៊ីត
5 4 3 2 1 0
49 = 110001
X = abcdef
X&49=ab000f
x & 49 = 0 ប៊ីតទាំងអស់ (5, 4, 0) គឺសូន្យ
x&49<>
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…34
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
" &" ជាការភ្ជាប់បន្តិច (AND) ។ កន្សោម
(x & ៤៩<>0) ((x & 33 = 0) ( x & ក<> 0))
ពិតសម្រាប់ x ធម្មជាតិណាមួយ។ កំណត់
តម្លៃតូចបំផុតនៃ A.
(PQ) ក
P:x & 49<>0 ប៊ីត (5, 4, 0) គឺមិនមែនសូន្យទេ។
សំណួរ៖ x & 33 = 0 ប៊ីតទាំងអស់ (5, 0) គឺសូន្យ
លេខប៊ីត
5 4 3 2 1 0
33 = 100001
!
?
Bit 4 គឺមិនមែនសូន្យទេ!
K.Yu. Polyakov, ឆ្នាំ 2015
តើមានអ្វីបន្តពីនេះ?
អាមីន = 24 = 16
http://kpolyakov.spb.ru
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…35
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
" &" ជាការភ្ជាប់បន្តិច (AND) ។ កន្សោម
(x&A<>0) ((x & 20 = 0) ( x & 5<> 0))
ពិតសម្រាប់ x ធម្មជាតិណាមួយ។ កំណត់
P x & 200,
A x & A 0
A (PQ)
Q x & 5 0,
A (P Q) A P Q
P Q A (P Q) A
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…36
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
" &" ជាការភ្ជាប់បន្តិច (AND) ។ កន្សោម
(x&A<>0) ((x & 20 = 0) ( x & 5<> 0))
ពិតសម្រាប់ x ធម្មជាតិណាមួយ។ កំណត់
តម្លៃធំបំផុតដែលអាចធ្វើបាននៃ A.
(PQ) ក
P: x & 20 = 0 ប៊ីតទាំងអស់ (4, 2) គឺសូន្យ
សំណួរ៖ x & 5 = 0 ប៊ីតទាំងអស់ (2, 0) គឺសូន្យ
!
ប៊ីត (4, 2, 0) ក្នុង x គឺសូន្យ!
Amax = 24 + 22 + 20 = 21
K.Yu. Polyakov, ឆ្នាំ 2015
ពួកគេនឹងកំណត់ឡើងវិញ
លេខប៊ីត
នៅ &!
http://kpolyakov.spb.ru
B18: ប្រតិបត្តិការឡូជីខល, សំណុំ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…37
B19: ការគ្រប់គ្រងអារេ
c:=0;
សម្រាប់ i:= 1 ដល់ 9 ធ្វើ
ប្រសិនបើ A< A[i] then begin
c:= c + 1;
t:= A[i];
ការផ្លាស់ប្តូរគូ
A[i]:= A; នៅពេលតម្រៀប
A:= t
ពពុះ
បញ្ចប់;
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B19: ការគ្រប់គ្រងអារេ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…38
B19: ការគ្រប់គ្រងអារេ
1)
2)
3)
4)
5)
6)
6
9
9
9
9
9
9
9
6
7
7
7
7
7
7
7
6
6
6
6
6
2
2
2
2
2
2
2
1
1
1
5
5
5
5
5
5
5
1
1
1
1
0
0
0
0
3
3
3
3
3
3
3
0
4
4
4
4
4
4
4
0
8
8
8
8
8
8
8
0
c=6
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B19: ការគ្រប់គ្រងអារេ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…39
B19: ការគ្រប់គ្រងអារេ
អារេដែលមានសន្ទស្សន៍ពី 0 ដល់ 9 ។
c:=0;
សម្រាប់ i:= 1 ដល់ 9 ធ្វើ
ប្រសិនបើ A[i]< A then begin
c:= c + 1;
t:= A[i];
A[i]:= A;
ការផ្លាស់ប្តូរគូ
A:= t
បញ្ចប់;
តើអថេរ "c" នឹងមានតម្លៃអ្វីខ្លះ?
4 7 3 8 5 0 1 2 9 6
4 7 3 8 5 0 1 2 9 6
4 7 3 8 5 0 1 2 9 6
K.Yu. Polyakov, ឆ្នាំ 2015
c=2
http://kpolyakov.spb.ru
B19: ការគ្រប់គ្រងអារេ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…40
B19: ការគ្រប់គ្រងអារេ
s:=0;
n:=10;
សម្រាប់ i:=0 ទៅ n-1 ចាប់ផ្តើម
s:=s+A[i]-A
បញ្ចប់;
s:=A-A+A-A+A-...
+A-A+A-A+A-A
អតិបរមា = 999 - 100 = 899
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B19: ការគ្រប់គ្រងអារេ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…41
B19: ការគ្រប់គ្រងអារេ
អារេដែលមានសន្ទស្សន៍ពី 0 ដល់ 10 ។
s:=0;
n:=10;
សម្រាប់ i:=0 ទៅ n-2 ចាប់ផ្តើម
s:=s+A[i]-A
បញ្ចប់;
អារេមានលេខធម្មជាតិបីខ្ទង់។
ដែល តម្លៃខ្ពស់បំផុតតើអាចមាន "s" បានទេ?
s:=A-A+A-A+A-...
+A-A+A-A+A-A
អតិបរមា = 999 + 999 - 100 - 100 = 1798
1798
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B19: ការគ្រប់គ្រងអារេ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…42
B20: រង្វិលជុំ និងលក្ខខណ្ឌ ("រៀនក្បួនដោះស្រាយ")
ចង្អុលបង្ហាញលេខប្រាំខ្ទង់តូចបំផុត x សម្រាប់លេខណា
6 នឹងត្រូវបានបោះពុម្ពជាមុនហើយបន្ទាប់មក 3 ។
a:=0;
អប្បបរមា និងអតិបរមា!
b:= 10;
readln(x);
ខណៈពេលដែល x> 0 ចាប់ផ្តើម
y:= x mod 10;
x:= x div 10;
33336
ប្រសិនបើ y > a បន្ទាប់មក a:= y;
ប្រសិនបើ y< b then b:= y;
បញ្ចប់;
writeln(a); (តួលេខអតិបរមា)
writeln(b); (តួលេខអប្បបរមា)
!
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B20: រង្វិលជុំ និងលក្ខខណ្ឌ ("រៀនក្បួនដោះស្រាយ")
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…43
B20: វដ្តនិងលក្ខខណ្ឌ
តើលេខតូចបំផុត x ធំជាង 100 សម្រាប់មួយណា
26 នឹងត្រូវបានបោះពុម្ព។
var x, L, M: ចំនួនគត់;
ចាប់ផ្តើម
x សេស៖ gcd(x,65) = 26
readln(x);
x គូ៖ gcd(x,52) = 26
L:=x; M:= 65;
ប្រសិនបើ L mod 2 = 0 បន្ទាប់មក x ត្រូវបានបែងចែកដោយ 26,
M:= 52;
មិនអាចចែកនឹង ៥២ បានទេ!
ខណៈពេលដែល L<>M ធ្វើ
gcd(104.52) = 52
104
ប្រសិនបើ L > M បន្ទាប់មក
L:= L - M
ចម្លើយ៖ ១៣០
ផ្សេងទៀត។
M:= M - L;
writeln(M);
ក្បួនដោះស្រាយរបស់ Euclid!
ចប់។
!
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B20: វដ្តនិងលក្ខខណ្ឌ
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…44
B21: វដ្តនិងនីតិវិធី
ចាប់ផ្តើម
ខ្ញុំ
f(i)
f:= n*(n-1)+10
1
10
បញ្ចប់;
…
2
12
readln(k);
3
16
ខ្ញុំ:= 0;
4
22
ខណៈពេលដែល f (i)< k do
5
30
36
i:= i + 1;
writeln(i);
6
40
ឈប់៖ ក<= f(i)
31 … 40
10
K.Yu. Polyakov, ឆ្នាំ 2015
?
សម្រាប់ k = 30?
23 … 30
8
http://kpolyakov.spb.ru
B21: វដ្តនិងនីតិវិធី
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…45
B21: វដ្តនិងនីតិវិធី
ស្វែងរកចំនួនតម្លៃផ្សេងគ្នានៃ k សម្រាប់អ្វីដែល
កម្មវិធីផ្តល់ចម្លើយដូចគ្នានឹង k = 36 ។
អនុគមន៍ f(n: longint): longint;
ចាប់ផ្តើម
ឈប់៖
f:= n*(n-1)+10
f(i-1)< k <= f(i)
បញ្ចប់;
(i-1)*(i-2)+10< k <= i*(i-1)+10
…
i2-3i+12< k <= i2-i+10
readln(k);
ខ្ញុំ:= 0;
i=6:30< k <= 40
ខណៈពេលដែល f (i)< k do
31 … 40
i:= i + 1;
writeln(i);
ចម្លើយ៖ ១០
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B21: វដ្តនិងនីតិវិធី
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…46
B21: វដ្តនិងនីតិវិធី
ស្វែងរកតម្លៃតូចបំផុតនៃ k សម្រាប់អ្វីដែល
កម្មវិធីផ្តល់ចម្លើយដូចគ្នានឹង k = 10 ។
def f(n)៖
ឈប់៖
ត្រឡប់ n * n * n
f(i-1)< g(k) <= f(i)
def g(n)៖
(i-1) ៣< 2k+3 <= i3
ត្រឡប់ 2*n+3
3 < 23 <= i3
k=10៖
(i-1)
k = int(បញ្ចូល())
i=3
ខ្ញុំ = 1
ខណៈពេលដែល f (i)< g(k):
8 < 2k+3 <= 27
i+=1
3 … 12
បោះពុម្ព(i)
ចម្លើយ៖ ៣
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
B21: វដ្តនិងនីតិវិធី
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…47
B22: កម្មវិធីសម្រាប់អ្នកសំដែង
1) បន្ថែម 1
2) គុណនឹង 2
តើមានកម្មវិធីប៉ុន្មានក្នុងចំណោមកម្មវិធី 2
លេខ 29 ត្រូវបានទទួលហើយក្នុងពេលតែមួយគន្លងនៃការគណនា
មានលេខ 14 ហើយមិនមានលេខ 25?
N សេស
K N ១
រូបមន្តកើតឡើងវិញ៖ K N
K N 1 K N / 2 N សូម្បីតែ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
1
1
1
2
2
3
3
5
5
7
7
10
10
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
13
13
13
13
13
13
13
13
13
13
13
0
0
0
13
13
ចាប់ផ្តើមជាថ្មី
K.Yu. Polyakov, ឆ្នាំ 2015
អ្នកមិនអាចមកទីនេះបានទេ។
http://kpolyakov.spb.ru
B22: កម្មវិធីសម្រាប់អ្នកសំដែង
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…48
C24: ការកែកំហុស
លេខធម្មជាតិ x ត្រូវបានអាន អ្នកត្រូវស្វែងរក
ចំនួនខ្ទង់សំខាន់ៗនៅក្នុងសញ្ញាគោលពីររបស់វា។
readln(x);
c:=0;
ខណៈពេលដែល x> 0 ចាប់ផ្តើម
c:= c + x mod 2;
x:= x div ១០
បញ្ចប់;
writeln(c)
1)
2)
3)
4)
?
?
តើគាត់គិតយ៉ាងណា?
តើវាដំណើរការនៅពេលណា
មែនទេ?
សម្រាប់តែ x=1 ប៉ុណ្ណោះ។
តម្លៃដំបូងមិនត្រឹមត្រូវ
លក្ខខណ្ឌរង្វិលជុំមិនត្រឹមត្រូវ
ការផ្លាស់ប្តូរមិនត្រឹមត្រូវនៃអថេរ
ការសន្និដ្ឋានខុស
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
C24: ការកែកំហុស
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…49
C24: ការកែកំហុស
យើងត្រូវសរសេរកម្មវិធីដែលបង្ហាញ
ខ្ទង់អតិបរមានៃលេខដែលជាពហុគុណនៃ 3 ។ ប្រសិនបើលេខមិនមាន
លេខដែលបែងចែកដោយ 3 វាត្រូវបានទាមទារដើម្បីបង្ហាញ "ទេ" នៅលើអេក្រង់។
-1
readln(N);
maxDigit:= N mod 10;
តើវាដំណើរការនៅពេលណា
ខណៈពេលដែល N> 0 ចាប់ផ្តើម
មែនទេ?
digit:=N mod 10;
ប្រសិនបើលេខ mod 3 1) = ចុងក្រោយ
0 បន្ទាប់មកលេខត្រូវបានបែងចែកដោយ 3
ប្រសិនបើលេខ > maxDigit
បន្ទាប់មក
2) ចុងក្រោយ
ចំនួនតិចជាង
maxDigit:= ចង់បាន
តួលេខ; លទ្ធផល
N:= N div 10;
-1
បញ្ចប់;
ប្រសិនបើ maxDigit = 0 បន្ទាប់មក writeln("NO")
else writeln(maxDigit);
?
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
C24: ការកែកំហុស
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…50
សម្រាប់លំដាប់នៃការមិនអវិជ្ជមាន
ចំនួនគត់ អ្នកត្រូវស្វែងរកអតិបរមា
ផលិតផលនៃធាតុពីររបស់វា ដែលលេខរបស់វា។
ខុសគ្នាយ៉ាងហោចណាស់ 8. ចំនួនធាតុ
លំដាប់មិនលើសពី 10000 ។
កិច្ចការ A (២ ពិន្ទុ)។ O(N2) នៅក្នុងពេលវេលា O(N) នៅក្នុងអង្គចងចាំ។
កិច្ចការ B (៣ ពិន្ទុ)។ O(N) នៅក្នុងពេលវេលា O(N) នៅក្នុងការចងចាំ។
កិច្ចការ B (៤ ពិន្ទុ)។ O(N) នៅក្នុងពេលវេលា O(1) នៅក្នុងការចងចាំ។
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…
51
ស២៧៖ កិច្ចការលំបាកសម្រាប់ការសរសេរកម្មវិធី
កិច្ចការ A (២ ពិន្ទុ)។ ទិន្នន័យត្រូវបានរក្សាទុកក្នុងអារេមួយ។
var N: ចំនួនគត់;
a: អារេនៃចំនួនគត់;
i, j, អតិបរមា៖ ចំនួនគត់;
ចាប់ផ្តើម
readln(N);
សម្រាប់ i:=1 ទៅ N អាន(a[i]);
អតិបរមា៖= -1;
សម្រាប់ i: = 9 ទៅ N ធ្វើ
សម្រាប់ j:= 1 ទៅ i-8 ធ្វើ
ប្រសិនបើ (a[j]*a[i]> អតិបរមា) បន្ទាប់មក
អតិបរមា៖= a[j]*a[i];
writeln(អតិបរមា)
ចប់។
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
C27: បញ្ហាកម្មវិធីពិបាក
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…52
C27: បញ្ហាកម្មវិធីពិបាក
កិច្ចការ B (៣ ពិន្ទុ)។ ទិន្នន័យក្នុងអារេ ពេលវេលា O(N)។
i-8
ខ្ញុំ
a[i]
ម
កកកុញ!
អតិបរមា a[j] a[i] អតិបរមា a[j] a[i]
j
j
អតិបរមា៖= 0;
m:= 0;
សម្រាប់ i: = 9 ទៅ N ចាប់ផ្តើម
ប្រសិនបើ a > m បន្ទាប់មក m:= a;
ប្រសិនបើ m*a[i]> max បន្ទាប់មក max:= m*a[i];
បញ្ចប់;
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
C27: បញ្ហាកម្មវិធីពិបាក
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…53
C27: បញ្ហាកម្មវិធីពិបាក
i-8
ខ្ញុំ
រក្សាទុកក្នុងអារេមួយ។
var a: អារេនៃចំនួនគត់;
x
ការបំពេញអារេដំបូង៖
សម្រាប់ i:=1 ដល់ 8 អាន(a[i]);
ការផ្សព្វផ្សាយ៖
សម្រាប់ i:=1 ដល់ 7 ធ្វើ
a[i]:=a;
a:=x;
K.Yu. Polyakov, ឆ្នាំ 2015
!
វាជាជួរ!
http://kpolyakov.spb.ru
C27: បញ្ហាកម្មវិធីពិបាក
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…54
C27: បញ្ហាកម្មវិធីពិបាក
កិច្ចការ B (៤ ពិន្ទុ)។ អង្គចងចាំ O(1), ពេលវេលា O(N) ។
ក
x
const d = 8; (ប្ដូរ)
... (បានអានភាគដំបូងរួចហើយ)
អតិបរមា៖= 0;
m:= 0;
សម្រាប់ i:=d+1 ទៅ N ចាប់ផ្តើម
អាន (x);
ប្រសិនបើ a > m បន្ទាប់មក m:= a;
ប្រសិនបើ m*x> max បន្ទាប់មក max:= m*x;
សម្រាប់ j:=1 ទៅ d-1 ធ្វើ
a[j]:= ក;
a[d]:= x;
បញ្ចប់;
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
C27: បញ្ហាកម្មវិធីពិបាក
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…55
C27: បញ្ហាកម្មវិធីពិបាក
កិច្ចការ B (៤ ពិន្ទុ)។ គ្មានការផ្លាស់ប្តូរ (ជួរជួរ) ។
ខ្ញុំ 0
1
2
3
9
1
5
6
7
k
0
ក
4
10
2 11
3 12
4 5
8
9
ន-១
10 11 12 13 14 15 16 17 18
7
6
7
8
a:=data[i];
សម្រាប់ i:=0 ទៅ d-1 អាន(a[i]);
សម្រាប់ i:=d ទៅ N-1 ចាប់ផ្តើម
អាន (x);
k:= ខ្ញុំ mod d;
ប្រសិនបើ a[k]> m បន្ទាប់មក m:= a[k];
ប្រសិនបើ m*x> max បន្ទាប់មក max:= m*x;
a[k]:=x;
បញ្ចប់;
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
C27: បញ្ហាកម្មវិធីពិបាក
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…56
C27: បញ្ហាកម្មវិធីពិបាក
គណនាផលគុណអតិបរមានៃពីរ
ការចង្អុលបង្ហាញរវាងគ្រានៃការបញ្ជូន
យ៉ាងហោចណាស់ 8 នាទីបានកន្លងផុតទៅ។
x
គាំទ្រ
1) អតិបរមា
2) អតិបរមា
x
សូម្បីតែ * ណាមួយ។
សូម្បីតែ * ណាមួយក៏ដោយ។
K.Yu. Polyakov, ឆ្នាំ 2015
រក្សាទុកក្នុងអារេមួយ។
(វេន)
http://kpolyakov.spb.ru
C27: បញ្ហាកម្មវិធីពិបាក
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…57
C27: បញ្ហាកម្មវិធីពិបាក
សម្រាប់ i:=d ទៅ N-1 ចាប់ផ្តើម
អាន (x);
k:= ខ្ញុំ mod d;
អតិបរមា
សូម្បីតែ
ប្រសិនបើ a[k]> m បន្ទាប់មក m:= a[k];
ប្រសិនបើ ((a[k] mod 2 = 0) និង
(a[k]> mEven)) បន្ទាប់មក mEven:= a[k];
ប្រសិនបើ x mod 2 = 1 បន្ទាប់មកចាប់ផ្តើម
បានទទួល
សេស
ប្រសិនបើ mEven*x > max បន្ទាប់មក
អតិបរមា៖= mEven*x;
ចប់
បានទទួល
សូម្បីតែ
ផ្សេងទៀត។
ប្រសិនបើ m*x> max បន្ទាប់មក max:= m*x;
a[k]:=x;
បញ្ចប់;
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
C27: បញ្ហាកម្មវិធីពិបាក
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…58
ការសន្និដ្ឋាន
!
K.Yu. Polyakov, ឆ្នាំ 2015
ការប្រែប្រួល!
http://kpolyakov.spb.ru
ការសន្និដ្ឋាន
ប្រើប្រាស់ក្នុងវិស័យព័ត៌មានវិទ្យា៖ ឆ្នាំ ២០១៦ និងលើសពីនេះ…59
ចុងបញ្ចប់នៃខ្សែភាពយន្ត
POLYAKOV Konstantin Yurievich
បណ្ឌិតវិទ្យាសាស្ត្របច្ចេកទេស គ្រូបង្រៀនវិទ្យាសាស្ត្រកុំព្យូទ័រ
អនុវិទ្យាល័យ GBOU លេខ 163 ផ្លូវ Petersburg
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru
សម្រាប់និស្សិតបញ្ចប់វិទ្យាល័យ។ វាត្រូវតែត្រូវបានទទួលយកដោយអ្នកដែលមានគម្រោងចូលសាកលវិទ្យាល័យច្រើនបំផុត ឯកទេសដែលសន្យាដូចជាសុវត្ថិភាពព័ត៌មាន ស្វ័យប្រវត្តិកម្ម និងការត្រួតពិនិត្យ បច្ចេកវិទ្យាណាណូ។ ការវិភាគប្រព័ន្ធនិងការគ្រប់គ្រង ប្រព័ន្ធមីស៊ីល និងអវកាសយានិក រូបវិទ្យានុយក្លេអ៊ែរនិងបច្ចេកវិទ្យា និងផ្សេងៗទៀត។
ពិនិត្យមុនពេលចេញ ព័ត៌មានទូទៅអំពីការប្រឡងហើយចាប់ផ្តើមរៀបចំ។ ការផ្លាស់ប្តូរបើប្រៀបធៀបទៅនឹងឆ្នាំមុន នៅក្នុងកំណែថ្មីនៃ KIM USE 2019 គឺមិនមានភាពជាក់ស្តែងទេ។ រឿងតែមួយគត់គឺថាបំណែកនៃកម្មវិធីដែលសរសេរជាភាសា C បានបាត់ពីភារកិច្ច: ពួកគេត្រូវបានជំនួសដោយបំណែកដែលសរសេរជាភាសា C ++ ។ ហើយពីកិច្ចការលេខ 25 ពួកគេបានដកឱកាសដើម្បីសរសេរក្បួនដោះស្រាយជាភាសាធម្មជាតិជាចម្លើយ។
ប្រើពិន្ទុ
កាលពីឆ្នាំមុន ដើម្បីឆ្លងកាត់ការប្រឡងរដ្ឋបង្រួបបង្រួមក្នុងផ្នែកព័ត៌មានវិទ្យា យ៉ាងហោចណាស់សម្រាប់កំពូលទាំងបី វាគ្រប់គ្រាន់ក្នុងការទទួលបានពិន្ទុបឋមចំនួន 42 ។ ពួកគេត្រូវបានផ្តល់ជាឧទាហរណ៍សម្រាប់កិច្ចការ 9 ដំបូងនៃការធ្វើតេស្តដែលបានបញ្ចប់យ៉ាងត្រឹមត្រូវ។
តើវានឹងទៅជាយ៉ាងណានៅឆ្នាំ 2019 នៅតែមិនទាន់ដឹងច្បាស់នៅឡើយ៖ អ្នកត្រូវរង់ចាំការបញ្ជាទិញជាផ្លូវការពី Rosobrnadzor លើការអនុលោមតាមគោលការណ៍បឋម និង ពិន្ទុសាកល្បង. ភាគច្រើនទំនងជាវានឹងបង្ហាញនៅខែធ្នូ។ ពិចារណាថាអតិបរមា ពិន្ទុបឋមសម្រាប់ការធ្វើតេស្តទាំងមូលនៅតែដដែល ភាគច្រើនទំនងជាមិនផ្លាស់ប្តូរ និង ពិន្ទុអប្បបរមា. តោះមើលតារាងទាំងនេះ៖
ប្រើរចនាសម្ព័ន្ធសាកល្បង
Informatics គឺជាការប្រឡងដ៏វែងបំផុត (ដូចគ្នាគឺជារយៈពេលនៃការប្រឡងក្នុងគណិតវិទ្យា និងអក្សរសិល្ប៍) រយៈពេលគឺ 4 ម៉ោង។
ក្នុងឆ្នាំ 2019 ការធ្វើតេស្តមានពីរផ្នែក រួមទាំង 27 កិច្ចការ។
- ផ្នែកទី 1: កិច្ចការ 23 (1-23) ដែលមានចំលើយខ្លីៗ ដែលជាលេខ លំដាប់អក្សរ ឬលេខ។
- ផ្នែកទី 2: 4 កិច្ចការ (24–27) ជាមួយនឹងចម្លើយលម្អិត, ដំណោះស្រាយពេញលេញភារកិច្ចត្រូវបានកត់ត្រានៅលើសន្លឹកចម្លើយ 2 ។
កិច្ចការទាំងអស់ត្រូវបានភ្ជាប់ក្នុងមធ្យោបាយមួយ ឬមួយផ្សេងទៀតជាមួយកុំព្យូទ័រ ប៉ុន្តែវាមិនត្រូវបានអនុញ្ញាតឱ្យប្រើវាដើម្បីសរសេរកម្មវិធីនៅក្នុងកិច្ចការនៃក្រុម C អំឡុងពេលប្រឡងនោះទេ។ លើសពីនេះ កិច្ចការមិនតម្រូវឱ្យមានការគណនាគណិតវិទ្យាស្មុគ្រស្មាញ ហើយការប្រើប្រាស់ម៉ាស៊ីនគិតលេខក៏មិនត្រូវបានអនុញ្ញាតដែរ។
ការរៀបចំសម្រាប់ការប្រឡង
- ឆ្លងកាត់ ប្រើតេស្តតាមអ៊ីនធឺណិតឥតគិតថ្លៃដោយមិនចាំបាច់ចុះឈ្មោះ និងផ្ញើសារជាអក្សរ។ ការធ្វើតេស្តដែលបានបង្ហាញគឺដូចគ្នាបេះបិទនៅក្នុងភាពស្មុគស្មាញ និងរចនាសម្ព័ន្ធរបស់ពួកគេទៅនឹងការប្រឡងពិតប្រាកដដែលបានធ្វើឡើងក្នុងឆ្នាំដែលត្រូវគ្នា។
- ទាញយក កំណែសាកល្បងនៃការប្រឡងនៅក្នុងវិទ្យាសាស្ត្រកុំព្យូទ័រ ដែលនឹងអនុញ្ញាតឱ្យអ្នករៀបចំបានល្អជាងមុនសម្រាប់ការប្រឡង និងធ្វើឱ្យវាកាន់តែងាយស្រួលក្នុងការប្រលង។ រាល់ការធ្វើតេស្តដែលបានស្នើឡើង ត្រូវបានរៀបចំ និងអនុម័ត ដើម្បីរៀបចំសម្រាប់ ប្រើសហព័ន្ធវិទ្យាស្ថាន ការវាស់វែងគរុកោសល្យ(FIPI) ។ នៅក្នុង FIPI ដូចគ្នាទាំងអស់ជាផ្លូវការ ប្រើជម្រើស.
ភារកិច្ចដែលអ្នកនឹងឃើញ ទំនងជានឹងមិនត្រូវបានរកឃើញនៅលើការប្រឡងនោះទេ ប៉ុន្តែវានឹងមានកិច្ចការស្រដៀងនឹងការសាកល្បង លើប្រធានបទដូចគ្នា ឬសាមញ្ញជាមួយនឹងលេខផ្សេងគ្នា។
តួលេខ USE ទូទៅ
ឆ្នាំ | នាទី ប្រើពិន្ទុ | ពិន្ទុមធ្យម | ចំនួនអ្នកដាក់ពាក្យ | មិនបានឆ្លងកាត់ % | ចំនួន 100 ពិន្ទុ |
រយៈពេល- រយៈពេលប្រឡង, នាទី |
2009 | 36 | |||||
2010 | 41 | 62,74 | 62 652 | 7,2 | 90 | 240 |
2011 | 40 | 59,74 | 51 180 | 9,8 | 31 | 240 |
2012 | 40 | 60,3 | 61 453 | 11,1 | 315 | 240 |
2013 | 40 | 63,1 | 58 851 | 8,6 | 563 | 240 |
2014 | 40 | 57,1 | 235 | |||
2015 | 40 | 53,6 | 235 | |||
2016 | 40 | 235 | ||||
2017 | 40 | 235 | ||||
2018 |