46 lines
1.2 KiB
PHP
46 lines
1.2 KiB
PHP
<?php
|
|
// tes_cf.php
|
|
|
|
// Skala CF: 1-4 ke 0.25-1.0
|
|
$skala_cf = [
|
|
1 => 0.25,
|
|
2 => 0.50,
|
|
3 => 0.75,
|
|
4 => 1.00,
|
|
];
|
|
|
|
// Input contoh (cf_pakar, cf_user dalam skala 1-4)
|
|
$input = [
|
|
['cf_pakar' => 4, 'cf_user' => 3],
|
|
['cf_pakar' => 4, 'cf_user' => 2],
|
|
['cf_pakar' => 4, 'cf_user' => 3],
|
|
];
|
|
|
|
// Konversi ke nilai desimal dan hitung CF per gejala
|
|
$cf_per_gejala = [];
|
|
foreach ($input as $item) {
|
|
$cf_pakar = $skala_cf[$item['cf_pakar']];
|
|
$cf_user = $skala_cf[$item['cf_user']];
|
|
$cf_per_gejala[] = $cf_pakar * $cf_user;
|
|
}
|
|
|
|
// Fungsi untuk gabung CF bertahap
|
|
function gabungCF(array $cf_array) {
|
|
$cf_total = $cf_array[0];
|
|
for ($i = 1; $i < count($cf_array); $i++) {
|
|
$cf_total = $cf_total + $cf_array[$i] * (1 - $cf_total);
|
|
}
|
|
return $cf_total;
|
|
}
|
|
|
|
$cf_akhir = gabungCF($cf_per_gejala);
|
|
|
|
echo "=== Perhitungan Certainty Factor ===\n";
|
|
foreach ($input as $i => $item) {
|
|
echo "Gejala " . ($i+1) . ": CF Pakar (" . $item['cf_pakar'] . " -> " . $skala_cf[$item['cf_pakar']] . "), ";
|
|
echo "CF User (" . $item['cf_user'] . " -> " . $skala_cf[$item['cf_user']] . "), ";
|
|
echo "CF Gejala = " . $cf_per_gejala[$i] . "\n";
|
|
}
|
|
|
|
echo "\nCF Total = " . round($cf_akhir * 100, 2) . "%\n";
|