រកតម្លៃធំបំផុតក្នុងចំណោម ៣ តម្លៃ
📋 បញ្ហា / សំណួរ
មានអថេរ ៣ គឺ $a = 10,
$b = 30,
$c = 25
សូមសរសេរកូដ PHP ដើម្បីរកតម្លៃដែលធំជាងគេក្នុងចំណោមអថេរទាំង ៣ នេះ។
💻 គំរូកូដ (Sample Code)
<?php
$a = 10;
$b = 30;
$c = 25;
// វិធីទី ១: ប្រើ if-elseif-else
if ($a > $b && $a > $c) {
$max = $a;
} elseif ($b > $a && $b > $c) {
$max = $b;
} else {
$max = $c;
}
echo "តម្លៃធំបំផុតក្នុងចំណោម ($a, $b, $c) គឺ: $max";
// វិធីទី ២: ប្រើ max() function
echo "<br>";
echo "ប្រើ max(): " . max($a, $b, $c);
?>
✅ លទ្ធផលដែលរំពឹងទុក (Expected Output)
តម្លៃធំបំផុតក្នុងចំណោម (10, 30, 25) គឺ: 30
ប្រើ max(): 30
✏️ លំហាត់សម្រាប់អនុវត្ត (Practice)
🔹 សាកល្បងផ្លាស់ប្តូរតម្លៃ $a = 50, $b = 20, $c = 35 មើលលទ្ធផល
🔹 សាកល្បងដាក់ តម្លៃស្មើគ្នា ដូចជា $a = $b = $c = 10
🔹 សាកល្បងប្រើតម្លៃអវិជ្ជមាន (negative) ដូចជា $a = -5
រកតម្លៃធំបំផុតក្នុងចំណោម ៥ តម្លៃ
📋 បញ្ហា / សំណួរ
មានអថេរ ៥ គឺ
$a = 10,
$b = 30,
$c = 25,
$d = 50,
$e = 40
សូមរកតម្លៃដែលធំជាងគេក្នុងចំណោមអថេរទាំង ៥ នេះ។
💻 គំរូកូដ (Sample Code)
<?php
$a = 10;
$b = 30;
$c = 25;
$d = 50;
$e = 40;
// វិធីទី ១: ប្រើអថេរ $max ដើម្បីប្រៀបធៀបម្តងមួយៗ
$max = $a;
if ($b > $max) $max = $b;
if ($c > $max) $max = $c;
if ($d > $max) $max = $d;
if ($e > $max) $max = $e;
echo "តម្លៃធំបំផុតក្នុងចំណោម ($a, $b, $c, $d, $e) គឺ: $max";
// វិធីទី ២: ប្រើ max() function
echo "<br>";
echo "ប្រើ max(): " . max($a, $b, $c, $d, $e);
// វិធីទី ៣: ប្រើ array
echo "<br>";
$numbers = [$a, $b, $c, $d, $e];
echo "ប្រើ array + max(): " . max($numbers);
?>
✅ លទ្ធផលដែលរំពឹងទុក (Expected Output)
តម្លៃធំបំផុតក្នុងចំណោម (10, 30, 25, 50, 40) គឺ: 50
ប្រើ max(): 50
ប្រើ array + max(): 50
✏️ លំហាត់សម្រាប់អនុវត្ត (Practice)
🔹 សាកល្បងផ្លាស់ប្តូរតម្លៃ $a = 100 មើលថាតើវាផ្លាស់ប្តូរលទ្ធផលដែរឬទេ
🔹 សាកល្បងរកតម្លៃ តូចបំផុត ដោយប្រើ min()
🔹 សាកល្បងបន្ថែមអថេរទី ៦ ទី ៧ ... មើលថាកូដនៅដំណើរការដែរឬទេ
ពិនិត្យថាតើ $x ជាចំនួនគូរ (Even) ឬ សេស (Odd)
📋 បញ្ហា / សំណួរ
មានអថេរ $x = 5
សូមពិនិត្យមើលថាតើ $x ជាចំនួនគូរ (even - ចែកនឹង ២ សល់ ០) ឬ ជាចំនួនសេស (odd - ចែកនឹង ២ សល់ ១)។
ចំណាំ: យើងប្រើសញ្ញា % (modulus) ដើម្បីរកសំណល់នៃការចែក។
• $x % 2 == 0 → ចំនួនគូរ
• $x % 2 != 0 → ចំនួនសេស
💻 គំរូកូដ (Sample Code)
<?php
$x = 5;
if ($x % 2 == 0) {
echo "$x ជាចំនួនគូរ (Even)";
} else {
echo "$x ជាចំនួនសេស (Odd)";
}
// ឧទាហរណ៍បន្ថែម: ពិនិត្យលេខច្រើន
echo "<br><br>";
echo "=== ពិនិត្យលេខពី ១ ដល់ ១០ ===<br>";
for ($i = 1; $i <= 10; $i++) {
if ($i % 2 == 0) {
echo "$i → គូរ (Even)<br>";
} else {
echo "$i → សេស (Odd)<br>";
}
}
?>
✅ លទ្ធផលដែលរំពឹងទុក (Expected Output)
5 ជាចំនួនសេស (Odd)
=== ពិនិត្យលេខពី ១ ដល់ ១០ ===
1 → សេស (Odd)
2 → គូរ (Even)
3 → សេស (Odd)
4 → គូរ (Even)
5 → សេស (Odd)
6 → គូរ (Even)
7 → សេស (Odd)
8 → គូរ (Even)
9 → សេស (Odd)
10 → គូរ (Even)
✏️ លំហាត់សម្រាប់អនុវត្ត (Practice)
🔹 សាកល្បងផ្លាស់ប្តូរ $x = 12 ឬ $x = 99 មើលលទ្ធផល
🔹 សាកល្បងប្រើ $x = 0 តើវាជាគូរ ឬ សេស?
🔹 សាកល្បងប្រើតម្លៃអវិជ្ជមាន ដូចជា $x = -7
បង្ហាញរូបភាពអាកាសធាតុតាមតម្លៃ $weather
📋 បញ្ហា / សំណួរ
តាមតម្លៃអថេរ $weather សូមបង្ហាញរូបភាព និង ឈ្មោះអាកាសធាតុជាភាសាខ្មែរ៖
"rainy"
→
raining.jpg + អាកាសធាតុភ្លៀង
"sunny"
→
sunny.jpg + អាកាសធាតុថ្ងៃស្ងាត់
"cloudy"
→
cloud.jpg + អាកាសធាតុមានពពក
"snowy"
→
snow.jpg + អាកាសធាតុព្រិល
បើមិនមែនតម្លៃខាងលើ → បង្ហាញ "Sorry, I don't know about the weather today…!"
💻 គំរូកូដ (Sample Code)
<?php
$weather = "rainy";
switch ($weather) {
case "rainy":
$image = "raining.jpg";
$description = "អាកាសធាតុភ្លៀង";
$emoji = "🌧️";
break;
case "sunny":
$image = "sunny.jpg";
$description = "អាកាសធាតុថ្ងៃស្ងាត់";
$emoji = "☀️";
break;
case "cloudy":
$image = "cloud.jpg";
$description = "អាកាសធាតុមានពពក";
$emoji = "☁️";
break;
case "snowy":
$image = "snow.jpg";
$description = "អាកាសធាតុព្រិល";
$emoji = "❄️";
break;
default:
$image = "";
$description = "Sorry, I don't know about the weather today…!";
$emoji = "❓";
break;
}
echo "<h3>$emoji $description</h3>";
if ($image != "") {
echo "<img src='$image' alt='$description' width='300'>";
}
?>
✅ លទ្ធផលដែលរំពឹងទុក (Expected Output)
🌧️ អាកាសធាតុភ្លៀង
រូបភាព: raining.jpg
គ្រប់លទ្ធផលដែលអាចមាន៖
rainy
អាកាសធាតុភ្លៀង
sunny
អាកាសធាតុថ្ងៃស្ងាត់
cloudy
អាកាសធាតុមានពពក
snowy
អាកាសធាតុព្រិល
✏️ លំហាត់សម្រាប់អនុវត្ត (Practice)
🔹 សាកល្បងផ្លាស់ប្តូរ $weather = "sunny" ឬ $weather = "snowy"
🔹 សាកល្បងដាក់តម្លៃមិនត្រឹមត្រូវ ដូចជា $weather = "windy" មើលលទ្ធផល default
🔹 សាកសរសេរកូដឡើងវិញដោយប្រើ if-elseif-else ជំនួស switch
គណនាថ្លៃការហៅទូរស័ព្ទចេញ (រៀល)
📋 បញ្ហា / សំណួរ
គណនាតម្លៃសរុបនៃការហៅទូរស័ព្ទចេញ ដោយផ្អែកលើចំនួននាទី៖
| ចំនួននាទី | តម្លៃ (រៀល/នាទី) |
|---|---|
| ១ ដល់ ៥ នាទីដំបូង | 200 រៀល |
| នាទីទី ៦ ដល់ ១៥ | 300 រៀល |
| នាទីទី ១៦ ដល់ ៣០ | 400 រៀល |
| នាទីទី ៣១ ឡើងទៅ | 500 រៀល |
ឧទាហរណ៍: បើនិយាយ ៣៥ នាទី → (5×200) + (10×300) + (15×400) + (5×500) = 11,500 រៀល
💻 គំរូកូដ (Sample Code)
<?php
$minutes = 35;
$total_cost = 0;
if ($minutes <= 0) {
$total_cost = 0;
} elseif ($minutes <= 5) {
// ១ ដល់ ៥ នាទី → 200 រៀល/នាទី
$total_cost = $minutes * 200;
} elseif ($minutes <= 15) {
// ៥ នាទីដំបូង + នាទីបន្ថែមដល់ ១៥
$total_cost = (5 * 200) + (($minutes - 5) * 300);
} elseif ($minutes <= 30) {
// ៥ នាទីដំបូង + ១០ នាទី + នាទីបន្ថែមដល់ ៣០
$total_cost = (5 * 200) + (10 * 300) + (($minutes - 15) * 400);
} else {
// ៥ នាទីដំបូង + ១០ នាទី + ១៥ នាទី + នាទីបន្ថែម
$total_cost = (5 * 200) + (10 * 300) + (15 * 400) + (($minutes - 30) * 500);
}
echo "ចំនួននាទី: $minutes នាទី<br>";
echo "តម្លៃសរុប: " . number_format($total_cost) . " រៀល";
?>
✅ លទ្ធផលដែលរំពឹងទុក (Expected Output)
📞 ចំនួននាទី: 35 នាទី
💰 តម្លៃសរុប: 12,500 រៀល
ការគណនាលម្អិត (សម្រាប់ 35 នាទី)៖
• ៥ នាទីដំបូង: 5 × 200 = 1,000 រៀល
• នាទីទី ៦-១៥ (10 នាទី): 10 × 300 = 3,000 រៀល
• នាទីទី ១៦-៣០ (15 នាទី): 15 × 400 = 6,000 រៀល
• នាទីទី ៣១+ (5 នាទី): 5 × 500 = 2,500 រៀល
សរុប = 12,500 រៀល
ឧទាហរណ៍បន្ថែម៖
3 នាទី
600 រៀល
10 នាទី
2,500 រៀល
25 នាទី
8,000 រៀល
50 នាទី
20,000 រៀល
✏️ លំហាត់សម្រាប់អនុវត្ត (Practice)
🔹 សាកល្បងផ្លាស់ប្តូរ $minutes = 25 ឬ $minutes = 5 មើលលទ្ធផល
🔹 សាកល្បង $minutes = 100 ហើយធ្វើការគណនាដោយដៃ ដើម្បីផ្ទៀងផ្ទាត់ចម្លើយ
🔹 សាកល្បងបង្កើត function ដើម្បី reuse កូដ:
function calculateCost($minutes) { ... }