ជម្រើសប្រឡងដែលត្រៀមរួចជាស្រេចក្នុងវិទ្យាសាស្ត្រកុំព្យូទ័រ។ B2: អនុគមន៍តក្កវិជ្ជា

សម្រាប់និស្សិតបញ្ចប់វិទ្យាល័យ។ វាត្រូវតែត្រូវបានទទួលយកដោយអ្នកដែលមានគម្រោងចូលសាកលវិទ្យាល័យច្រើនបំផុត ឯកទេសដែលសន្យាដូចជាសុវត្ថិភាពព័ត៌មាន ស្វ័យប្រវត្តិកម្ម និងការត្រួតពិនិត្យ បច្ចេកវិទ្យាណាណូ។ ការវិភាគប្រព័ន្ធនិងការគ្រប់គ្រង ប្រព័ន្ធមីស៊ីល និងអវកាសយានិក រូបវិទ្យានុយក្លេអ៊ែរនិងបច្ចេកវិទ្យា និងផ្សេងៗទៀត។

ពិនិត្យ​មុន​ពេល​ចេញ ព័ត៌មាន​ទូទៅអំពីការប្រឡងហើយចាប់ផ្តើមរៀបចំ។ ជាក់ស្តែងមិនមានការផ្លាស់ប្តូរទេបើប្រៀបធៀបទៅនឹងឆ្នាំមុននៅក្នុងកំណែថ្មីនៃ KIM USE 2019។ រឿងតែមួយគត់គឺថាបំណែកនៃកម្មវិធីដែលសរសេរជាភាសា C បានបាត់ពីភារកិច្ច: ពួកគេត្រូវបានជំនួសដោយបំណែកដែលសរសេរជាភាសា C ++ ។ ហើយពីភារកិច្ចលេខ 25 ពួកគេបានដកឱកាសដើម្បីសរសេរក្បួនដោះស្រាយសម្រាប់ការឆ្លើយ ភាសាធម្មជាតិ.

ប្រើពិន្ទុ

កាលពីឆ្នាំមុន ដើម្បីឆ្លងកាត់ការប្រឡងរដ្ឋបង្រួបបង្រួមក្នុងផ្នែកព័ត៌មានវិទ្យា យ៉ាងហោចណាស់សម្រាប់កំពូលទាំងបី វាគ្រប់គ្រាន់ក្នុងការទទួលបានពិន្ទុបឋមចំនួន 42 ។ ជាឧទាហរណ៍ ពួកគេត្រូវបានផ្តល់ឱ្យសម្រាប់កិច្ចការ 9 ដំបូងនៃការធ្វើតេស្តដែលបានបញ្ចប់យ៉ាងត្រឹមត្រូវ។

តើវានឹងទៅជាយ៉ាងណានៅឆ្នាំ 2019 នៅតែមិនទាន់ដឹងច្បាស់នៅឡើយ៖ អ្នកត្រូវរង់ចាំការបញ្ជាទិញជាផ្លូវការពី Rosobrnadzor លើការអនុលោមតាមគោលការណ៍បឋម និង ពិន្ទុសាកល្បង. ភាគច្រើនទំនងជាវានឹងបង្ហាញនៅខែធ្នូ។ ពិចារណាថាអតិបរមា ពិន្ទុបឋមសម្រាប់ការធ្វើតេស្តទាំងមូលនៅតែដដែល ភាគច្រើនទំនងជាមិនផ្លាស់ប្តូរ និង ពិន្ទុអប្បបរមា. តោះមើលតារាងទាំងនេះ៖

ប្រើរចនាសម្ព័ន្ធសាកល្បង

ពត៌មានវិទ្យាគឺជាការប្រឡងវែងបំផុត (ដូចគ្នាជារយៈពេលនៃការប្រឡងក្នុងគណិតវិទ្យា និងអក្សរសាស្ត្រ) រយៈពេលគឺ ៤ ម៉ោង។

ក្នុងឆ្នាំ 2019 ការធ្វើតេស្តមានពីរផ្នែក រួមទាំង 27 កិច្ចការ។

  • ផ្នែកទី 1: កិច្ចការ 23 (1-23) ដែលមានចំលើយខ្លី ដែលជាលេខ លំដាប់អក្សរ ឬលេខ។
  • ផ្នែកទី 2: 4 កិច្ចការ (24–27) ជាមួយនឹងចម្លើយលម្អិត, ដំណោះស្រាយពេញលេញភារកិច្ចត្រូវបានកត់ត្រានៅលើសន្លឹកចម្លើយ 2 ។

កិច្ចការទាំងអស់ត្រូវបានភ្ជាប់ក្នុងមធ្យោបាយមួយ ឬមួយផ្សេងទៀតជាមួយកុំព្យូទ័រ ប៉ុន្តែវាមិនត្រូវបានអនុញ្ញាតឱ្យប្រើវាដើម្បីសរសេរកម្មវិធីក្នុងកិច្ចការក្រុម C អំឡុងពេលប្រឡងនោះទេ។ លើសពីនេះ កិច្ចការមិនតម្រូវឱ្យមានការគណនាគណិតវិទ្យាស្មុគ្រស្មាញ ហើយការប្រើប្រាស់ម៉ាស៊ីនគិតលេខក៏មិនត្រូវបានអនុញ្ញាតដែរ។

ការរៀបចំសម្រាប់ការប្រឡង

  • ឆ្លងកាត់ការធ្វើតេស្ត USE លើអ៊ីនធឺណិតដោយឥតគិតថ្លៃដោយមិនចាំបាច់ចុះឈ្មោះ និងផ្ញើសារជាអក្សរ។ ការធ្វើតេស្តដែលបានបង្ហាញគឺដូចគ្នាបេះបិទនៅក្នុងភាពស្មុគស្មាញ និងរចនាសម្ព័ន្ធរបស់ពួកគេទៅនឹងការប្រឡងពិតប្រាកដដែលបានធ្វើឡើងក្នុងឆ្នាំដែលត្រូវគ្នា។
  • ទាញយកកំណែសាកល្បងនៃការប្រឡង Unified State ក្នុងផ្នែកព័ត៌មានវិទ្យា ដែលនឹងអនុញ្ញាតឱ្យអ្នករៀបចំការប្រឡងបានប្រសើរជាងមុន និងធ្វើឱ្យវាកាន់តែងាយស្រួលក្នុងការប្រឡង។ រាល់ការធ្វើតេស្តដែលបានស្នើឡើងត្រូវបានបង្កើតឡើង និងអនុម័តសម្រាប់ការរៀបចំសម្រាប់ការប្រឡង វិទ្យាស្ថានសហព័ន្ធ ការវាស់វែងគរុកោសល្យ(FIPI) ។ នៅក្នុង FIPI ដូចគ្នា កំណែផ្លូវការទាំងអស់នៃការប្រឡងកំពុងត្រូវបានបង្កើតឡើង។
    ភារកិច្ចដែលអ្នកនឹងឃើញ ទំនងជានឹងមិនត្រូវបានរកឃើញនៅលើការប្រឡងនោះទេ ប៉ុន្តែវានឹងមានកិច្ចការស្រដៀងនឹងការសាកល្បង លើប្រធានបទដូចគ្នា ឬសាមញ្ញជាមួយនឹងលេខផ្សេងគ្នា។

លេខប្រើប្រាស់ទូទៅ

ឆ្នាំ នាទី ប្រើពិន្ទុ ពិន្ទុមធ្យម ចំនួនអ្នកដាក់ពាក្យ មិន​បាន​ឆ្លង​កាត់ % ចំនួន
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
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

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
3

តើមានប៉ុន្មានឯកតាក្នុងសញ្ញាគោលពីរ
លេខគោលដប់ប្រាំមួយ 12F016 ។
1
2
12 102

11112
0
1+1+4=6
បញ្ជាក់ ចំនួនតូចបំផុត។ដែលជាសញ្ញាគោលពីរ
មានលេខសូន្យសំខាន់ៗចំនួនបី និងលេខបី។
សរសេរចម្លើយរបស់អ្នកនៅក្នុង ប្រព័ន្ធទសភាគការគិតគូរ
1000112 = 35
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru

B1: ប្រព័ន្ធលេខគោលពីរ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រព័ន្ធលេខគោលពីរ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រព័ន្ធលេខ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: អនុគមន៍តក្កវិជ្ជា

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: អនុគមន៍តក្កវិជ្ជា

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
8
B2: អនុគមន៍តក្កវិជ្ជា
តារាងអនុគមន៍ z x x

?z
0
0
0
0
1
1
1
1
?y
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: អនុគមន៍តក្កវិជ្ជា

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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
?y
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: ក្រាហ្វទម្ងន់ម៉ាទ្រីស

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
10
B3: ក្រាហ្វទម្ងន់ម៉ាទ្រីស





អ៊ី

Z

4

6
3

អ៊ី

11
4
5
7
4
Z
30
27
10
8
2
29
1) ម៉ាទ្រីស asymmetric (តួលេខ)
2) ផ្លូវពីរផ្លូវមួយ។
៣) "តើមានផ្លូវប៉ុន្មានដែលឆ្លងកាត់ N
ពិន្ទុ?
4) "... មិនតិចជាងពិន្ទុ N ទេ?"
K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru

B3: ក្រាហ្វទម្ងន់ម៉ាទ្រីស

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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
TO
IN
សញ្ញាបត្រ ៤
សញ្ញាបត្រ ៥
ជី
ចម្លើយ៖ ២០
http://kpolyakov.spb.ru

B4-1: មូលដ្ឋានទិន្នន័យតារាង

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
12
B4-1: មូលដ្ឋានទិន្នន័យតារាង
១) តើ X មានកូនចៅប៉ុន្មាននាក់ (កូន ចៅ ចៅទួត...)?
2) តើបុព្វបុរសរបស់ X មានប៉ុន្មាននាក់ក្នុងតារាង?
3) ស្វែងរកជីតាម្តាយរបស់អ្នក។
23
24
25
K.Yu. Polyakov, ឆ្នាំ 2015
34
57
35
42
http://kpolyakov.spb.ru

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ការអ៊ិនកូដ និងការឌិកូដ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ស្វ័យប្រវត្តិ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ឧបករណ៍ផ្សំ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
16
B10: ឧបករណ៍ផ្សំ
តើមានអក្សរ 5 ប៉ុន្មានដែលមានតែ
អក្សរ P, I, R និងអក្សរ P លេចឡើងយ៉ាងពិតប្រាកដ 1 ដង។
P****
*P***
**P**
***P*
**** ភី
K.Yu. Polyakov, ឆ្នាំ 2015
24 = 16 ពាក្យ
ចម្លើយ៖ ១៦ ៥ = ៨០។
http://kpolyakov.spb.ru

B12: អាសយដ្ឋានបណ្តាញ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: អាសយដ្ឋានបណ្តាញ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: អ្នកព្រាង

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: កម្មវិធីនិពន្ធ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
21


ទីក្រុង A ទៅទីក្រុង L មិនឆ្លងកាត់ B?


និង
IN

ជី
K.Yu. Polyakov, ឆ្នាំ 2015
និង
អ៊ី
អិល
TO
http://kpolyakov.spb.ru

B15: ចំនួនផ្លូវក្នុងជួរឈរ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
22
B15: ចំនួនផ្លូវក្នុងជួរឈរ
តើមានប៉ុន្មាន វិធី​ផ្សេង​គ្នាពី
ទីក្រុង A ទៅទីក្រុង L ឆ្លងកាត់ D?


និង
IN

ជី
K.Yu. Polyakov, ឆ្នាំ 2015
និង
អ៊ី
អិល
TO
http://kpolyakov.spb.ru

B16: ប្រព័ន្ធលេខ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រព័ន្ធលេខ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រព័ន្ធលេខ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រព័ន្ធលេខ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រព័ន្ធលេខ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រព័ន្ធលេខ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: សំណួរនៅក្នុងម៉ាស៊ីនស្វែងរក

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រតិបត្តិការឡូជីខល, សំណុំ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រតិបត្តិការឡូជីខល, សំណុំ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រតិបត្តិការឡូជីខល, សំណុំ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រតិបត្តិការឡូជីខល, សំណុំ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រតិបត្តិការឡូជីខល, សំណុំ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រតិបត្តិការឡូជីខល, សំណុំ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ប្រតិបត្តិការឡូជីខល, សំណុំ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ការគ្រប់គ្រងអារេ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ការគ្រប់គ្រងអារេ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ការគ្រប់គ្រងអារេ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ការគ្រប់គ្រងអារេ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ការគ្រប់គ្រងអារេ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: រង្វិលជុំ និងលក្ខខណ្ឌ ("រៀនក្បួនដោះស្រាយ")

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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;
មិនអាចចែកនឹង 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: វដ្តនិងលក្ខខណ្ឌ

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: វដ្តនិងនីតិវិធី

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: វដ្តនិងនីតិវិធី

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: វដ្តនិងនីតិវិធី

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: កម្មវិធីសម្រាប់អ្នកសំដែង

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ការកែកំហុស

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: ការកែកំហុស

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: បញ្ហាកម្មវិធីពិបាក

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: បញ្ហាកម្មវិធីពិបាក

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: បញ្ហាកម្មវិធីពិបាក

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: បញ្ហាកម្មវិធីពិបាក

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: បញ្ហាកម្មវិធីពិបាក

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
56
C27: បញ្ហាកម្មវិធីពិបាក
គណនាផលគុណអតិបរមានៃពីរ
ការចង្អុលបង្ហាញរវាងគ្រានៃការបញ្ជូន
យ៉ាងហោចណាស់ 8 នាទីបានកន្លងផុតទៅ។
x
គាំទ្រ
1) អតិបរមា
2) អតិបរមា
x
សូម្បីតែ * ណាមួយ។
សូម្បីតែណាមួយ * សូម្បីតែ
K.Yu. Polyakov, ឆ្នាំ 2015
រក្សាទុកក្នុងអារេមួយ។
(ជួរ)
http://kpolyakov.spb.ru

C27: បញ្ហាកម្មវិធីពិបាក

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
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: បញ្ហាកម្មវិធីពិបាក

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
58
ការសន្និដ្ឋាន
!
K.Yu. Polyakov, ឆ្នាំ 2015
ការប្រែប្រួល!
http://kpolyakov.spb.ru

ការសន្និដ្ឋាន

ប្រើប្រាស់ក្នុងផ្នែកព័ត៌មានវិទ្យា៖ 2016 និងលើសពីនេះ…
59
ចុងបញ្ចប់នៃខ្សែភាពយន្ត
ប៉ូលីយ៉ាកូវ Konstantin Yurievich
បណ្ឌិតវិទ្យាសាស្ត្របច្ចេកទេស គ្រូបង្រៀនវិទ្យាសាស្ត្រកុំព្យូទ័រ
អនុវិទ្យាល័យ GBOU លេខ 163 ផ្លូវ Petersburg

K.Yu. Polyakov, ឆ្នាំ 2015
http://kpolyakov.spb.ru

សេចក្តីសម្រេចការប្រឡងរដ្ឋបង្រួបបង្រួមព័ត៌មាន

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 ។

តារាងទី 1

នាមត្រកូល_I.O.

ជាន់

2146

Krivich L.P.

2155

Pavlenko A.K.

2431

Khitruk P.A.

2480

Krivich A.A.

2302

Pavlenko E.A.

2500

សុខល អិន.អេ.

3002

Pavlenko I.A.

2523

Pavlenko T. Kh.

2529

Khitruk A.P.

2570

Pavlenko P.I.

2586

Pavlenko T.I.

2933

Simonyan A.A.

2511

សុខល V.A.

3193

ប៊ីបា អេស.អេ.

តារាង 2

Parent_ID

Child_ID

2146

2302

2146

3002

2155

2302

2155

3002

2302

2431

2302

2511

2302

3193

3002

2586

3002

2570

2523

2586

2523

2570

2529

2431

2529

2511

2529

3193

សម្រាប់ប្រតិបត្តិការបាច់ជាមួយឯកសារ របាំងឈ្មោះឯកសារត្រូវបានប្រើ។ របាំងគឺជាលំដាប់នៃអក្សរ លេខ និងតួអក្សរផ្សេងទៀតដែលត្រូវបានអនុញ្ញាតក្នុងឈ្មោះឯកសារ ដែលអាចមានតួអក្សរខាងក្រោមផងដែរ៖

និមិត្តសញ្ញា "?" ( សញ្ញា​សួរ) មាន​ន័យ​ថា​ជា​តួអក្សរ​តាម​អំពើ​ចិត្ត​មួយ។

និមិត្តសញ្ញា "*" (សញ្ញាផ្កាយ) មានន័យថាលំដាប់នៃតួអក្សរណាមួយដែលមានប្រវែងបំពាន រួមទាំង "*" ក៏អាចបញ្ជាក់លំដាប់ទទេផងដែរ។

ថតឯកសារមាន ៦ ឯកសារ៖

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 ។

ចម្លើយ៖ ៨.

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

con

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)

ទាំងអស់។

con

alg G(ចំនួនគត់ n)

ដើម

សេចក្តីសន្និដ្ឋាន "*"

ប្រសិនបើ n > 1 បន្ទាប់មក

F(n - 3)

ទាំងអស់។

con

នីតិវិធី 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, 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] := ក

A:= 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

con

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

con

alg ចំនួនគត់ f(int n)

ដើម

val:= n * n * n

con

alg ចំនួនគត់ g(int n)

ដើម

តម្លៃ៖= 2 * n + 3

con

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*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 , y1 , y2 , ... យ9 ដែលបំពេញលក្ខខណ្ឌខាងក្រោមទាំងអស់?

(¬ (x1 y1 )) ≡ (x2 y2 )

(¬ (x2 y2 )) ≡ (x3 y3 )

(¬ (x8 y8 )) ≡ (x9 y9 )

ចម្លើយមិនចាំបាច់រាយបញ្ជីតម្លៃអថេរទាំងអស់ទេ។x1 , x2 , ...x9 , y1 , y2 , ... យ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 ១០

IF DIGIT

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

លទ្ធផលលេខ

con

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

...

con

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

បញ្ចូល ក

ម៉ា៖= អ៊ីមីន(ម៉ា, ក)

មីនី := ម៉ា

minichet := ប្រញាប់

kts

ចំនួនគត់ mp = amax* amax | តម្លៃអប្បបរមានៃផលិតផល

ទំ

nc សម្រាប់ខ្ញុំពី s + 1 ដល់ N

បញ្ចូល ក

ប្រសិនបើ mod(a,2)=0

បន្ទាប់មក n:= a * mini

បើមិនដូច្នោះទេប្រសិនបើវាប្រញាប់

បន្ទាប់មក n:= a * minieven

បើមិនដូច្នេះទេ n:= amax* amax;

ទាំងអស់។

ទាំងអស់។

mp:= imin(mp, n)

ម៉ា៖= អ៊ីមីន(ម៉ា, ក)

ប្រសិនបើ mod (a,2) = 0 បន្ទាប់មក flicker: = imin (flash, a) ទាំងអស់។

មីនី := ម៉ា

minichet := ប្រញាប់

kts

ប្រសិនបើ mp = amax * amax បន្ទាប់មក mp:=-1 ទាំងអស់។

ទិន្នផល mp

con

ការអនុវត្តផ្សេងទៀតក៏អាចធ្វើទៅបានដែរ។ ជាឧទាហរណ៍ ជំនួសឱ្យការបំពេញអារេជារង្វង់ អ្នកអាចផ្លាស់ប្តូរធាតុរបស់វារាល់ពេល។ នៅក្នុងឧទាហរណ៍ខាងក្រោម វាមិនមែនជាកម្រិតទាបដែលត្រូវបានរក្សាទុក និងផ្លាស់ប្តូរនោះទេ ប៉ុន្តែ តម្លៃដំបូង. នេះតម្រូវឱ្យមានអង្គចងចាំតិចជាងបន្តិច (អារេមួយគឺគ្រប់គ្រាន់ជំនួសឱ្យពីរ) ប៉ុន្តែដំណោះស្រាយជាមួយការផ្លាស់ប្តូរគឺមានប្រសិទ្ធភាពតិចជាងការបំពេញស៊ីក្លូ។ ទោះជាយ៉ាងណាក៏ដោយពេលវេលាដំណើរការនៅតែសមាមាត្រទៅនឹង 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)

ភាពជាក់លាក់
ត្រួតពិនិត្យសម្ភារៈវាស់
បង្រួបបង្រួម ការប្រឡងរដ្ឋឆ្នាំ ២០១៦
ក្នុងវិស័យព័ត៌មានវិទ្យា និង ICT

1. ការតែងតាំង KIM USE

ការប្រឡងរដ្ឋបង្រួបបង្រួម (ហៅកាត់ថា USE) គឺជាទម្រង់មួយ។ ការវាយតម្លៃគោលបំណងគុណភាព​នៃ​ការ​បណ្តុះបណ្តាល​អ្នក​ដែល​មាន​ជំនាញ កម្មវិធីអប់រំកណ្តាល ការអប់រំទូទៅដោយប្រើភារកិច្ចនៃទម្រង់ស្តង់ដារ (ត្រួតពិនិត្យសម្ភារៈវាស់) ។

ការប្រឡងត្រូវបានធ្វើឡើងស្របតាម ច្បាប់សហព័ន្ធចុះថ្ងៃទី 29 ខែធ្នូឆ្នាំ 2012 លេខ 273-FZ "ស្តីពីការអប់រំនៅសហព័ន្ធរុស្ស៊ី" ។

គ្រប់គ្រង សម្ភារៈវាស់អនុញ្ញាតឱ្យអ្នកកំណត់កម្រិតនៃការធ្វើជាម្ចាស់នៃសមាសភាគសហព័ន្ធដោយនិស្សិតបញ្ចប់ការសិក្សា ស្តង់ដាររដ្ឋមធ្យមសិក្សាទុតិយភូមិ (ពេញលេញ) ផ្នែកព័ត៌មានវិទ្យា និង ICT កម្រិតមូលដ្ឋាន និងឯកទេស។

លទ្ធផលនៃការប្រឡងរដ្ឋបង្រួបបង្រួមផ្នែកព័ត៌មានវិទ្យា និង ICT ត្រូវបានទទួលស្គាល់ អង្គការអប់រំកណ្តាល ការអប់រំវិជ្ជាជីវៈនិងអង្គការអប់រំនៃការអប់រំវិជ្ជាជីវៈខ្ពស់ជាលទ្ធផល ការប្រឡងចូលនៅក្នុងព័ត៌មានវិទ្យា និង ICT ។

2. ឯកសារកំណត់ខ្លឹមសាររបស់ KIM USE

3. វិធីសាស្រ្តក្នុងការជ្រើសរើសមាតិកា ការអភិវឌ្ឍន៍រចនាសម្ព័ន្ធនៃ KIM USE

ខ្លឹមសារនៃភារកិច្ចត្រូវបានបង្កើតឡើងលើប្រធានបទសំខាន់ៗនៃវគ្គសិក្សាព័ត៌មាន និងអាយស៊ីធី ដែលរួបរួមគ្នានៅក្នុងប្លុកប្រធានបទខាងក្រោម៖ "ព័ត៌មាន និងការសរសេរកូដរបស់វា" "ការធ្វើគំរូ និង ការពិសោធន៍កុំព្យូទ័រ", "ប្រព័ន្ធលេខ", "តក្កវិជ្ជា និងក្បួនដោះស្រាយ", "ធាតុនៃទ្រឹស្តីនៃក្បួនដោះស្រាយ", "ការសរសេរកម្មវិធី", "ស្ថាបត្យកម្មកុំព្យូទ័រ និង បណ្តាញកុំព្យូទ័រ"," ការព្យាបាល ព័ត៌មានជាលេខ", "បច្ចេកវិទ្យាសម្រាប់ការស្វែងរក និងរក្សាទុកព័ត៌មាន"។
ខ្លឹមសារនៃឯកសារប្រឡងនេះ គ្របដណ្តប់លើខ្លឹមសារសំខាន់ៗនៃវគ្គសិក្សាព័ត៌មានវិទ្យា និង ICT ដែលជាប្រធានបទសំខាន់បំផុតរបស់វា ដែលជាសម្ភារៈដ៏សំខាន់បំផុតនៅក្នុងពួកគេ ដែលត្រូវបានបកស្រាយដោយមិនច្បាស់លាស់នៅក្នុងកំណែភាគច្រើននៃវគ្គសិក្សាព័ត៌មានវិទ្យា និង ICT ដែលបង្រៀននៅសាលា។

ការងារនេះមានភារកិច្ចទាំងពីរនៃកម្រិតមូលដ្ឋាននៃភាពស្មុគស្មាញ ការធ្វើតេស្តចំណេះដឹង និងជំនាញដែលផ្តល់ដោយស្តង់ដារនៃកម្រិតមូលដ្ឋាន និង
និងភារកិច្ចនៃការកើនឡើង និងកម្រិតខ្ពស់នៃភាពស្មុគស្មាញ ការធ្វើតេស្តចំណេះដឹង និងជំនាញដែលផ្តល់ដោយស្តង់ដារ កម្រិតទម្រង់. ចំនួននៃភារកិច្ចនៅក្នុងវ៉ារ្យ៉ង់ KIM គួរតែផ្តល់នូវការវាយតម្លៃដ៏ទូលំទូលាយនៃចំណេះដឹង និងជំនាញរបស់និស្សិតដែលបានបញ្ចប់ការសិក្សាដែលទទួលបានក្នុងរយៈពេលទាំងមូលនៃការសិក្សានៅក្នុងមុខវិជ្ជានេះ ហើយម្យ៉ាងវិញទៀត បំពេញតាមលក្ខណៈវិនិច្ឆ័យសម្រាប់ភាពស្មុគស្មាញ។ ស្ថេរភាពនៃលទ្ធផល និងភាពជឿជាក់នៃការវាស់វែង។ ចំពោះគោលបំណងនេះ កិច្ចការពីរប្រភេទត្រូវបានប្រើប្រាស់ក្នុង KIM៖ ជាមួយនឹងចម្លើយខ្លី និងចម្លើយលម្អិត។ រចនាសម្ព័ននៃក្រដាសប្រឡងផ្តល់នូវតុល្យភាពល្អបំផុតនៃភារកិច្ច ប្រភេទផ្សេងគ្នានិងពូជ, បីកម្រិតនៃភាពស្មុគស្មាញ, ការធ្វើតេស្តចំណេះដឹងនិងជំនាញនៅលើបី កម្រិតផ្សេងៗ៖ ការចាក់សារថ្មី កម្មវិធីក្នុង ស្ថានភាពស្តង់ដារ, កម្មវិធីក្នុងស្ថានភាពថ្មី។ ខ្លឹមសារនៃឯកសារប្រឡងឆ្លុះបញ្ចាំងពីផ្នែកសំខាន់នៃខ្លឹមសារនៃប្រធានបទ។ ទាំងអស់នេះធានានូវសុពលភាពនៃលទ្ធផលតេស្ត និងភាពជឿជាក់នៃការវាស់វែង។

4. រចនាសម្ព័ន្ធរបស់ KIM USE

កំណែនីមួយៗនៃក្រដាសប្រឡងមានពីរផ្នែក និងរួមបញ្ចូលកិច្ចការចំនួន 27 ដែលខុសគ្នាក្នុងទម្រង់ និងកម្រិតនៃភាពស្មុគស្មាញ។

ផ្នែកទី 1 មាន 23 កិច្ចការចម្លើយខ្លី។

IN ការងារប្រឡងប្រភេទការងារខាងក្រោមដែលមានចម្លើយខ្លីត្រូវបានផ្តល់ជូន៖

  • ភារកិច្ចសម្រាប់ជ្រើសរើស និងកត់ត្រាចម្លើយត្រឹមត្រូវមួយ ឬច្រើនពីបញ្ជីចម្លើយដែលបានស្នើឡើង។
  • ភារកិច្ចសម្រាប់ការគណនាតម្លៃជាក់លាក់មួយ;
  • ភារកិច្ច​ក្នុង​ការ​បង្កើត​លំដាប់​ត្រឹមត្រូវ ដែល​បង្ហាញ​ជា​ខ្សែ​អក្សរ​តាម​ក្បួន​ដោះស្រាយ​ជាក់លាក់។

ចម្លើយចំពោះភារកិច្ចនៃផ្នែកទី 1 ត្រូវបានផ្តល់ឱ្យដោយធាតុដែលត្រូវគ្នានៅក្នុងទម្រង់ លេខធម្មជាតិឬលំដាប់នៃតួអក្សរ (អក្សរ និងលេខ) ដែលសរសេរដោយគ្មានដកឃ្លា ឬសញ្ញាបំបែកផ្សេងទៀត។

ផ្នែកទី 2 មានកិច្ចការចំនួន 4 ជាមួយនឹងចម្លើយលម្អិត។

ផ្នែកទី 1 មានភារកិច្ចចំនួន 23 នៃកម្រិតលំបាកជាមូលដ្ឋាន កម្រិតខ្ពស់ និងកម្រិតខ្ពស់។ ផ្នែកនេះមានភារកិច្ចជាមួយនឹងចម្លើយខ្លីៗ ដែលបង្កប់ន័យអំពីការបង្កើតឯករាជ្យ និងការកត់ត្រាចម្លើយក្នុងទម្រង់ជាលេខ ឬលំដាប់តួអក្សរ។ ភារកិច្ចពិនិត្យមើលសម្ភារៈនៃប្លុកប្រធានបទទាំងអស់។ នៅក្នុងផ្នែកទី 1 ធាតុទាំង 12 សំដៅទៅលើ កម្រិតមូលដ្ឋាន, 10 ភារកិច្ចដល់កម្រិតកើនឡើងនៃភាពស្មុគស្មាញ, 1 ភារកិច្ច - ទៅកម្រិតខ្ពស់នៃភាពស្មុគស្មាញ។

ផ្នែកទី 2 មាន ​​4 កិច្ចការដែលទីមួយ កម្រិតខ្ពស់ការលំបាក, កិច្ចការ 3 ដែលនៅសល់ កម្រិតខ្ពស់ការលំបាក។ ភារកិច្ចនៃផ្នែកនេះពាក់ព័ន្ធនឹងការសរសេរចម្លើយលម្អិតក្នុងទម្រង់បំពាន។