You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/km/2-js-basics/3-making-decisions/assignment.md

13 KiB

ការធ្វើជម្រើស៖ កម្មវិធីកែសម្រួលពិន្ទុសិស្ស

គោលបំណងការសិក្សា

នៅក្នុងការបម្រើការងារនេះ អ្នកនឹងហាត់បណ្ដុះបណ្ដាលកំពុងតែប្រើកំណត់ត្រាជម្រើសពីមេរៀននេះដោយបង្កើតកម្មវិធីមួយដែលដំណើរការពិន្ទុសិស្សពីប្រព័ន្ធពិន្ទុផ្សេងៗគ្នា។ អ្នកនឹងប្រើ​ពាក្យបញ្ជា if...else អ្នកប្រើ​ប្រតិបត្តិការ​តម្លៃប្រៀបធៀប និងប្រតិបត្តិការ​តារវិច្ឆ័យដើម្បីកំណត់ថា សិស្សណាដែលជាប់ថ្នាក់។

ខិតផ្សង

អ្នកធ្វើការជាមនុស្សបុគ្គលិកសាលាដែលថ្មីៗនេះបានបញ្ចូលជាមួយស្ថាបនាផ្សេងទៀត។ ឥឡូវនេះ អ្នកត្រូវតែដំណើរការពិន្ទុសិស្សពីប្រព័ន្ធពិន្ទុ ២ ប្រព័ន្ធផ្សេងគ្នា និងកំណត់ថា សិស្សណាដែលកំពុងជាប់ភាគច្រើន។ នេះជាទីកន្លែងល្អសម្រាប់អនុវត្តប្រើប្រាស់តាកនិយមលក្ខខណ្ឌ!

ការយល់ដឹងអំពីប្រព័ន្ធពិន្ទុ

ប្រព័ន្ធពិន្ទុកាលដំបូង (លេខ)

  • ពិន្ទុបានផ្តល់ជាលេខពី ១ ដល់ ៥
  • ពិន្ទុភាគច្រើន: ៣ និងខ្ពស់ជាង (៣, ៤, ឬ ៥)
  • ពិន្ទុបរាជ័យ: តិចជាង ៣ (១ ឬ ២)

ប្រព័ន្ធពិន្ទុកាលទីពីរ (ពិន្ទុលេខអក្សរ)

  • ពិន្ទុប្រើអក្សរ៖ A, A-, B, B-, C, C-
  • ពិន្ទុភាគច្រើន: A, A-, B, B-, C, C- (ពិន្ទុអក្សរទាំងអស់នេះជាពិន្ទុភាគច្រើន)
  • កំណត់សម្គាល់៖ ប្រព័ន្ធនេះមិនមានពិន្ទុបរាជ័យដូចជា DF ទេ

បេសកកម្មរបស់អ្នក

ដោយផ្អែកលើតារាង allStudents ដែលបង្ហាញសិស្សទាំងអស់ និងពិន្ទុរបស់ពួកគេ សូមបង្កើតតារាងថ្មី studentsWhoPass ដែលមានសិស្សទាំងអស់ដែលជាប់ភាគច្រើនតាមប្រព័ន្ធពិន្ទុរបស់ពួកគេ។

let allStudents = [
  'A',    // ពិន្ទុលេខអក្សរ - ជាប់
  'B-',   // ពិន្ទុលេខអក្សរ - ជាប់
  1,      // ពិន្ទុលេខ - មិនជាប់
  4,      // ពិន្ទុលេខ - ជាប់
  5,      // ពិន្ទុលេខ - ជាប់
  2       // ពិន្ទុលេខ - មិនជាប់
];

let studentsWhoPass = [];

ដំណើរការជាដំណាក់កាល

  1. ចាប់ផ្តើមរង្វិល ដើម្បីឆ្លងកាត់ពិន្ទុនីមួយៗក្នុងតារាង allStudents
  2. គិតប្រភេទពិន្ទុ (វាជាលេខឬអក្សរប្រភេទខ្សែ?)
  3. អនុវត្តច្បាប់ប្រព័ន្ធពិន្ទុដែលសមរម្យ
    • សម្រាប់លេខ៖ ពិនិត្យមើលថាពិន្ទុ >= 3 ឬទេ
    • សម្រាប់ខ្សែអក្សរ៖ ពិនិត្យមើលថាវាជាការពិន្ទុអក្សរភាគច្រើនមួយឬទេ
  4. បញ្ចូលពិន្ទុភាគច្រើន ទៅក្នុងតារាង studentsWhoPass

បច្ចេកទេសផ្នែកកូដដែលមានប្រយោជន៍

ប្រើមូលដ្ឋាន JavaScript ខាងក្រោមពីមេរៀននេះ៖

  • ប្រតិបត្តិការ typeoftypeof grade === 'number' ដើម្បីពិនិត្យថាវាជាលេខមែនទេ
  • ប្រតិបត្តិការ​វាយតម្លៃប្រៀបធៀប>= ដើម្បីប្រៀបធៀបពិន្ទុលេខ
  • ប្រតិបត្តិការ​តុល្យភាព|| ដើម្បីពិនិត្យបញ្ហាពីពិន្ទុអក្សរច្រើន
  • ពាក្យបញ្ជា if...else៖ ដើម្បីដោះស្រាយប្រព័ន្ធពិន្ទុផ្សេងៗគ្នា
  • វិធីសាស្រ្តជួរឈរ.push() ដើម្បីបញ្ចូលពិន្ទុភាគច្រើនទៅក្នុងតារាងថ្មី

លទ្ធផលដែលរំពឹងទុក

ពេលអ្នកដំណើរការកម្មវិធីរបស់អ្នក តារាង studentsWhoPass គួរតែមាន៖ ['A', 'B-', 4, 5]

ហេតុអ្វីបានជាពិន្ទុទាំងនេះជាប់ភាគច្រើន៖

  • 'A' និង 'B-' ជាពិន្ទុអក្សរដែលត្រឹមត្រូវ (ពិន្ទុអក្សរទាំងអស់ក្នុងប្រព័ន្ធនេះជាប់ភាគច្រើន)
  • 4 និង 5 ជាពិន្ទុលេខ >= 3
  • 1 និង 2 បរាជ័យ ព្រោះវាជាពិន្ទុលេខ < 3

ការធ្វើតេស្តដំណោះស្រាយរបស់អ្នក

ធ្វើតេស្តកូដរបស់អ្នកជាមួយស្ថានភាពផ្សេងៗ៖

// សាកល្បងជាមួយការបញ្ចូលថ្នាក់នានា ដែលខុសគ្នា
let testGrades1 = ['A-', 3, 'C', 1, 'B'];
let testGrades2 = [5, 'A', 2, 'C-', 4];

// ដំណោះស្រាយរបស់អ្នកគួរតែធ្វើការ ដោយប្រើបាន ជាមួយការបញ្ចូលថ្នាក់ត្រឹមត្រូវណាមួយក៏បាន

បំណងបន្ថែម

បន្ទាប់ពីអ្នកបញ្ចប់បេសកកម្មមូលដ្ឋាននេះ សូមសាកល្បងបន្ថែម៖

  1. បន្ថែមការត្រួតពិនិត្យ៖ ពិនិត្យពិន្ទុមិនត្រឹមត្រូវ (ដូចជាលេខអវិជ្ជមាន ឬអក្សរមិនត្រឹមត្រូវ)
  2. រាប់ស្ថិតិ៖ គណនាចំនួនសិស្សដែលជាប់ និងបរាជ័យ
  3. បំលែងពិន្ទុ៖ បំលែងពិន្ទុទាំងអស់ទៅប្រព័ន្ធលេខតែមួយ (A=5, B=4, C=3, ដូច្នេះទៅ)

លក្ខខណ្ឌវាយតម្លៃ

ក្រមផ្លូវ ល្អឥតខ្ចោះ (4) មានជំនាញល្អ (3) កំពុងអភិវឌ្ឍ (2) ចាប់ផ្ដើម (1)
មុខងារ កម្មវិធីកំណត់ពិន្ទុភាគច្រើនបានត្រឹមត្រូវពីប្រព័ន្ធទាំងពីរ កម្មវិធីដំណើរការដោយមានបញ្ហាខ្នាតតូច ឬករណីមួយចំនួន កម្មវិធីដំណើរការមានកំហុសផ្នែកតារាង កម្មវិធីមានកំហុសធំរឺមិនអាចដំណើរការ
រចនាសម្ព័ន្ធកូដ កូដរបស់អ្នកនៅស្អាត និងត្រូវបានរៀបចំល្អជាមួយតាកលក្ខខណ្ឌ if...else ព្រឹតិ្តមួយ រចនាសម្ព័ន្ធល្អជាមួយពាក្យបញ្ជាលក្ខខណ្ឌសមរម្យ រចនាសម្ព័ន្ធអាចទទួលយកបាន ប៉ុន្តែមានបញ្ហារចនាសម្ព័ន្ធខ្លះ រចនាសម្ព័ន្ធមិនល្អ ដំណើរការលំបាក
ការប្រើប្រាស់គំនិត ប្រើប្រាស់ប្រតិបត្តិការ​ប្រតិបត្តិការប្រៀបធៀប តុល្យភាព និងតាកលក្ខខណ្ឌបានយ៉ាងមានប្រសិទ្ធភាព ប្រើប្រាស់គំនិតមេរៀនបានល្អ ប៉ុន្តែមានចន្លោះខ្លះ ប្រើប្រាស់គំនិតមេរៀនបានខ្លះ ប៉ុន្តែខ្វះធាតុសំខាន់ ប្រើប្រាស់គំនិតមេរៀនបានតិច
ដោះស្រាយបញ្ហា បង្ហាញការយល់ដឹងច្បាស់លាស់នៃបញ្ហា និងវិធីដោះស្រាយល្អ វិធីដោះស្រាយបញ្ហាល្អជាមួយតាគន្លឹះត្រឹមត្រូវ វិធីដោះស្រាយមធ្យមជាមួយភាពច្របូកច្របល់ខ្លះ វិធីដោះស្រាយមិនច្បាស់ អត់បង្ហាញការយល់ដឹង

إرشادات التسليم

  1. ធ្វើតេស្តកូដ របស់អ្នកយ៉ាងម៉ត់ចត់ជាមួយឧទាហរណ៍ដែលផ្តល់
  2. បន្ថែមកំណត់ចំណាំ ពន្យល់ពីតាគន្លឹះរបស់អ្នក ជាពិសេសចំពោះតាកលក្ខខណ្ឌ
  3. ផ្ទៀងផ្ទាត់លទ្ធផល ត្រូវតែផ្គូផ្គងជាមួយលទ្ធផលរំពឹងទុក៖ ['A', 'B-', 4, 5]
  4. គិតពីករណីចុងក្រោយ ដូចជាជួរឈរដែលទទេ ឬប្រភេទទិន្នន័យមិនរំពឹងទុក

💡 ការណែនាំវិជ្ជាជីវៈ: ចាប់ផ្តើមពីភាពងាយស្រួល! ធ្វើឲ្យមុខងារមូលដ្ឋានដំណើរការជាដំបូង បន្ទាប់មកបន្ថែមមុខងារលំអិតជាច្រើនទៀត។ ចងចាំថា គោលបំណងគឺដើម្បីហាត់កម្មវិធីតាកជម្រើសដោយប្រើឧបករណ៍ដែលអ្នកបានរៀននៅក្នុងមេរៀននេះ។


ការ​បដិសេធ
ឯកសារនេះត្រូវបានបកប្រែដោយប្រើសេវាកម្មបកប្រែ AI Co-op Translator។ ខណៈពេលដែលយើងខំប្រឹងប្រែងសម្រាប់ភាពត្រឹមត្រូវ សូមជ្រាបថាការបកប្រែដោយស្វ័យប្រវត្តិក្នុងខ្លឹមសារអាចមានកំហុសឬភាពមិនត្រឹមត្រូវខ្លះ។ ឯកសារដើមក្នុងភាសាម្ខាងគួរត្រូវបានគិតថាជាផ្នែកផ្លូវការធំបំផុត។ សម្រាប់ព័ត៌មានសំខាន់ៗ សូមផ្តល់អនុសាសន៍ឲ្យមានការបកប្រែដោយអ្នកជំនាញមនុស្ស។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំ ឬការបកប្រែខុសដែលកើតមានរួចមកពីការប្រើប្រាស់ការបកប្រែនេះទេ។